
二叉树
加油呐
这个作者很懒,什么都没留下…
展开
-
剑指offer:求二叉树的深度(递归与非递归)
题目: 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 分析思路以及代码: 分为三种情况: 1)二叉树为空,直接返回0 2)左子树或者右子树为空,直接返回左子树或者右子树的深度 3)左子树和右子树都不为空,分别求出左子树和右子树的深度,取最大值 二叉树的结构: public class TreeNode {...原创 2018-09-09 17:23:10 · 452 阅读 · 0 评论 -
剑指offer:平衡二叉树(java)
题目描述: 输入一棵二叉树,判断该二叉树是否是平衡二叉树。 分析: 满足:左右二叉树的层数之差小于等于1 1)递归 知道了二叉树的深度怎么求,现在要判断是否是平衡二叉树,只要分别求出左右子树的深度,然后判断深度之差在小于2就行。 //1.递归,如果二叉树左树层数与右边层数之差大于1,就不是平衡二叉树 public boolean IsBalanced_Solution(TreeNo...原创 2018-09-10 21:07:39 · 350 阅读 · 1 评论 -
二叉树的多种遍历
二叉树的遍历: 递归就不用说了,3行代码就解决了 面试的时候遇到这个,想不起来了,现在总结一下。 参考博客:https://blog.youkuaiyun.com/u012102306/article/details/52841163 https://www.cnblogs.com/SHERO-Vae/p/5800363.html 先序遍历: 根左右。当前节点p放入栈中,判断P是否有左孩子,如果没...原创 2018-10-05 21:52:05 · 240 阅读 · 0 评论