二叉树
华佗难治我骚
这个作者很懒,什么都没留下…
展开
-
二叉树遍历 前序,中序,后序
首先我举例一个二叉树,在这个二叉树上面做解释。这里借用一下别人的图片前序:先遍历根节点,在遍历左节点,在遍历右节点。如上图,首先找整个树的根节点,那就是A,其次找整个节点的左节点也就是B,找到B之后,发现B其实也是其他节点的根节点。所以按照前序的规则,遍历B节点的左节点也就是D。继续就是G,最后遍历D节点的右节点是H。这时候左子树已经遍历完了,这时候就要往右子树走,进入右子树之后,找到右子树的最开始根节点也就是C,然后按照前面对左子树的解释依次遍历就是E,I,F。我们要记住要先遍历完一个子树才能原创 2020-06-18 16:51:49 · 191 阅读 · 0 评论 -
力扣 面试题 04.04. 检查平衡性
面试题 04.04. 检查平衡性难度简单10收藏分享切换为英文关注反馈实现一个函数,检查二叉树是否平衡。在这个问题中,平衡树的定义如下:任意一个节点,其两棵子树的高度差不超过 1。示例 1:给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回 true 。示例 2:给定二叉树 [1,2,2,3,3,null,null,4,4] 1 / \ 2 2 /原创 2020-05-17 17:36:32 · 141 阅读 · 0 评论 -
二叉树
1 给一颗二叉树,输入格式为若干行,每行格式为:当前节点,左节点,右节点;输出二叉树的前序、中序、后序遍历。思路比较傻,肯定不是最优。望路过得大佬指点一下思路:用结构体:val//当前值; right//右边节点; left//左边节点 (数组s) 在加一个计算度得数组//用来求最开始得根节点(根节点入度为一)找到根节点后,在s数组里面找这个数,依次向下维护。...原创 2020-05-10 23:18:30 · 176 阅读 · 0 评论 -
leetcode 98. 验证二叉搜索树
98. 验证二叉搜索树难度中等519收藏分享切换为英文关注反馈给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。示例1:输入: 2 / \ 1 3输出: true示例2:输入: ...原创 2020-05-04 14:40:16 · 116 阅读 · 0 评论 -
leetcode 95. 不同的二叉搜索树 II
给定一个整数 n,生成所有由 1 ...n 为节点所组成的二叉搜索树。示例:输入: 3输出:[[1,null,3,2],[3,2,null,1],[3,1,null,null,2],[2,1,3],[1,null,2,null,3]]解释:以上的输出对应以下 5 种不同结构的二叉搜索树: 1 3 3 2 ...原创 2020-05-03 16:01:05 · 96 阅读 · 0 评论 -
leetcode 二叉树的中序遍历
94. 二叉树的中序遍历难度中等481收藏分享切换为英文关注反馈给定一个二叉树,返回它的中序遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [1,3,2]我这里只写的是递归/** * Definition for a binary tree node. * public class TreeN...原创 2020-05-03 11:31:01 · 76 阅读 · 0 评论