摘要: solution rescursive class Solution: def mirrorTree(self, root: TreeNode) -> TreeNode: def helper(node): if not node: return left = helper(node.left) r 阅读全文
posted @ 2020-08-16 22:23 珊珊来迟0 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 思路 dfs 注意注释掉的代表完全子树 class Solution: def isSubStructure(self, A: TreeNode, B: TreeNode) -> bool: def helper(a, b): # if not a and not b: # return True 阅读全文
posted @ 2020-08-16 22:20 珊珊来迟0 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 思路 递归 class Solution: def reverseList(self, head: ListNode) -> ListNode: def helper(head): if head is None or head.next is None: return head ret = hel 阅读全文
posted @ 2020-08-16 14:52 珊珊来迟0 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 描述 None tags: list, double pointer 思路 两次遍历 class Solution { public: ListNode* getKthFromEnd(ListNode* head, int k) { ListNode* node = head; int length 阅读全文
posted @ 2020-08-16 14:35 珊珊来迟0 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 描述 None tags: partition 思路 快排 class Solution(object): def exchange(self, nums): """ :type nums: List[int] :rtype: List[int] """ l, r = 0, len(nums) - 阅读全文
posted @ 2020-08-16 14:16 珊珊来迟0 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 描述 给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。 返回删除后的链表的头节点。 tags: recursive, double pointer 思路 递归 class Solution { public: ListNode* deleteNode(ListNode* head 阅读全文
posted @ 2020-08-16 12:26 珊珊来迟0 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。如果一条路径经过了矩阵的某一格,那么该路径不能再次进入该格子。例如,在下面的3×4的矩阵中包含一条字符串“bfce”的路径(路径中的字母用加粗 阅读全文
posted @ 2020-08-15 18:47 珊珊来迟0 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。 tags: binary search 思路 二分法:题解 class 阅读全文
posted @ 2020-08-15 18:36 珊珊来迟0 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个n级的台阶总共有多少种跳法。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 tags: recursive 思路 迭代 class Solution: def numWa 阅读全文
posted @ 2020-08-15 18:32 珊珊来迟0 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 描述 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。 阅读全文
posted @ 2020-08-15 18:29 珊珊来迟0 阅读(46) 评论(0) 推荐(0) 编辑