上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 15 下一页
摘要: 题目链接 解题思路:中序遍历:左中右,用一个栈,同时用空来标识「中」,所以入栈顺序就是右->中->None->左 代码 class Solution: def inorderTraversal(self, root: Optional[TreeNode]) -> List[int]: # 使用栈 # 阅读全文
posted @ 2024-12-25 15:09 ouyangxx 阅读(13) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:动态规划:从左往右的尝试模型,来到index位置,只解码index一个数,或者解码index和index+1两个数 代码 class Solution: # 只需要解码s[index...]即可 def process(self, s: str, index: int, dp: 阅读全文
posted @ 2024-12-24 16:21 ouyangxx 阅读(52) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:从后往前填数字即可 代码 class Solution: def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None: # 从后往前开始填充 L = m - 1 # nums1[0, L] 阅读全文
posted @ 2024-12-24 15:55 ouyangxx 阅读(19) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:单调栈,以i位置为高度(宽),最长能有多长,其实就是找离i最近的,小于i的位置,其实就是单调栈 代码 class Solution: def largestRectangleArea(self, heights: List[int]) -> int: # 使用单调栈 栈底到栈顶 阅读全文
posted @ 2024-12-24 15:35 ouyangxx 阅读(8) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:简单的回溯,就是两种情况,要这个数,不要这个数 代码 class Solution: # 现在来到index位置,决定nums[index]要,还是不要,ans是最终的结果,path是一条分支的结果 def process(self, nums: List[int], index 阅读全文
posted @ 2024-12-24 11:15 ouyangxx 阅读(6) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:以i开头,最小覆盖子串是什么,然后求出所有的结果,最小的便是。先求出i的结果,是[i, j],然后求i+1时,直接从j后遍历即可。 窗口的思想,窗口在[i, j],然后来到i+1,先把i弹出去,弹出去的前提是,s[i]是我们需要的字符。然后再看[i + 1, j]是否满足,如果不 阅读全文
posted @ 2024-12-24 11:01 ouyangxx 阅读(19) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:快排中的一部分,等于1的放中间,等于0的放左边,等于2的放右边 代码 class Solution: def sortColors(self, nums: List[int]) -> None: left_border = -1 right_border = len(nums) 阅读全文
posted @ 2024-12-24 09:42 ouyangxx 阅读(15) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:如何原地,是困难点。我们可以使用原有的矩阵,来存放某些信息。原来的矩阵第一行,matrix[0][i]如果等于0,代表第i列有0,原来的矩阵第一列,matrix[i][0]如果等于0,代表第i列有0。还有一个注意点,就是matrix[0][0]代表什么?这是一个歧义的点,所以不存 阅读全文
posted @ 2024-12-22 21:07 ouyangxx 阅读(37) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:递推公式就是F(n) = F(n - 2) + F(n - 2) 代码 class Solution: def climbStairs(self, n: int) -> int: # 递推公式就是F(n) = F(n - 1) + F(n - 2) if n == 1: retu 阅读全文
posted @ 2024-12-22 19:58 ouyangxx 阅读(12) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:直接暴力找,但是使用二分法暴力找 代码 class Solution: def mySqrt(self, x: int) -> int: # 二分法暴力找 L = 0 R = x ans = -1 while L <= R : mid = (R + L) // 2 if mid 阅读全文
posted @ 2024-12-22 19:55 ouyangxx 阅读(5) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 15 下一页