![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
链表
链表
Alwaysion
more persistent for nothing
个人qq:790693499,欢迎来交流
展开
-
【力扣143. 重排链表】寻找链表中点 + 链表逆序 + 合并链表(python3)
题目描述https://leetcode-cn.com/problems/reorder-list/这个题还能顺便练习寻找链表中点 + 链表逆序思路题解方法二:寻找链表中点 + 链表逆序 + 合并链表注意到目标链表即为将原链表的左半端和反转后的右半端合并后的结果。这样我们的任务即可划分为三步:找到原链表的中点(参考「876. 链表的中间结点」)。我们可以使用快慢指针来 O(N) 地找到链表的中间节点。将原链表的右半端反转(参考「206. 反转链表」)。我们可以使用迭代法实现链表的反转。将原创 2021-08-05 13:20:36 · 247 阅读 · 0 评论 -
【力扣25. K 个一组翻转链表】模拟(python3)
题目描述https://leetcode-cn.com/problems/reverse-nodes-in-k-group/思路题解start start.next…tmp end,其中[start.next,tmp]是需要反转的地方。# Definition for singly-linked list.# class ListNode:# def __init__(self, val=0, next=None):# self.val = val#原创 2021-07-23 09:37:01 · 95 阅读 · 0 评论 -
【力扣206. 反转链表】递归+迭代(三指针)(Python3)
题目描述https://leetcode-cn.com/problems/reverse-linked-list/思路题解递归class Solution: def reverseList(self, head: ListNode) -> ListNode: if not head or not head.next:return head p=self.reverseList(head.next) head.next.next=head原创 2021-07-18 11:18:36 · 113 阅读 · 0 评论 -
【力扣剑指 Offer 36. 二叉搜索树与双向链表、 426 】取头尾拼接的dfs+标记遍历的dfs(python3)
题目描述https://leetcode-cn.com/problems/er-cha-sou-suo-shu-yu-shuang-xiang-lian-biao-lcof/思路题解取头尾拼接的dfs自己做的首先后续遍历,得到左右子树的链表的头尾节点,然后在把中间节点和他们拼接起来,最后返回新的头尾节点。"""# Definition for a Node.class Node: def __init__(self, val, left=None, right=None):原创 2021-07-16 17:24:21 · 342 阅读 · 0 评论 -
【力扣剑指 Offer 35. 复杂链表的复制、138. 复制带随机指针的链表】哈希表 +拼接与拆分(python3))
题目描述https://leetcode-cn.com/problems/fu-za-lian-biao-de-fu-zhi-lcof/思路题解https://leetcode-cn.com/problems/fu-za-lian-biao-de-fu-zhi-lcof/solution/jian-zhi-offer-35-fu-za-lian-biao-de-fu-zhi-ha-xi-/哈希表利用哈希表的查询特点,考虑构建 原链表节点 和 新链表对应节点 的键值对映射关系,再遍历构建新链表各节点原创 2021-07-16 15:17:00 · 117 阅读 · 0 评论 -
【力扣142. 环形链表 II】复杂度双O(1)+快慢指针(golang+python3)
题目描述https://leetcode-cn.com/problems/linked-list-cycle-ii/思路题解go 地址比较法/** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */import "unsafe"func detectCycle(head *ListNode) *ListNode { //地原创 2021-06-18 11:15:48 · 97 阅读 · 0 评论 -
【力扣18-删除链表的倒数第 N 个结点】快慢指针链表(golang)
目录题目描述思路题解题目描述https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/思路题解三个指针,ans存头,p存慢的,e存快的。有个问题就是不用ans直接renturn head会报错。待弄清。/** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } *原创 2021-06-17 16:16:43 · 85 阅读 · 0 评论 -
【力扣141-环形链表】覆盖标记法(golang)
目录题目描述思路题解题目描述https://leetcode-cn.com/problems/linked-list-cycle/思路题解只遍历一次,当head不为空时,循环遍历。当head的值不等于100009时,设为100009,相当于做了标记。当相等时代表已经遍历过了,退出循环,返回true。若遍历完了还没返回,则返回false,代表没有环。代码如下:/** * Definition for singly-linked list. * type ListNode struct { *原创 2020-12-07 19:31:45 · 7693 阅读 · 0 评论 -
【力扣148-排序链表】链表归并排序(python3)
目录题目描述思路题目描述https://leetcode-cn.com/problems/sort-list/思路原来想的是用直接选择排序,每次从链表中找出最大的数来,加入到链表头部,结果时间超限,代码如下:# Definition for singly-linked list.# class ListNode:# def __init__(self, val=0, next=None):# self.val = val# self.next = n原创 2020-11-22 14:34:33 · 450 阅读 · 0 评论 -
【力扣21-合并两个有序链表】迭代法(python3)
目录题目描述思路题目描述https://leetcode-cn.com/problems/merge-two-sorted-lists/思路迭代法:(链接中方法2)https://leetcode-cn.com/problems/merge-two-sorted-lists/solution/he-bing-liang-ge-you-xu-lian-biao-by-leetcode-solu/原创 2020-11-21 15:34:40 · 187 阅读 · 0 评论