链表双指针
双指针技巧秒杀链表题⽬
干干脆脆的小饼干6688
积跬步以致千里,积怠惰以致深渊
展开
-
83. 删除排序链表中的重复元素
删除排序链表中的重复元素一、题目描述二、示例三、难度四、代码Java版 一、题目描述 二、示例 三、难度 简单 四、代码 Java版 /** * @author Kidd * @create 2022-05-08 10:08 */ class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } ListNode(int val, L原创 2022-05-08 11:13:07 · 560 阅读 · 0 评论 -
160. 相交链表
相交链表一、题目描述二、难度三、代码Java版法一:用ArrayList或HashSet法二:双指针 一、题目描述 二、难度 简单 三、代码 Java版 法一:用ArrayList或HashSet import java.util.*; /** * @author Kidd * @create 2022-05-07 10:49 */ class ListNode { int val; ListNode next; ListNode(int x) {原创 2022-05-07 11:45:49 · 603 阅读 · 0 评论 -
876.链表的中间结点
链表的中间结点一、题目描述二、示例三、难度四、代码Java版法一:常规法法二:快慢指针 一、题目描述 二、示例 三、难度 简单 四、代码 Java版 法一:常规法 先遍历链表,计算结点个数sum,得到中间结点sum/2+1, 再遍历一次 class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } Lis原创 2022-05-06 10:40:40 · 530 阅读 · 0 评论 -
19. 删除链表的倒数第 N 个结点
删除链表的倒数第 N 个结点一、题目描述二、示例三、难度四、代码Java版 一、题目描述 二、示例 三、难度 中等 四、代码 Java版 /** * @author Kidd * @create 2022-04-28 19:00 */ class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } Lis原创 2022-04-28 19:17:09 · 786 阅读 · 0 评论 -
23. 合并K个升序链表
合并K个升序链表一、题目描述二、示例三、难度四、代码Java版4.1 法一:暴力法4.2 法二:优先队列 一、题目描述 二、示例 三、难度 困难 四、代码 Java版 4.1 法一:暴力法 import java.util.ArrayList; import java.util.Comparator; import java.util.List; /** * @author Kidd * @create 2022-04-24 14:00 */ class ListNode { i原创 2022-04-24 14:28:25 · 853 阅读 · 0 评论 -
21. 合并两个有序链表
题解一、题目描述二、示例三、难度四、代码Java版4.1 法一:迭代法4.2 法二:递归法(待更新...) 一、题目描述 二、示例 三、难度 简单 四、代码 Java版 4.1 法一:迭代法 时间复杂度O(n+m),依次比较两升序链表结点值 /** * @author Kidd * @create 2022-04-23 21:00 */ class ListNode { int val; ListNode next; ListNode() {}原创 2022-04-23 21:12:47 · 676 阅读 · 0 评论