合集-LeetCode 链表
摘要:题目链接 2058. 找出临界点之间的最小和最大距离 思路 模拟 题解链接 一次遍历 + 常数空间 关键点 无 时间复杂度 空间复杂度 代码实现: class Solution: def nodesBetweenCriticalPoints(self, head:
阅读全文
摘要:题目链接 2181. 合并零之间的节点 思路 链表-删除节点 题解链接 原地做法,O(1) 空间(Python/Java/C++/C/Go/JS) 关键点 无 时间复杂度 空间复杂度 代码实现: class Solution: def mergeNodes(sel
阅读全文
摘要:题目链接 725. 分隔链表 思路 链表-模拟 题解链接 Python 模拟 关键点 1. 算链表长度 2. 计算余数 3. 落入余数部分应当多放1一个节点 时间复杂度 空间复杂度 代码实现: class Solution: def splitListToPart
阅读全文
摘要:题目链接 817. 链表组件 思路 链表-思维题 题解链接 官方题解 关键点 题意可以转换为:1. 节点的值在nums中且节点位于起始位置 2. 节点的值在nums中且前一个节点不在nums中 时间复杂度 空间复杂度 代码实现: class Solution: d
阅读全文
摘要:题目链接 876. 链表的中间结点 思路 快慢指针-经典应用题 题解链接 没想明白?一个视频讲透!(Python/Java/C++/Go/JS/Rust) 关键点 while fast and fast.next: ... 时间复杂度 空间复杂度 代码实现: cl
阅读全文
摘要:题目链接 2095. 删除链表的中间节点 思路 快慢指针-找到中间节点-简单扩展 题解链接 官方题解 关键点 while fast and fast.next: ... 时间复杂度 空间复杂度 代码实现: class Solution: def deleteMid
阅读全文
摘要:题目链接 234. 回文链表 思路 链表综合题:快慢指针 + 指针翻转 题解链接 官方题解 关键点 while fast.next and fast.next.next: ... 时间复杂度 空间复杂度 代码实现: class Solution: def isPa
阅读全文
摘要:题目链接 141. 环形链表 思路 快慢指针-经典问题 题解链接 没想明白?一个视频讲透快慢指针!(Python/Java/C++/Go/JS) 关键点 while fast and fast.next: ... 时间复杂度 空间复杂度 代码实现: class S
阅读全文
摘要:题目链接 142. 环形链表 II 思路 快慢指针-经典应用:相遇后,移动head及slow直至相遇 题解链接 没想明白?一个视频讲透!含数学推导(Python/Java/C++/Go/JS) 关键点 while fast and fast.next: ... && while head != sl
阅读全文
摘要:题目链接 2130. 链表最大孪生和 思路 链表综合题:快慢指针 + 指针翻转 题解链接 官方题解 关键点 while fast.next and fast.next.next: ... 时间复杂度 空间复杂度 代码实现: class Solution: def
阅读全文
摘要:题目链接 143. 重排链表 思路 链表综合题:快慢指针(找链表一半位置)+ 链表翻转 题解链接 【视频】没想明白?一个视频讲透!(Python/Java/C++/Go/JS) 关键点 快慢指针:while fast and fast.next: ... && 合并时结束条件:while secon
阅读全文
摘要:题目链接 457. 环形数组是否存在循环 思路 思维题-快慢指针 题解链接 【负雪明烛】动画题解:快慢指针 关键点 1. 将题意中移动规则抽象为nextpos 2. 限制条件的检查:同号 且 循环节点数量大于 3. 鸽巢原理:只需要循环 次 时间复杂度 空间复杂度
阅读全文