树
青柠17
这个作者很懒,什么都没留下…
展开
-
树 236. 二叉树的最近公共祖先 105. 从前序与中序遍历序列构造二叉树 102. 二叉树的层序遍历
236. 二叉树的最近公共祖先 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 示例: 给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4] 示例 1: ...原创 2020-04-02 00:11:00 · 181 阅读 · 0 评论 -
树 94. 二叉树的中序遍历 114. 二叉树展开为链表 538/1038. 把二叉搜索树转换为累加树 98. 验证二叉搜索树
94. 二叉树的中序遍历 思路1:迭代 递归的调用过程是不断往左边走,当左边走不下去了,就打印节点,并转向右边,然后右边继续这个过程。 我们在迭代实现时,就可以用栈来模拟上面的调用过程。 代码实现1: # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self...原创 2020-04-01 20:24:00 · 164 阅读 · 0 评论 -
树 226. 翻转二叉树 617.合并二叉树 101. 对称二叉树
226. 翻转二叉树 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 思路1:递归 根据动画图我们可以总结出递归的两个条件如下: 终止条件: 当前节点为null时返回 交换当前节点的左右节点,再递归...原创 2020-03-31 22:00:28 · 116 阅读 · 0 评论 -
树 112. 路径总和 113. 路径总和II 437. 路径总和III
112. 路径总和 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 1...原创 2020-03-31 17:13:12 · 123 阅读 · 0 评论 -
树 104. 二叉树的最大深度 110.平衡二叉树 543. 二叉树的直径
104. 二叉树的最大深度 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回它的最大深度 3 思路1:递归 递归通式: 判断一个节点的最大深度,需要...原创 2020-03-30 14:00:22 · 168 阅读 · 0 评论