![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
二叉树
刘裕育
这个作者很懒,什么都没留下…
展开
-
算法题 十八 之 之 字型打印二叉树
一开始我的思路就是一层用队列打印,一层用栈打印。但是,后面发现与答案不符合,因为每一次打印都要从另外一个方向重新开始,唉。真的蠢,每一次都要从另外一个方向,用两个栈不就解决了吗?搞那么多事。 public void prinft(Node root) { Stack<Node> stack1 = new Stack<Node>(); Stack<Node> stack2 = new Stack<Node>();原创 2021-09-29 21:23:38 · 136 阅读 · 0 评论 -
算法题十四 之 判断是否是平衡二叉树
题目给你一个树,判断是否是平衡二叉树。平衡二叉树的定义:左右子树的高度相差不大于1思路很简单,我们只需要判断如下两点:递归调用判断左右子树的高度是否大于1,如果大于1,则不是平衡二叉树。满足第一点的同时,还需要判断左右子树是否同时也是平衡二叉树。很简单的一道题,理解树的遍历其实就很容易解决这样的题目了附上代码public boolean isBalanced(TreeNode root) { if(root == null){ return true;原创 2020-09-10 16:32:57 · 181 阅读 · 1 评论 -
算法题 六 之 校验二叉树
题目:给定两颗二叉树,校验二颗二叉树是否一致。当二叉树的结构和每个节点的值都为一样时判定为一致。很简单的一道题,递归调用即可。附上代码;public boolean isSameTree(TreeNode p, TreeNode q) { // 判断结构 if(p == null && q == null){ return true; } if(p == null || q == null){ return false;原创 2020-08-24 20:32:25 · 99 阅读 · 0 评论