リンクされたリストの動的なプレゼンテーションにLeetCode 114フラット化バイナリツリー

リンクリストへのバイナリ先行順走査は、次のポインタを右に置き換えられています

再帰的な方法の先行順走査の最後の要素は、子を返すために再帰関数は、ツリーリストの後になります

 

クラスのソリューション{
 パブリック無効ヘルパー(TreeNodeの* CUR、ツリーノード*&テール){           
         // (尾)
         // LK( "根"、尾は)
         // (CUR)
         // LK( "根"、CUR)を
         // DSPの 
        尾= CUR。
        ツリーノード *右= cur-> 右;
        // (右)
         // LK( "ルート"、右)
        であれば(cur-> 左){ 
            ツリーノード * leftTail = NULL; 
            ヘルパー(CUR - > - >右= cur->左、leftTail)。                        
            CUR左; 
            CUR - >左= NULL;  = leftTail。
            // DSP 
        } 
        
        場合(右){ 
            ツリーノード * rightTail = NULL; 
            ヘルパー(右、rightTail)。
            テール - >右= 右。 = rightTail。
            // DSP 
        } 
    } 
    
    無効フラット化(TreeNodeの* ルート){        
         場合(!ルート)
             のリターン;
        // AHD(ルート)
        
        ツリーノード *テール= NULL; 
        ヘルパー(根、尾)。        
    } 
}。

ダイナミックなプレゼンテーションを実行:http://simpledsp.com/FS/Html/lc114.html

おすすめ

転載: www.cnblogs.com/leetcoder/p/11330354.html