问题:如何判断单链表有环?若有环,找出其入口地址
1 如何判断单链表有环?
思路:对于如何判断链表有环,可以从起点发出两个指针,一个一次一步,另一个一次两步,如果两个指针相遇,那么这个单链表就有环。
2 若有环,找出其入口地址
第一问得出相遇点后,再发出一个指针,统计这个指针再次回到这个点的距离,也就是环的距离。
然后从起点再发出两个指针,一个指针在另一个前面,两个指针的距离就是环的距离,当两个指针再次相遇的时候就是环的入口。问题:如何判断单链表有环?若有环,找出其入口地址
1 如何判断单链表有环?
思路:对于如何判断链表有环,可以从起点发出两个指针,一个一次一步,另一个一次两步,如果两个指针相遇,那么这个单链表就有环。
2 若有环,找出其入口地址
第一问得出相遇点后,再发出一个指针,统计这个指针再次回到这个点的距离,也就是环的距离。
然后从起点再发出两个指针,一个指针在另一个前面,两个指针的距离就是环的距离,当两个指针再次相遇的时候就是环的入口。