题目大意:判断一个链表是否含有环,如果有环则输出距离链表头最近的环上结点(即从链表头出发进入环的入口)。 有趣的题目,一般判断链表是否有环可以同时使用两个轨迹结点遍历整个链表,且轨迹结点速度不同,快者q每次循环移动两步,慢者s每次循环移动一步。这样如果有环,那么快者必定会在环上追赶上慢者(由于二者相 ...
分类:
其他好文 时间:
2017-11-08 22:23:55
阅读次数:
87
如何检测一个链表是否有环?这个是一个出现频率较高的面试题。
??如下是一个含有环的链表。
(图片来自http://www.nowamagic.net/librarys/veda/detail/2245
一个有很多关于数据结构的文章的网站,还有其他的资料,可以看看)
我这里解题的方法有三种:
快慢指针方法:两个速度不一样的指针遍历总会相遇;
利用环的顶点数和边相等的关系;
两个指针遍历判断...
分类:
编程语言 时间:
2015-07-20 12:57:24
阅读次数:
242
题目
Given a linked list, determine if it has a cycle in it.
Follow up:
Can you solve it without using extra space?
解答
首先要注意空链表不成环;不能开额外的空间,即空间复杂度是o(1),可采用“快慢指针”查检查链表是否含有环,如果在快的指针能够追上慢的指针,则有环,否...
分类:
其他好文 时间:
2014-07-08 19:17:47
阅读次数:
160