leedcode做题总结,题目Maximum Depth of Binary Tree-------2012/09/29

来源:互联网 发布:自动微信加好友软件 编辑:程序博客网 时间:2024/06/06 01:53

测树高,用的是递归的方法,非常简单,不过我一开始使用if判断right和left的大小导致了超时,后来直接用Math.max()通过。

记得数据结构考试曾经最后一道大题也是测树高,但是要求不能用递归,结果当时没写出来。。。现在想了想可以用队列进行广度优先历遍,用m记录队列中剩余本层的节点数,没出队列一个m--,同时用n记录下一层节点数,每进队列一个n++;当m==0本层访问完时,层数(树高)+1同时m=n;n=0开始下一层历遍


public int maxDepth(TreeNode root) {        if(root==null)return 0;                return Math.max(maxDepth(root.left),maxDepth(root.right))+1;    }


0 0
原创粉丝点击