求二叉树的宽度
来源:互联网 发布:知乎 phyton 编辑:程序博客网 时间:2024/05/18 03:46
package tree;import java.util.LinkedList;public class WithOfTree {/** * 求二叉树的宽度,其实就是层次遍历的改进 * @param args */public static int getWith(TreeNode root){if(root==null) return 0;LinkedList<TreeNode> list = new LinkedList<>();list.add(root);int maxwith = 1;int levelcount = 1;while(!list.isEmpty()){int i=0;int count = 0;while(i<levelcount){TreeNode newNode = list.removeFirst();if(newNode.left!=null){list.add(newNode.left);count++;}if(newNode.right!=null){list.add(newNode.right);count++;}i++;}levelcount = count;if(levelcount>maxwith){maxwith = levelcount;}}return maxwith;}public static void main(String[] args) {TreeNode root = new TreeNode(1);root.left = new TreeNode(2);root.right = new TreeNode(3);root.left.left = new TreeNode(4);root.left.right = new TreeNode(5);root.right.right = new TreeNode(8);root.right.right.left = new TreeNode(6);root.right.right.right = new TreeNode(7);System.out.println(getWith(root));}}
0 0
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树宽度
- 二叉树 求宽度
- 求二叉树宽度
- 求二叉树宽度
- 求二叉树宽度的递归算法
- 求二叉树的深度和宽度
- 求二叉树的深度和宽度
- 求二叉树的高度和宽度
- 求二叉树的深度和宽度
- 求二叉树的深度和宽度
- 同时安装java for OS X 和Oracle java 7,如何自由切换JDK版本
- 淡淡的忧伤
- C++函数重定义、重载、重写
- 操作系统学习笔记五
- 果园里的树(刘汝佳的小白5.4.3)详解
- 求二叉树的宽度
- C++实现二叉树的建立和三种递归遍历
- 2014年6月编程语言排行榜
- 安卓Activity全屏的一种办法
- c++选择类型的一些经验标准
- how to design MongoDB schema
- ZOJ-1163
- 安卓背景图片移动(全屏)
- web前端开发的时候需要养成的习惯