33人の顔質問:以降のバイナリ検索ツリートラバーサルシーケンス

 

入力配列は、判断が返される配列は、任意の2数に対して同じでない場合はtrueで、後順の結果を見つけるために、バイナリツリーではありません

数バイナリ検索ツリー:その左サブツリーが空でない場合、次に、全てのノードが少ないルートノードの値より左の部分木の値であり、その右側のサブツリーが空でない場合、右の部分木における全てのノードがそのルートノードの値よりもポイント値より大きい、その左右のサブツリーバイナリソートツリーです。

二分木検索の明確な定義の後、最後の値の後順トラバースがルートノードである、二つの部分の前に、ルートノードの数は、左と右のサブツリーを示すために使用されます

  // ことが= 0; END = A.length 

        ブール SquenceOfBST(INT A []、int型であり、int型エンド){       
             場合(A == NULL || a.length <= 0)戻り INTルート= A [END-1 ]。
           // 左子树0-> I-1 
            INT I = 0 ;
            一方、(I <エンド-1 ){
                 場合(A [i]が> ルート)、
                     ブレーク
                I ++ ; 
               } 
           // 右子树I-> J-1 
             INTJ = I;
             一方、(J <エンド-1 ){
                 場合(A [J] < ルート)
                     リターン 
                J ++ ; 
              } 
            ブール L = ブール R = もし(I> 0)L = SquenceOfBST(A、である、I)。
            もし(I <エンド-1)R = SquenceOfBST(A、I、エンド-I-1)。// 除去根节点
            リターン(A && B)。
        }

 

おすすめ

転載: www.cnblogs.com/niliuxiaocheng/p/12592345.html