最大バイナリツリーノード632(変更はパラメータ引数の値には影響しません)

説明は
、バイナリツリーとリターンのノードの最大値を検索します。
説明
中国の
英語
バイナリツリーとリターンのノードの最大値を見つけます。

サンプル
サンプル1:
入力:
1
/
-53
/ \ /
12-4-5
出力:ノード3の値

サンプル2:
入力:
10
/
-52
/ \ /
03-4-5
出力:ノード10の値

public class Solution {
    /*
     * @param root: the root of tree
     * @return: the max node
     */
 
public TreeNode maxNode(TreeNode root) {
  
    TreeNode maxNode = root;
    if(root != null) {
        
        maxNode = getMaxNode(root,maxNode);
    }
    return maxNode;
}
public TreeNode getMaxNode(TreeNode root,TreeNode maxNode) {
    
    TreeNode leftNode = null;
    TreeNode rightNode = null;
    if(root.left != null) {
        leftNode = root.left;
        if(leftNode.val > maxNode.val) {
            maxNode = leftNode;
        }
       maxNode = getMaxNode(leftNode,maxNode);
    }
        
    if(root.right != null) {
        rightNode = root.right;
        if(rightNode.val > maxNode.val) {
            maxNode = rightNode;
        }
       maxNode = getMaxNode(rightNode,maxNode); // 形参的改变不影响实参的值!!所以要再赋值一遍
    }
    return maxNode;
}

}

パラメータの変更は、引数の値には影響しません!
パラメータの変更は、引数の値には影響しません!
パラメータの変更は、引数の値には影響しません!

公開された40元の記事 ウォン称賛10 ビュー30000 +

おすすめ

転載: blog.csdn.net/ai_pple/article/details/87189817