114. 二叉树展开为链表 给定一个二叉树,原地将它展开为一个单链表。 例如,给定二叉树 1 / \ 2 5 / \ \ 3 4 6 将其展开为: 1 \ 2 \ 3 \ 4 \ 5 \ 6 方法一:递归先序遍历保存进List public void flatten(TreeNode root) { ...
分类:
其他好文 时间:
2021-01-19 11:40:59
阅读次数:
0
617. 合并二叉树 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。 示例 1: 输入: Tree 1 ...
分类:
其他好文 时间:
2021-01-18 11:42:52
阅读次数:
0
此篇博客主要记录使用递归求解的树相关的算法题。 一、二叉树的最大深度 104. 给定一个二叉树,找出其最大深度。 (easy) 2021-01-13 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例:给定二叉树 [3,9,20,null,null ...
分类:
其他好文 时间:
2021-01-15 12:07:22
阅读次数:
0
树的构造 class TreeNode: def __init__(self,val,left=None,right=None): self.val=val self.left=left self.right=right t7 = TreeNode(7) t6 = TreeNode(6) t5 = ...
分类:
其他好文 时间:
2021-01-14 11:27:23
阅读次数:
0
题目 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8, 1 ...
分类:
编程语言 时间:
2021-01-14 10:57:46
阅读次数:
0
13分钟内递归一次性解出 思路如下: class Solution { public boolean isSymmetric(TreeNode root) { //注意可能为null if(root==null) {return true;} return mirrorTree(root.left, ...
分类:
其他好文 时间:
2021-01-14 10:53:52
阅读次数:
0
合并二叉树 题目 leetcode原题:617. 合并二叉树 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的 ...
分类:
编程语言 时间:
2021-01-13 11:33:00
阅读次数:
0
题目 1 class Solution { 2 public: 3 vector<double>ans; 4 vector<double> averageOfLevels(TreeNode* root) { 5 if(!root) return ans; 6 queue<TreeNode*>q; 7 ...
分类:
其他好文 时间:
2021-01-13 10:58:14
阅读次数:
0
题目 本题目一开始想要通过二叉树遍历KMP匹配,但看来实现比较复杂 不如直接暴力匹配,本题和LeetCode100.相同的树有共通之处 1 class Solution { 2 public: 3 bool isSubtree(TreeNode* s, TreeNode* t) { 4 if(!s ...
分类:
其他好文 时间:
2021-01-12 11:17:21
阅读次数:
0
这几天面试老是遇到二叉树遍历问题,之前没怎么吃透,这次尝试好好啃一下,在这记录下这次学习的过程 二叉树的定义 首先我们先来看二叉树的口述定义 二叉树是树的叶子节点的数量不大于2的树 我们就随便再看看树的口述定义 ? 树是 N (N >= 0 )个结点的有限集合,N = 0 时,称为空树,这是一种特殊 ...
分类:
编程语言 时间:
2021-01-12 10:42:55
阅读次数:
0