[leetcode]142 Linked List Cycle II

462 ワード

テーマ:
Given a linked list, return the node where the cycle begins. If there is no cycle, return  null .
Follow up:
Can you solve it without using extra space
分析:
この問題は141 Linked List Cycleのアップグレード版で、ループがあるかどうかを判断するだけでなく、起点も判断します.大体構想は141題と同じで、2つの速いポインタを設定します.2つのポインタが出会った後、1つのポインタがチェーンテーブルの起点から歩いて、もう1つのポインタが出会った点から歩いて、両者の速度は同じで、再び出会った点はループの起点です.
証明はこの文章を参考にすることができます.http://blog.csdn.net/kenden23/article/details/13871699