Leetcode
收集Leetcode经典题目
Tas飞鱼
这个作者很懒,什么都没留下…
展开
-
Leetcode:617.合并二叉树
Leetcode:617合并二叉树题目描述给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1:输入:Tree 1 Tree 21 ...原创 2020-03-24 18:04:56 · 93 阅读 · 0 评论 -
Leetcode:226.翻转二叉树
Leetcode:226.翻转二叉树题目描述翻转一棵二叉树。示例:输入: 4/ 2 7/ \ / 1 3 6 9输出: 4/ 7 2/ \ / 9 6 3 1备注:这个问题是受到 Max Howell 的 原问题 启发的 :谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板...原创 2020-03-24 17:18:58 · 123 阅读 · 0 评论 -
Leetcode:543.二叉树的直径
Leetcode:543.二叉树的直径题目描述给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。示例 :给定二叉树 1 / \ 2 3 / \ 4 5 返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。注意:两结点之间...原创 2020-03-23 17:03:29 · 162 阅读 · 0 评论 -
Leetcode:110.平衡二叉树
Leetcode:110.平衡二叉树题目描述给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例 1:给定二叉树 [3,9,20,null,null,15,7]3/ 9 20/ 15 7返回 true 。示例 2:给定二叉树 [1,2,2,3,3,null,null,4...原创 2020-03-23 16:11:41 · 111 阅读 · 0 评论 -
Leetcode:445.两数相加Ⅱ
Leetcode:445.两数相加Ⅱ题目描述给定两个非空链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。进阶:如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。示例:输入: (7 -> 2 -> 4 -> 3) + (5 -...原创 2020-03-21 20:15:04 · 124 阅读 · 0 评论 -
Leetcode:24.两两交换链表中的节点
Leetcode:24.两两交换链表中的节点题目描述给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例:给定 1->2->3->4, 你应该返回 2->1->4->3.来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/swa...原创 2020-03-21 17:46:52 · 127 阅读 · 0 评论 -
Leetcode:104.二叉树的最大深度&&111.二叉树的最小深度
Leetcode:二叉树的最大深度题目描述给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],3/ 9 20/ 15 7返回它的最大深度 3 。来源:力扣(LeetCode)链接:https://leetcode-cn.c...原创 2020-03-11 14:23:02 · 202 阅读 · 0 评论 -
Leetcode:19.删除链表的倒数第N个节点
Leetcode:19.删除链表的倒数第N个节点题目描述给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?来源:力扣(LeetCo...原创 2020-03-11 13:34:16 · 94 阅读 · 0 评论 -
Leetcode:83.删除排序链表中的重复元素
Leetcode:83.删除排序链表中的重复元素题目描述给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3来源:力扣(LeetCode)链接:https://leetcode-cn.com/probl...原创 2020-03-06 23:16:07 · 122 阅读 · 0 评论 -
Leetcode:21.合并两个有序链表
Leetcode:21.合并两个有序链表这道题和浙大mooc中的一个练习题一样,不同的是,那个题返回的链表头有一个空的头结点,但这个没有头结点。题目描述将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4来源:...原创 2020-03-06 16:07:20 · 95 阅读 · 0 评论 -
Leetcode:206.反转链表
Leetcode:206.反转链表反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL思路:用三个指针pre,p,head,每次head先往后移动标记后面的链表,然后p指向pre,直到head为空。/** * Definition for singly-link...原创 2020-03-06 14:09:13 · 136 阅读 · 0 评论 -
Leetcode:160.相交链表
Leetcode:160.相交链表求相交的链表节点示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节点的值为 8 (注意,如果两个列表相交则不能为 0)。从各自的表...原创 2020-03-06 13:44:05 · 94 阅读 · 0 评论