Leetcode 链表专题
kev_gogo
考研408 人工智能 爬虫 数据可视化 数理基础 周更博主 欢迎讨论交流~ 代码问题可直接评论或私信
展开
-
Leetcode[链表] 82. 删除排序链表中的重复元素 II
Leetcode[链表] 61. 旋转链表审题代码实现反思审题给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4->5->1->2->3->原创 2020-11-24 15:51:05 · 879 阅读 · 0 评论 -
Leetcode[链表] 61. 旋转链表
Leetcode[链表] 61. 旋转链表审题代码实现反思审题给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4->5->1->2->3->原创 2020-11-23 19:24:17 · 52 阅读 · 0 评论 -
Leetcode[链表] 24. 两两交换链表中的节点
Leetcode[链表] 24. 两两交换链表中的节点审题代码实现反思审题给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]看到这道题,说实话,看一眼都知道题解该咋写了。但是做了50min并忍不住看题解后发现,大佬确实可以看一眼就知道咋写,勤勤原创 2020-11-22 15:28:06 · 54 阅读 · 0 评论 -
Leetcode[链表] 19. 删除链表的倒数第N个节点
Leetcode[链表] 19. 删除链表的倒数第N个节点审题代码实现反思审题给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?这道题的话,看起来感觉很简单,然而做起来…确实很简单。不过想要一次就AC的话还是有一些难度的。看原创 2020-11-21 16:15:19 · 56 阅读 · 0 评论 -
Leetcode[链表] 2. 两数相加
Leetcode[链表] 2. 两数相加审题代码实现反思审题给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807原创 2020-11-20 16:06:34 · 60 阅读 · 0 评论 -
Leetcode[链表] 83. 删除排序链表中的重复元素
Leetcode[链表] 83. 删除排序链表中的重复元素审题代码实现反思审题给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3看到这道题,如果之前刷过数组题的小伙伴,或者看过我的数组专题,可能会感觉到很眼熟,这不就是数组的删除重复元素的链表版吗,因此,我们直接上代码,双指针走起。代码实现方案一(上文原创 2020-11-20 14:39:45 · 663 阅读 · 2 评论 -
Leetcode[链表] 21. 合并两个有序链表
Leetcode[链表] 21. 合并两个有序链表审题代码实现反思审题将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4作为一个链表菜鸡,这道题卡了我一个多小时…原因主要是两个,希望大家避免。1:链表传递指针后,要用一个新的指针去移动来遍历,否则外面的指针是也是会变得。2:在C++中,用malloc不f原创 2020-11-19 20:02:08 · 83 阅读 · 0 评论