
LeetCode 的愉快之旅
LeetCode 刷题笔记与总结记录
偷偷玩两下
能力一般,水平有限。
展开
-
LeetCode - 328.奇偶链表
题目描述给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1->3->5...原创 2020-01-13 18:52:19 · 226 阅读 · 0 评论 -
LeetCode - 203.移除链表元素
题目描述删除链表中等于给定值val的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5完整代码参考:GitHub 代码题解此题难度定级为简单,主要考察链表的基本操作。解法1:双指针思路:构造双指针指向同一链表,一个用来读链表(tem...原创 2019-12-27 18:02:59 · 178 阅读 · 0 评论 -
LeetCode - 21.合并两个有序链表
题目描述将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4完整代码参考:GitHub 代码题解此题难度定级为简单,主要考察链表的基本操作。解法1:递归思路:此题是链表中比较典...原创 2019-12-27 18:02:51 · 203 阅读 · 0 评论 -
LeetCode - 234.回文链表
题目描述请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用O(n) 时间复杂度和 O(1) 空间复杂度解决此题?完整代码参考:GitHub 代码题解此题难度定级为简单,主要考察链表的基本操作。解法:思路:回文问题在字符串中可以...原创 2019-12-27 18:02:39 · 199 阅读 · 0 评论 -
LeetCode - 160.相交链表
题目描述编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。示例 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输入解释:相交节...原创 2019-12-27 18:02:34 · 160 阅读 · 0 评论 -
LeetCode - 83.删除排序链表中的重复元素
题目描述给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例1:输入: 1->1->2输出: 1->2示例2:输入: 1->1->2->3->3输出: 1->2->3完整代码参考:GitHub 代码题解此题难度定级为简单,主要考察链表的基本操作。解法1: 去重思路:通过额外的...原创 2019-12-25 21:19:51 · 204 阅读 · 0 评论 -
LeetCode - 141.环形链表
题目描述给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。示例 1:输入:head = [3,2,0,-4], pos = 1输出:true解释:链表中有一个环,其尾部连接到第二个节点。示例2:输入:head = [1,2], p...原创 2019-12-25 20:53:59 · 178 阅读 · 0 评论 -
LeetCode - 876.链表的中间结点
题目描述给定一个带有头结点head的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNode 类型的对象 ans,这样:ans.val = 3, ans...原创 2019-12-23 18:02:09 · 172 阅读 · 0 评论 -
LeetCode - 1290.二进制链表转整数
题目描述给你一个单链表的引用结点head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。请你返回该链表所表示数字的 十进制值 。示例 1:输入:head = [1,0,1]输出:5解释:二进制数 (101) 转化为十进制数 (5)示例 2:输入:head = [0]输出:0示例 3:输入:head = [1]输出:1...原创 2019-12-23 17:50:14 · 415 阅读 · 0 评论 -
LeetCode - 206.反转链表
题目描述反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?完整代码参考:GitHub 代码题解此题难度定级为简单,主要考察链表的基本操作。解法1:递归递归的方式代码实现较...原创 2019-12-12 21:54:19 · 338 阅读 · 0 评论