![](https://img-blog.csdnimg.cn/20200403081341680.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
BinaryTree
二叉树相关算法题
EamonHu
这个作者很懒,什么都没留下…
展开
-
【高频】二叉树的层次遍历BFS和深度遍历DFS
题目描述对二叉树的层次遍历和深度遍历实现思路层次遍历借助队列 LinkedList深度遍历借用栈 Stackimport java.util.*;public class BFSAndDFS { public class TreeNode { int val; TreeNode left; TreeNode right; ...原创 2020-04-02 10:52:49 · 705 阅读 · 0 评论 -
【重点】求一棵完全二叉树的节点个数
题目描述已知一棵完全二叉树,求其节点的个数要求:时间复杂度低于O(N),N为这棵树的节点个数实现思路若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。首先判断根节点的右子树的左边界。左子树的左边界在最后一层。说明此时根的左子树为满二叉树所有节点数 = 左子树 + 根节点 + 右子...原创 2020-04-02 10:31:06 · 1104 阅读 · 0 评论 -
【高频】判断一棵二叉树是否为二叉搜索树BST和完全二叉树CBT
题目描述判断一棵二叉树是否为二叉搜索树,完全二叉树实现思路public static class Node { int val; Node left; Node right; public Node(int data) { this.val = data; }}二叉搜索树二叉搜索树是一棵空树,或者是具有下列性质的二叉树: 若...原创 2020-04-02 09:57:01 · 898 阅读 · 0 评论 -
【高频】判断一棵二叉树是否为平衡二叉树
题目描述判断一棵二叉树是否为平衡二叉树实现思路平衡二叉树是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。抓住两个点:左右子树也是平衡二叉树(想到递归)左右子树高度差不超过1public class IsBalanceOfTree { public static class Node { int val; ...原创 2020-04-02 09:07:08 · 547 阅读 · 0 评论 -
【剑指offer】37.序列化和反序列化二叉树
题目描述请实现两个函数,分别用来序列化和反序列化二叉树实现import java.util.LinkedList;import java.util.Objects;import java.util.Queue;public class SerilizeAndReconstructTree { public static class Node{ int val...原创 2020-04-01 23:59:25 · 807 阅读 · 0 评论 -
二叉树的先中后序遍历递归和非递归
题目描述实现二叉树的先序、中序、后序遍历,包括递归方式和非递归方式实现递归方式public static class Node { int val; Node left; Node right; public Node(int data) { this.val = data; }}// 前序递归public static ...原创 2020-04-01 23:18:13 · 590 阅读 · 0 评论