LeetCode:maxi&mum depth of binary tree&balanced-binary-tree
来源:互联网 发布:什么是js模块化 编辑:程序博客网 时间:2024/05/17 22:38
class TreeNode{public int val=1;TreeNode left;TreeNode right;TreeNode(int x){this.val=x;}}public class Solution {//public int ldepth=1,rdepth=1;public int depth;public int maxDepth(TreeNode root){ if(root==null) return 0;root.val=1;if(root.left!=null){root.val=maxDepth(root.left)+1;}if(root.right!=null){int s=maxDepth(root.right);if(s+1>root.val){root.val=s+1;}}return root.val;}}
minmum depth
/**求最小深度 * Created by a819 on 2017/8/2. */class TreeNode{ public int val; public TreeNode left; public TreeNode right; TreeNode(int x){ this.val=x; }}public class Solution { public int run(TreeNode root){ if(root==null) return 0; root.val=1; if (root.left==null&&root.right==null)//如果只有一个节点,深度是一 return 1; //否则深度是孩子最短深度加一 else{ if(root.left!=null) root.val=run(root.left)+1; if(root.right!=null){ int s=run(root.right)+1; if(root.left==null)//左边节点可能为空,拿着时候他的深度位又孩子加一 root.val=s; else if(root.val>s) root.val=s; } return root.val; } }}
3.Given a binary tree, determine if it is height-balanced.
For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees ofevery node never differ by more than 1.
/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Solution { public boolean isBalanced(TreeNode root) { int leftDep=0; int rightDep=0;//定义左右节点的深度 if (root==null) return true;//节点为空认为平衡 if (root.left!=null) leftDep=height(root.left); if (root.right!=null) rightDep=height(root.right); if (Math.abs(leftDep-rightDep)<=1) return isBalanced(root.left)&&isBalanced(root.right); else return false; } /** * 求左右孩子的最大高度也就是深度 * @param node * @return */ public int height(TreeNode node){ int s=0; node.val=1; if (node.left!=null) node.val=height(node.left)+1; if (node.right!=null) { s = height(node.right) + 1; if(s>node.val) node.val=s; } return node.val; }}
阅读全文
0 0
- LeetCode:maxi&mum depth of binary tree&balanced-binary-tree
- LeetCode: Depth of Binary Tree
- [LeetCode]104. Maximum Depth of Binary Tree&110. Balanced Binary Tree
- Leetcode - Tree - Maximum Depth of Binary Tree
- [leetcode][tree] Maximum Depth of Binary Tree
- LeetCode: Balanced Binary Tree
- [LeetCode]Balanced Binary Tree
- LeetCode Balanced Binary Tree
- [Leetcode] Balanced Binary Tree
- LeetCode : Balanced Binary Tree
- LeetCode Balanced Binary Tree
- [LeetCode] Balanced Binary Tree
- 【leetcode】Balanced Binary Tree
- [LeetCode]Balanced Binary Tree
- [LeetCode] Balanced Binary Tree
- [Leetcode]Balanced Binary Tree
- [leetcode]Balanced Binary Tree
- Leetcode: Balanced Binary Tree
- C++编程
- 2017.7.31
- RCNN代码运行
- 棋盘问题
- Struts2 同时支持/* 和.do *.action 的匹配
- LeetCode:maxi&mum depth of binary tree&balanced-binary-tree
- String\StringBuffer\StringBuilder的不同 基本常用类 Date时间类 Math数学类的基本方法
- 在eclipse中设置了编码方式为utf-8,但是在创建properties文件时没有进行变化
- ZOJ 3960What Kind of Friends Are You?
- eclipse 断点调试方法
- Leetcode 24.Swap Nodes in Pairs
- 最大字段和算法
- Bigdata Development Java_Study_06(集合Collection和Map)
- Immutable.js使用