原题链接 题意:给出一棵树,边权全为 \(1\),要求出所有的距离为 \(k\) 的点对。 题解:暴力树上 \(dp\) 真的没想到,\(dp_{i,j}\) 代表的是距离 \(i\) 点的距离为 \(k\) 的点对数量。 代码: #include <iostream> #include <bits ...
分类:
其他好文 时间:
2021-05-24 08:40:27
阅读次数:
0
给定一棵包含 nn 个节点的有根无向树,节点编号互不相同,但不一定是 1~n。 有 m 个询问,每个询问给出了一对节点的编号 x 和 y,询问 x 与 y 的祖孙关系。 输入格式 输入第一行包括一个整数 表示节点个数; 接下来 n 行每行一对整数 a 和 b,表示 a 和 b 之间有一条无向边。如果 ...
分类:
其他好文 时间:
2021-05-24 08:31:37
阅读次数:
0
\(\text{Problem}:\)【UER #4】被删除的黑白树 \(\text{Solution}:\) 等价于白点数量最少。 假设初始所有点都是黑色的,现在要选择一些点使其变为白色,可以贪心考虑: 原树深度最小的叶子结点到根路径上的点全是黑色。 使得深度更小的结点变为白色。 对于第一点,若不 ...
分类:
其他好文 时间:
2021-05-24 08:22:10
阅读次数:
0
检查子树。你有两棵非常大的二叉树:T1,有几万个节点;T2,有几万个节点。设计一个算法,判断 T2 是否为 T1 的子树。 如果 T1 有这么一个节点 n,其子树与 T2 一模一样,则 T2 为 T1 的子树,也就是说,从节点 n 处把树砍断,得到的树与 T2 完全相同。 注意:此题相对书上原题略有 ...
分类:
其他好文 时间:
2021-05-24 07:55:54
阅读次数:
0
请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。 例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果: [ [3], [2 ...
分类:
其他好文 时间:
2021-05-24 07:46:56
阅读次数:
0
1.源程序:输入给编译器的其实就是字符串 2.词法分析:预处理:删除无用的空白字符、回车符及其他非实质性字符和注释 3.语法分析:根据语言的语法规则(由单词/符号构成语法成分的规则),将单词/符号序 列分解成各类语法成分,如表达式、语句、函数和程序等。语法树、中序遍历。 4.语义分析:语法正确的程序 ...
分类:
其他好文 时间:
2021-05-24 07:44:42
阅读次数:
0
概念 一棵二叉树由根结点、左子树和右子树三部分组成,若规定 D、L、R 分别代表遍历根结点、遍历左子树、遍历右子树,则二叉树的遍历方式有 6 种:DLR、DRL、LDR、LRD、RDL、RLD。由于先遍历左子树和先遍历右子树在算法设计上没有本质区别,所以,只讨论三种方式: DLR--前序遍历(根在前 ...
分类:
其他好文 时间:
2021-05-24 07:30:52
阅读次数:
0
给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。 示例 1: 输入: 3 / \ 9 20 / \ 15 7输出:[3, 14.5, 11]解释:第 0 层的平均值是 3 , 第1层是 14.5 , 第2层是 11 。因此返回 [3, 14.5, 11] 。 提示: 节点值的范围在32位有 ...
分类:
其他好文 时间:
2021-05-24 06:31:03
阅读次数:
0
一、双亲表示法: 以一组连续空间存储树的结点,同时在每个结点中,附设一个指示其双亲结点位置的指针域。也就是说每个结点除知道自己外还知道它的双钱在哪儿。它的结点结构如图所示: data是数据域,存储结点的数据信息。parent是指针域存储该结点的双亲在数组中的下标。 双亲表示法结点结构定义代码: // ...
分类:
其他好文 时间:
2021-05-24 06:09:18
阅读次数:
0
给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树。s 的一个子树包括 s 的一个节点和这个节点的所有子孙。s 也可以看做它自身的一棵子树。 示例 1:给定的树 s: 3 / \ 4 5 / \ 1 2给定的树 t: 4 / \ 1 2返回 true,因为 t 与 ...
分类:
其他好文 时间:
2021-05-24 05:46:08
阅读次数:
0