随笔分类 - A---苏大LeetCode周练
实验室每周刷题任务
摘要:# # @lc app=leetcode.cn id=70 lang=python3 # # [70] 爬楼梯 # # @lc code=start class Solution: def climbStairs(self, n: int) -> int: if n == 1: return 1 i
阅读全文
摘要:注意,Python初始化一个二维数组 不能用 [[0] * col] * row,这样每行创建的是 [0]*col的引用!!!!!! 使用 [[0] * col for _ in range(row)]
阅读全文
摘要:64. 最小路径和 注意,Python初始化一个二维数组,不能用 [[0] * col] * row,这样每行创建的是 [0]*col的引用!!!!!! 使用 [[0] * col for _ in range(row)] # # @lc app=leetcode.cn id=64 lang=pyt
阅读全文
摘要:剑指 Offer 36. 二叉搜索树与双向链表 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。 为了让您更好地理解问题,以下面的二叉搜索树为例: 我们希望将这个二叉搜索树转化为双向循环链表。链表中的每个节点都有一个前驱和后继指针
阅读全文
摘要:贪心算法 class Solution: def maxSubArray(self, nums: List[int]) -> int: # 贪心算法 nlen = len(nums) if not nums: return float("-inf") cur_sum = max_sum = nums
阅读全文
摘要:题解 python版本 # # @lc app=leetcode.cn id=213 lang=python3 # # [213] 打家劫舍 II # # @lc code=start class Solution: def rob(self, nums: List[int]) -> int: de
阅读全文
摘要:动态规划 /* * @lc app=leetcode.cn id=5 lang=cpp * * [5] 最长回文子串 */ #include <iostream> #include <string> #include <cstdlib> #include <cstdio> using namespa
阅读全文
摘要:法一:O(n2) /* * @lc app=leetcode.cn id=209 lang=cpp * * [209] 长度最小的子数组 */ // @lc code=start class Solution { public: int minSubArrayLen(int s, vect
阅读全文
摘要:142. 环形链表 II 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 说明:不允许修改给定的链表。 示例 1: 输入:
阅读全文
摘要:47. 全排列 II 给定一个可包含重复数字的序列,返回所有不重复的全排列。 示例: 输入: [1,1,2] 输出: [ [1,1,2], [1,2,1], [2,1,1] ] /* * @lc app=leetcode.cn id=47 lang=cpp * * [47] 全排列 II */ //
阅读全文
摘要:226. 翻转二叉树 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 C++版本: /* * @lc app=leetcode.cn id=226 lang=cpp * * [226] 翻转二叉树 */
阅读全文
摘要:94. 二叉树的中序遍历 给定一个二叉树,返回它的中序 遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,3,2] 递归解法: /* * @lc app=leetcode.cn id=94 lang=cpp * * [94] 二叉树的中序遍历 */ // @lc c
阅读全文