牛の顧客のネットワーク - 深さのバイナリツリー

 

バイナリツリートラバーサルプリアンブル:

#バイナリツリーの深さを求めます
クラスソリューション:
    デフTreeDepth(自己、PROOT):
        PROOT ==なしの場合:
            0を返します
        結果= 0
        カウント= 0
        スタック= [(PROOT、1)]
        (スタック)中:
            根、カウント=(stack.pop)
            root.right場合:
                stack.append((root.right、カウント数+ 1))
            root.left場合:
                stack.append((root.left、カウント数+ 1))
            もしroot.right ==なしとroot.left ==なしと結果<数:
                結果=数
        リターン結果

だけでなく、単純な再帰は、他の誰かの下に見えたことだけを見つけるために、自分自身を書きます

クラスソリューション:
     デフTreeDepth(自己、PROOT):
        ここでの書き込みコード
        であれば PROOT == なし:
             リターン0 = self.TreeDepth(pRoot.left) = self.TreeDepth(pRoot.right)
         のリターンは + 1を残した場合 >右、左、他の右+ 1

おすすめ

転載: www.cnblogs.com/ditingz/p/12114654.html