您的位置:首页 > 其它

算法--判断链表是否有环

2018-03-04 10:17 232 查看
1.判断链表是否有环
    追赶法:设定两个指针slow、fast,均从头指针开始,每次分别前进1步、2步;如果存在环,则两者相遇,如果不存在环,fast遇到null退出
2.计算环的长度
    记录下问题1的相遇点,slow、fast从该点出发,再次相遇时,slow所经过的节点数就是环的长度
3.环的入口位置
    设问题1中相遇点为m2,p=h,q=m2;h为链表头节点,p,q每次向前一步,p、q相遇的位置即为环的入口

第三点证明过程见:http://blog.csdn.net/u011373710/article/details/54024366
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐