[title]题目[/title] 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。 现有一个链表 — head = [4,5,1,9],它可以表示为: 示例 1: 输入: head = [4,5,1,9], node = 5 输出: [4,1, …
[LeetCode] 160. 相交链表(Intersection of Two Linked Lists)
[title]题目[/title] 编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = …
[LeetCode] 203. 移除链表元素(Remove Linked List Elements)
[title]题目[/title] 删除链表中等于给定值 val 的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5 [title]视频讲解[/title] [bili …
[LeetCode] 147. 对链表进行插入排序(Insertion Sort List)
[title]题目[/title] 插入排序算法: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。 每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。 重复直到所有输入数据插入完为止。 示例 1: 输入: 4->2-& …
[LeetCode] 92. 反转链表 II(Reverse Linked List II)
[title]题目[/title] 反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 说明: 1 ≤ m ≤ n ≤ 链表长度。 示例: 输入: 1->2->3->4->5->NULL, m = 2, n = 4 输出: 1->4->3->2- …
[LeetCode] 206. 反转链表(Reverse Linked List)
[title]题目[/title] 反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL [title]视频讲解[/title] [bilibili cid=” …
[LeetCode] 86. 分隔链表(Partition List)
[title]题目[/title] 给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 示例: 输入: head = 1->4->3->2->5->2, x = 3 输出: …
[LeetCode] 83. 删除排序链表中的重复元素(Remove Duplicates from Sorted List)
[title]题目[/title] 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3->3 输出: 1->2->3 来源:力扣(Leet …
[LeetCode] 82. 删除排序链表中的重复元素 II(Remove Duplicates from Sorted List II)
2020.4.4 深刻哀悼抗击新冠肺炎疫情斗争中牺牲的烈士和逝世同胞 [title]题目[/title] 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。 示例 1: 输入: 1->2->3->3->4->4->5 输出: 1 …
[LeetCode] 61. 旋转链表(Rotate List)
[title]题目[/title] 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL …