二叉树
H,W
这个作者很懒,什么都没留下…
展开
-
二叉树的前序遍历非递归
class Solution { public List<Integer> preorderTraversal(TreeNode root) { Stack<TreeNode> stack = new Stack<>(); List<Integer> list = new ArrayList<>()...原创 2019-07-18 15:54:57 · 106 阅读 · 0 评论 -
根据前序遍历和中序遍历构建二叉树
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { pub...原创 2019-07-24 09:56:19 · 207 阅读 · 0 评论 -
二叉树的最大深度
题目描述:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。示例:给定二叉树 [3,9,20,null,null,15,7]返回它的最大深度为3代码实现:class Solution { public int maxDepth(TreeNode root) { if (root == null){ ...原创 2019-07-17 18:38:52 · 108 阅读 · 0 评论 -
根据二叉树创建字符串
题目描述:你需要采用前序遍历的方式,将一个二叉树转换成一个由括号和整数组成的字符串。空节点则用一对空括号 “()” 表示。而且你需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空括号对。输入:二叉树: [1,2,3,4]输出:“1(2(4))(3)”代码实现: /** * Definition for a binary tree node. * public cl...原创 2019-07-20 14:01:34 · 138 阅读 · 0 评论 -
对称二叉树
题目描述:给定一个二叉树,检查它是否是镜像对称的。例如,二叉树?[1,2,2,3,4,4,3] 是对称的。 但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:代码实现:class Solution { public boolean isSymmetricChild(TreeNode leftTree,TreeNode rightTree){ ...原创 2019-07-21 14:53:34 · 178 阅读 · 0 评论 -
根据后序遍历和中序遍历构建二叉树
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { ...原创 2019-07-25 12:57:37 · 299 阅读 · 0 评论 -
二叉树的最近公共祖先
题目描述:给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]示例 1:输入: root = [3,...原创 2019-08-12 20:43:21 · 97 阅读 · 0 评论