• 剑指offer-二叉树的深度


    题目描述:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。

    思路:比较每一条路径的长度,取最大值

    ac代码:

     1 /**
     2 public class TreeNode {
     3     int val = 0;
     4     TreeNode left = null;
     5     TreeNode right = null;
     6 
     7     public TreeNode(int val) {
     8         this.val = val;
     9 
    10     }
    11 
    12 }
    13 */
    14 public class Solution {
    15     public int TreeDepth(TreeNode root) {
    16         if(root!=null)
    17             dfs(root,0);
    18         return max;
    19     }
    20      int max=0;
    21      void  dfs(TreeNode root,int t){
    22         t++;
    23         if(root.left==null&&root.right==null){
    24             max=Math.max(max, t);
    25         }
    26         if(root.left!=null){
    27             dfs(root.left,t);
    28         }
    29         if(root.right!=null){
    30             dfs(root.right,t);
    31         }
    32     }
    33 }
  • 相关阅读:
    12.Scala- 注解
    11.Scala-特质
    10.Scala-继承
    9.Scala- 包和引入
    8.Scala-对象
    7.Scala-类
    6.Scala-高阶函数
    5.Scala-匹配模式
    4.Scala-数据结构
    Ruby on Rails Tutorial 第四章 Rails背后的Ruby 之 类
  • 原文地址:https://www.cnblogs.com/llsq/p/8809643.html
Copyright © 2020-2023  润新知