zoukankan      html  css  js  c++  java
  • N38_求解二叉树的深度

    题目描述

    输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
    思路:对每一个节点进行分析
    只有根节点深度就是1
    若根节点有左子树没有右,树的深度是左子树+1
    若根节点有右子树灭有左,树的深度是右子树+1
    若左右都有,则左右的最大值+1
    package new_offer;
    /**
     * 输入一棵二叉树,求该树的深度。
     * 从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
     * @author Sonya
     *
     */
    /**
    public class TreeNode {
        int val = 0;
        TreeNode left = null;
        TreeNode right = null;
    
        public TreeNode(int val) {
            this.val = val;
        }
    }
    */
    public class N38_TreeDepth {
    	
    
    	public int TreeDepth(TreeNode root) {
    		if(root==null)return 0;
    		int left=TreeDepth(root.left);
    		int right=TreeDepth(root.right);
    		if(left>right) return left+1;
    		else return right+1;
            
        }
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    
    	}
    
    }
    

      

  • 相关阅读:
    bzoj3224
    [洛谷日报第62期]Splay简易教程 (转载)
    bzoj1588
    codeforces467C
    codeforces616B
    codeforces379C
    codeforces545C
    codeforces285C
    codeforces659C
    快读代码level.2
  • 原文地址:https://www.cnblogs.com/kexiblog/p/11174929.html
Copyright © 2011-2022 走看看