随笔分类 -  python

摘要:随便打开了一道题, 发现是hard, 然后发现自己居然会写... ` class Solution: def makeLargestSpecialSingle(self, s:str) -> str: # 最左的1和最右的0 相对应的字符串 return "1" + self.makeLargest 阅读全文
posted @ 2023-02-05 08:47 茫茫碧落 阅读(15) 评论(0) 推荐(0) 编辑
摘要:三维空间的接雨水 有一点像dijkstar最短路径搜索。 所谓dijkstar, 是有一个closeset的,closeset表明的是已经确定距离的位置。 初始位置是closeset,每次都取与closeset相邻的最近的点放入到closet中。 相邻的点用一个最小堆来维护。 这道题也是一样, 初始 阅读全文
posted @ 2022-03-28 00:28 茫茫碧落 阅读(128) 评论(0) 推荐(0) 编辑
摘要:求一个二叉树的右视图. 即从右方看到的元素从上到下的列表. 第一反应是层次遍历, 如果层次遍历的话, 空间复杂度应该是O(n), 第二反应是 如果求右视图相当于把树左右颠倒, 然后求左视图, 那么元素的出现顺序应当是前序遍历的顺序, 但是同一层的元素只取最左的一个. 那么右视图就是一个类似的右向前序 阅读全文
posted @ 2021-12-20 19:54 茫茫碧落 阅读(26) 评论(0) 推荐(0) 编辑
摘要:前置题目是300, 对于每个数字, 求得包括其的左递增子序列长度, 和包括其的递减右子列长度, 相加减-即可. class Solution: def calculate_increase_num(self, nums): if not nums: return nums longest_val_l 阅读全文
posted @ 2021-11-22 00:41 茫茫碧落 阅读(24) 评论(0) 推荐(0) 编辑
摘要:子数组指数组中去掉一些元素(也可以不去)并且不改变剩下元素的顺序后产生的数组. 递增子数组指满足元素为递增的子数组. 给到一个数组, 求得最长的递增子数组的长度. 要求复杂度为O(nlogn) 我想了好久没有想出来一个很好的办法, 后来抄别人答案有点搞懂了, 然后又自己写了一遍. 大概是懂了吧, 但 阅读全文
posted @ 2021-11-22 00:32 茫茫碧落 阅读(40) 评论(0) 推荐(0) 编辑
摘要:山峰数组指, 先严格递增, 再严格递减的数组. 现给到一个数组, 找到一个连续子数组, 使得该子数组是山峰数组, 输出最长的该子数组的长度. 要求只遍历一遍数组, 并且空间复杂度为O(1) 想了10分钟知道怎么写, 写了40分钟才debug没问题, 提交了5次前后, 我觉得我是一个sb. class 阅读全文
posted @ 2021-11-22 00:23 茫茫碧落 阅读(50) 评论(0) 推荐(0) 编辑
摘要:和 162 一毛一样, 意义何在? class Solution: def peakIndexInMountainArray(self, arr: List[int]) -> int: start = 0 end = len(arr) - 1 while start < end: mid = (st 阅读全文
posted @ 2021-11-21 19:43 茫茫碧落 阅读(26) 评论(0) 推荐(0) 编辑
摘要:一个整数队列. 每两个相邻的数都不相同. 找到一个数, 使得其大于相邻的数, 输出该数的index. 如果有多个满足条件的数, 只需要输出任意一个即可. 要求算法复杂度为O(logn) 因为要求算法复杂度是O(n)一定是二分法. 然后容易知道的一点是对于任意满足条件的整数队列, 都可以找到这样的数. 阅读全文
posted @ 2021-11-21 19:33 茫茫碧落 阅读(31) 评论(0) 推荐(0) 编辑
摘要:153的进阶版, 原列表不是严格递增的, 相似, 增加更多的边界判断就可以, 但是极端情况下, 也就是列表中重复的数字过多可能会到O(n)的复杂度. class Solution: def findMinInRange(self, nums: List[int], start, end) -> in 阅读全文
posted @ 2021-11-21 19:01 茫茫碧落 阅读(43) 评论(0) 推荐(0) 编辑
摘要:旋转过的严格递增列表, 求其中的最小值. 不难, 注意判断边界条件就可以, 算法复杂度应该是O(logn) class Solution: def findMinInRange(self, nums: List[int], start, end) -> int: if start == end: r 阅读全文
posted @ 2021-11-21 18:59 茫茫碧落 阅读(33) 评论(0) 推荐(0) 编辑
摘要:在整数的列表中寻找一个乘积最大的子列, 输出该乘积. 子列指连续的一个区间. 整数有0, 负数和正数. 在非零的情况下, 乘积的绝对值是会随着数组长度的增长而增加的. 首先找到所有的0, 将数组分割为若干个只包含0长度为1的子列和若干个不包含0的子列. 现在求解一个不含0的数组的连续乘积最大值, 如 阅读全文
posted @ 2021-11-17 20:16 茫茫碧落 阅读(41) 评论(0) 推荐(0) 编辑
摘要:`260. Single Number III Medium 2732 152 Add to List Share Given an integer array nums, in which exactly two elements appear only once and all the othe 阅读全文
posted @ 2021-10-09 17:25 茫茫碧落 阅读(38) 评论(0) 推荐(0) 编辑
摘要:一堆数字, 有一个数字只出现一次, 其他数字都出现3次, 找到这个数字, 要求在线性时间和常数空间复杂度解决这个问题. 前置问题是136, 这道题我的想法是, 首先还是要通过位运算来解决这个问题, 我要构建一个计数器一样的东西.当这个位上的数字出现一次, 以三为模来进行计算. 这样就可以解决. 为此 阅读全文
posted @ 2021-10-09 16:59 茫茫碧落 阅读(40) 评论(0) 推荐(0) 编辑
摘要:class Solution: """ 只要总和是大于 0 的那么就一定可以找到这样的点, 可以用数学归纳法进行证明 """ def canCompleteCircuit(self, gas: List[int], cost: List[int]) -> int: if not gas: retur 阅读全文
posted @ 2021-08-08 23:16 茫茫碧落 阅读(33) 评论(0) 推荐(0) 编辑
摘要:class Solution: def cloneGraph_2(self, node, relation_dict): if node in relation_dict: return tmp = Node(val=node.val) relation_dict[node] = tmp for i 阅读全文
posted @ 2021-08-08 20:14 茫茫碧落 阅读(20) 评论(0) 推荐(0) 编辑
摘要:##动态规划 easy, 但是速度好像比较慢 ` class Solution: def is_palindrome(self, s): return s[::-1] == s def partition_2(self, s, index, result_dict): tmp = [] for i 阅读全文
posted @ 2021-08-08 00:25 茫茫碧落 阅读(20) 评论(0) 推荐(0) 编辑
摘要:https://leetcode.com/problems/surrounded-regions/ 题目要求把四周被X包围的O块去掉. 所以没有被去掉的O块一定是在边上. 我的想法是标记所有于周边相连的O块即可. 具体方法可以依次使用广度优先. ###1, 对周围一圈的O依次使用广度优先(深度优先亦 阅读全文
posted @ 2021-08-07 23:22 茫茫碧落 阅读(39) 评论(0) 推荐(0) 编辑
摘要:总所周知,尾递归是一种特殊的递归;因为这一次递归返回的下一次的结果,所以避免了递归栈,对于空间上来讲是一种节省。 所有的递归都有非递归来书写,尾递归也可以达到和非递归相同的结果。 但是python是不支持尾递归的,因为要返回错误栈和错误类型。 python 默认的递归栈大小可以通过以下获得 sys. 阅读全文
posted @ 2020-06-07 23:48 茫茫碧落 阅读(123) 评论(0) 推荐(0) 编辑
摘要:https://github.com/adambullmer/sublime_docblockr_python 安装DocBlockr插件 { "DocblockrPython": { "formatter": "sphinx" }, "folders": [ // ... ] } 这个是user的 阅读全文
posted @ 2019-12-17 17:45 茫茫碧落 阅读(460) 评论(0) 推荐(0) 编辑
摘要:事情是这样的, 但是 import urllib.parse就没有问题了 同样的还有logging.config,实在是不知道为什么,难道实际上并不是在同一个包中的么 有空再看吧 阅读全文
posted @ 2019-10-21 11:05 茫茫碧落 阅读(5755) 评论(0) 推荐(0) 编辑