二叉树
长大想当太空人
四川大学软件工程本科在读
展开
-
LeetCode 96. 不同的二叉搜索树
题目描述:给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种?原创 2018-10-19 14:22:01 · 270 阅读 · 0 评论 -
LeetCode 530. 二叉搜索树的最小绝对差
二叉搜索树的最小绝对差题目描述:给定一个所有节点为非负值的二叉搜索树,求树中任意两节点的差的绝对值的最小值。题目分析:根据二叉搜索树的性质可得,按中序遍历,即可得到一个递增的序列,所以问题转换为,对于一个递增的序列,求相邻元素的最小绝对差。代码如下:void inorder(TreeNode *root, int & min, int & pre){ //min为相邻...原创 2018-10-20 11:50:37 · 748 阅读 · 0 评论 -
LeetCode 二叉树的路径遍历
LeetCode 112. 路径总和题目描述:给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。示例: 给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13 4 ...原创 2018-10-28 15:59:45 · 1057 阅读 · 0 评论 -
LeetCode 100. 相同的树
相同的树题目描述:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。题目求解:只需要利用递归进行深度搜索,对应结点两两比较即可。代码如下:/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNod...原创 2018-10-21 16:43:43 · 265 阅读 · 0 评论 -
LeetCode 101. 对称二叉树
对称二叉树题目描述:给定一个二叉树,检查它是否是镜像对称的。题目求解:本题与上一题“相同的树”本质上是相同的,都是通过递归深度搜索来比较元素,只不过上一题是比较两个树相同位置的元素,此题是要比较一棵树上的镜像位置的元素。代码如下:/** * Definition for a binary tree node. * struct TreeNode { * int val;...原创 2018-10-21 17:32:25 · 262 阅读 · 0 评论 -
LeetCode 110. 平衡二叉树
平衡二叉树题目描述:给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。示例 1:给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回 true 。示例 2:给定二叉树 [1,2,2,3,3,nul...原创 2018-10-21 19:08:05 · 936 阅读 · 0 评论 -
LeetCode 二叉树的深度遍历和层次遍历(最详细讲解!)
二叉树的深度遍历(非递归)题目描述:二叉树的前序遍历:给定一个二叉树,返回它的前序遍历。二叉树的中序遍历:给定一个二叉树,返回它的中序遍历。二叉树的后续遍历:给定一个二叉树,返回它的后序遍历。题目分析:用传统的递归做法难度很小,在此不做讨论,本文讨论迭代方法。而网上的迭代方法基本一样,但对于初学者来讲晦涩难懂,本文把迭代的每一步操作与递归的操作一一对应起来,有助于新手理解。比如我们拿...原创 2018-10-24 18:39:18 · 2074 阅读 · 0 评论 -
LeetCode 617. 合并二叉树
合并二叉树题目描述:给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1:输入: Tree 1 Tree 2 ...原创 2018-11-01 18:56:44 · 223 阅读 · 0 评论 -
LeetCode 235. 二叉树的最近公共祖先
二叉树的最近公共祖先题目描述:给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,null,3,5] ...原创 2018-11-07 20:51:57 · 193 阅读 · 0 评论