数据结构—二叉树
文章平均质量分 55
death_ray
这个作者很懒,什么都没留下…
展开
-
二叉树的最大深度
给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的距离。您在真实的面试中是否遇到过这个题? Yes样例给出一棵如下的二叉树: 1 / \ 2 3 / \ 4 5这个二叉树的最大深度为3.思路:dfs进行搜,对max进行更新,最后返回max即可。原创 2017-04-11 16:44:11 · 158 阅读 · 0 评论 -
二叉树的路径和
给定一个二叉树,找出所有路径中各节点相加总和等于给定 目标值 的路径。一个有效的路径,指的是从根节点到叶节点的路径。您在真实的面试中是否遇到过这个题? Yes样例给定一个二叉树,和 目标值 = 5: 1 / \ 2 4 / \ 2 3返回:[ [1, 2, 2], [1, 4]]解题原创 2017-04-16 18:32:31 · 357 阅读 · 0 评论 -
子树
有两个不同大小的二进制树: T1 有上百万的节点; T2 有好几百的节点。请设计一种算法,判定 T2 是否为 T1的子树。 注意事项若 T1 中存在从节点 n 开始的子树与 T2 相同,我们称 T2 是 T1 的子树。也就是说,如果在 T1 节点 n 处将树砍断,砍断的部分将与 T2 完全相同。您在真实的面试中是否遇到过这个题? Yes原创 2017-04-16 18:29:40 · 202 阅读 · 0 评论 -
把排序数组转换为高度最小的二叉搜索树
描述 笔记 数据 评测给一个排序数组(从小到大),将其转换为一棵高度最小的排序二叉树。 注意事项There may exist multiple valid solutions, return any of them.您在真实的面试中是否遇到过这个题? Yes样例给出数组 [1,2,3,4,5,原创 2017-04-16 18:24:36 · 264 阅读 · 0 评论 -
克隆二叉树
描述 笔记 数据 评测深度复制一个二叉树。给定一个二叉树,返回一个他的 克隆品 。您在真实的面试中是否遇到过这个题? Yes样例给定一个二叉树: 1 / \ 2 3 / \4 5返回其相同结构相同数值的克隆二叉树: 1 / \ 2 3 / \原创 2017-04-16 18:18:00 · 238 阅读 · 0 评论 -
二叉树的所有路径
二叉树的所有路径 描述 笔记 数据 评测给一棵二叉树,找出从根节点到叶子节点的所有路径。您在真实的面试中是否遇到过这个题? Yes样例给出下面这棵二叉树: 1 / \2 3 \ 5所有根到叶子的路径为:[ "1->2->5", "1->3"]原创 2017-04-16 18:05:09 · 198 阅读 · 0 评论 -
二叉树的后序遍历
class Solution { /** * @param root: The root of binary tree. * @return: Postorder in vector which contains node values. */public:vectorans; vector postorderTraversal(TreeNode原创 2017-04-16 17:56:06 · 252 阅读 · 0 评论 -
将二叉树拆成链表
将一棵二叉树按照前序遍历拆解成为一个假链表。所谓的假链表是说,用二叉树的 right 指针,来表示链表中的 next 指针。 注意事项不要忘记将左儿子标记为 null,否则你可能会得到空间溢出或是时间溢出。您在真实的面试中是否遇到过这个题? Yes样例 1 \原创 2017-04-11 17:20:22 · 220 阅读 · 0 评论 -
二叉树的最小深度
给定一个二叉树,找出其最小深度。二叉树的最小深度为根节点到最近叶子节点的距离。您在真实的面试中是否遇到过这个题? Yes样例给出一棵如下的二叉树: 1 / \ 2 3 / \ 4 5 这个二叉树的最小深度为 2解题思路:和原创 2017-04-11 17:17:14 · 161 阅读 · 0 评论 -
二叉树的中序遍历
给出一棵二叉树,返回其中序遍历您在真实的面试中是否遇到过这个题? Yes样例给出二叉树 {1,#,2,3}, 1 \ 2 / 3返回 [1,3,2]解题思路:dfs遍历中序储存。class Solution { /** * @param root: The root of bina原创 2017-04-11 17:15:38 · 210 阅读 · 0 评论 -
二叉树的前序遍历
给出一棵二叉树,返回其节点值的前序遍历。您在真实的面试中是否遇到过这个题? Yes样例给出一棵二叉树 {1,#,2,3}, 1 \ 2 / 3 返回 [1,2,3].解题思路:dfs遍历前序保存class Solution {public: /** * @param root: T原创 2017-04-11 17:11:09 · 207 阅读 · 0 评论 -
二叉树的层次遍历 II
给出一棵二叉树,返回其节点值从底向上的层次序遍历(按从叶节点所在层到根节点所在的层遍历,然后逐层从左往右遍历)您在真实的面试中是否遇到过这个题? Yes样例给出一棵二叉树 {3,9,20,#,#,15,7}, 3 / \ 9 20 / \ 15 7按照从下往上的层次遍历为:[ [15,7],原创 2017-04-11 17:09:19 · 300 阅读 · 0 评论 -
二叉树的层次遍历
给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问)您在真实的面试中是否遇到过这个题? Yes样例给一棵二叉树 {3,9,20,#,#,15,7} : 3 / \9 20 / \ 15 7返回他的分层遍历结果:[ [3], [9,20], [15,7]]解题思路:建立两个队列滚动数组进行循环每原创 2017-04-11 17:06:21 · 186 阅读 · 0 评论 -
等价二叉树
检查两棵二叉树是否等价。等价的意思是说,首先两棵二叉树必须拥有相同的结构,并且每个对应位置上的节点上的数都相等。您在真实的面试中是否遇到过这个题? Yes样例 1 1 / \ / \ 2 2 and 2 2 / /4 4原创 2017-04-11 17:03:08 · 188 阅读 · 0 评论 -
翻转二叉树
翻转一棵二叉树您在真实的面试中是否遇到过这个题? Yes样例 1 1 / \ / \2 3 => 3 2 / \ 4 4解题思路:dfs进行遍历,并且建立一个临时指针,每次对左右结点进行地址调换即可。class Solution {publi原创 2017-04-11 16:57:52 · 291 阅读 · 0 评论 -
Convert BST to Greater Tree
描述 笔记 数据 评测Given a Binary Search Tree (BST), convert it to a Greater Tree such that every key of the original BST is changed to the original key plus sum of all keys greater than the ori原创 2017-05-20 17:24:38 · 150 阅读 · 0 评论