
链表
文章平均质量分 63
哟米 2000
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【LeetCode】C++ :中等题 - 链表 147. 对链表进行插入排序
147. 对链表进行插入排序难度中等344对链表进行插入排序。插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。插入排序算法:插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。 每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。 重复直到所有输入数据插入完为止。示例 1:...原创 2021-02-03 20:04:10 · 284 阅读 · 0 评论 -
【LeetCode】C++ :中等题 - 链表 143. 重排链表
143. 重排链表难度中等511给定一个单链表L:L0→L1→…→Ln-1→Ln ,将其重新排列后变为:L0→Ln→L1→Ln-1→L2→Ln-2→…你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例1:给定链表 1->2->3->4, 重新排列为 1->4->2->3.示例 2:给定链表 1->2->3->4->5, 重新排列为 1->5->2->4->3.1...原创 2021-02-02 21:34:24 · 354 阅读 · 0 评论 -
【LeetCode】C++ :中等题 - 链表 142. 环形链表 II
142. 环形链表 II难度中等837给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回null。为了表示给定链表中的环,我们使用整数pos来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果pos是-1,则在该链表中没有环。注意,pos仅仅是用于标识环的情况,并不会作为参数传递到函数中。说明:不允许修改给定的链表。进阶:你是否可以使用O(1)空间解决此题?示例 1:输入:head = [3,2,0,-4], pos = 1...原创 2021-02-02 20:56:29 · 386 阅读 · 0 评论 -
【LeetCode】C++ :中等题 - 链表 138. 复制带随机指针的链表
138. 复制带随机指针的链表难度中等478给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。要求返回这个链表的深拷贝。我们用一个由n个节点组成的链表来表示输入/输出中的链表。每个节点用一个[val, random_index]表示:val:一个表示Node.val的整数。 random_index:随机指针指向的节点索引(范围从0到n-1);如果不指向任何节点,则为null。示例 1:输入:hea...原创 2021-02-01 21:57:38 · 239 阅读 · 0 评论 -
【LeetCode】C++ :中等题 - 链表 86. 分隔链表
86. 分隔链表难度中等357给你一个链表和一个特定值x,请你对链表进行分隔,使得所有小于x的节点都出现在大于或等于x的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入:head = 1->4->3->2->5->2, x = 3输出:1->2->2->4->3->5原本想的是用栈来存储大小的数值,后来超时了,。。我然后瞄了一眼题解,啊明白了!把小于和大于x的节点分别形成两个...原创 2021-02-01 21:25:55 · 202 阅读 · 0 评论 -
【LeetCode】C++ :简单题 - 链表 206. 反转链表
206. 反转链表难度简单1422反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?反转链表, 需要多训练训练,思路就是把节点倒着指过来。/** * Definition for singly-linked list. * struct ListNode { * int .原创 2021-01-04 22:24:21 · 190 阅读 · 1 评论 -
【LeetCode】C++ :中等题 - 链表 92. 反转链表 II
92. 反转链表 II难度中等651反转从位置m到n的链表。请使用一趟扫描完成反转。说明:1 ≤m≤n≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL从labuladong大佬那学到的方法必须大赞!!!居然给我讲明白了递归,我哭了都,感动!!!/** * Definition for singly-l...原创 2021-01-27 14:04:43 · 311 阅读 · 0 评论 -
【LeetCode】C++ :中等题 - 链表 82. 删除排序链表中的重复元素 II
82. 删除排序链表中的重复元素 II难度中等437给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中没有重复出现的数字。示例1:输入: 1->2->3->3->4->4->5输出: 1->2->5示例2:输入: 1->1->1->2->3输出: 2->31、标记法非常清晰的题解方法,我用C++改写过来的。方法不是在原来链表上进行删除操作,那样太不省事了。...原创 2021-01-26 23:51:12 · 296 阅读 · 0 评论 -
【LeetCode】C++ :中等题 - 链表 19. 删除链表的倒数第 N 个结点
中等题训练开始啦!!!紧张19. 删除链表的倒数第 N 个结点难度中等1188给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]提示:链表中结点的数目为sz ...原创 2021-01-26 16:38:09 · 298 阅读 · 0 评论