数据结构--链表刷题(一)快慢指针(上)

数据结构--链表刷题(一)快慢指针(上)

1.快慢指针  先看一道简单的题目:返回中间结点 这道题有一个最朴素的做法就是先遍历一边链表,设置计数器求出链表长度,再重新走1/2的链表长度,即可返回中间节点 ...

环形链表(快慢指针)

环形链表(快慢指针)

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0...

【数据结构】深入浅出理解链表中二级指针的应用

【数据结构】深入浅出理解链表中二级指针的应用

相信大家在初学链表时一定被下面这些函数的二级指针搞得晕头转向的,疑惑包括但不限于: 什么是二级指针? 为什么链表要用到二级指针? 为什么同样是链表的函数,有的要用二级指针而有的只要用一级指针? 为什么同样是链表,有的链表中使用了二级指针?而有的链表却只需要使用一级指针? ...

LeetCode刷题--- 61. 旋转链表(快慢指针+闭合为环)

LeetCode刷题--- 61. 旋转链表(快慢指针+闭合为环)

一、编程题: 61. 旋转链表(快慢指针+闭合为环) 1.题目描述   给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。LeetCode题目链接。 2.示例1: ...

LeetCode刷题--- 138. 复制带随机指针的链表(哈希表+迭代)

LeetCode刷题--- 138. 复制带随机指针的链表(哈希表+迭代)

一、编程题:430. 扁平化多级双向链表(双指针) 1.题目描述   给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。   构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节...

LeetCode刷题---21.合并两个有序链表(双指针)

LeetCode刷题---21.合并两个有序链表(双指针)

一、编程题:21.合并两个有序链表(双指针) 1.题目描述   将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。。 LeetCode题目链接。 2.示例1: ...

LeetCode刷题---链表经典问题(双指针)

LeetCode刷题---链表经典问题(双指针)

一、编程题:206. 反转链表(双指针-头插法) 1.题目描述   给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 LeetCode题目链接。 2.示例1: ...

LeetCode刷题---19. 删除链表的倒数第 N 个结点(双指针-快慢指针)

LeetCode刷题---19. 删除链表的倒数第 N 个结点(双指针-快慢指针)

一、编程题:19. 删除链表的倒数第 N 个结点(双指针-快慢指针) 1.题目描述   给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 LeetCode题目链接。 2.示例1: ...

LeetCode刷题---160. 相交链表(双指针-对撞指针)

LeetCode刷题---160. 相交链表(双指针-对撞指针)

一、编程题:160. 相交链表(双指针-对撞指针) 1.题目描述   给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。图示两个链表在节点 c1 开始相交: ...

LeetCode刷题---142. 环形链表 II(双指针-快慢指针)

LeetCode刷题---142. 环形链表 II(双指针-快慢指针)

一、编程题:142. 环形链表 II(双指针-快慢指针) 1.题目描述   给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。   如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

社区圈子

数据库
数据库
分享数据库前沿,解构实战干货,推动数据库技术变革
253177+人已加入
加入