Leetcode 142円リンクリストII

件名の説明:

リストを考えると、チェーンリングの初めに最初のノードを返します。非環式チェイン場合は、NULLが返されます。(NA余分なスペース)

ソリューション:

フロイドのアルゴリズム

スピードの指輪のリストがあるかどうかを調べる1.。

実測2.遭遇ノードSTEP.1入口リングを識別する。

私は、問題の解決に地図上leetcodeを盗むでしょうSTEP.2証明

 

 

ACコード:

クラス解決{
 パブリック
    ListNode * fisrtM(ListNode * ヘッド)
    { 
        ListNode * 遅いです。
        ListNode * 速いです。
        遅い =速い= ヘッド。
        一方、(速い!= NULL)
        { 
            遅く =スロー> 次の;
            もし(faster->次== NULL)戻りNULL; 
            速い = faster->ネクスト> 次;
            もし(遅い==速い)を返す。遅いです 
        } 
        リターンヌル; 

    } 
    ListNode * detectCycle(ListNode * ヘッド){
         場合(ヘッド== NULL)戻りNULL。
        ListNode * FM = fisrtM(ヘッド)
        もし(FM == NULL)戻りNULL; 
        ListNode * ANS = ヘッド。
        一方、(ANS =!FM)
        { 
            ANS = ans-> 次。
            FM = FM-> 次。
        } 
        戻りANS。
        
    } 
}。

 

おすすめ

転載: www.cnblogs.com/z1141000271/p/12454262.html