数据结构 快慢指针问题

快慢指针概念

首先快慢指针主要针对链表问题

第一个快慢指针要解决的问题是中间值问题

解决思路

定义两个指针从链表头开始遍历,第一个指针每一次往后走一个节点,第二个指针每一次往后走两个节点。当第二个指针到达链表尾部时,第一个指针指向的节点就是链表的中间值。

 

 源代码

 第二个快慢指针要解决的问题是单向链表是否有环问题。

思路:当链表有环的时候快指针和满指针肯定有相遇的时刻,因为快指针肯定能追上慢指针。

 源代码

 第三个快慢指针要解决的问题是快慢指针找出链表环的入口问题。

源代码:

猜你喜欢

转载自blog.csdn.net/qq_35677589/article/details/112348044