变量定义: sum[]:线段树节点对应区间的元素总和; addv[]:线段树节点对应区间的所有元素的待追加值(懒标记),初值全部设为0。 过程说明: 建树(Build): 若当前节点仅包含原序列中的一个值,即L=R,则直接赋值为序列中该值,否则递归建立左右子树后,将左右子树保存的sum值相加,即得到 ...
分类:
其他好文 时间:
2017-05-25 00:11:19
阅读次数:
238
对二叉查找树找到两个节点的最小公共祖先:可以根据二叉查找树的性质:左子树的节点值比根节点的值小,右子树的节点值比根节点值大 以下是二叉树节点的类的定义 ...
分类:
其他好文 时间:
2017-05-24 19:20:48
阅读次数:
166
题目链接 题意: n个节点,给定每一个节点的子树(包含自己)的节点个数。每一个节点假设有子节点必定大于等于2。求这种数是否存在 n (1?≤?n?≤?24). 分析: 用类似DP的思路,从已知開始。这题的已知显然是叶子,那么从叶子開始考虑。如今给一个节点,子树节点数为x。那么从叶子中找x-1个就可以 ...
分类:
其他好文 时间:
2017-05-24 19:18:45
阅读次数:
224
1. [代码]easyui的Tree节点JSON格式 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 [{ "id":1, "text":"Folder1", "icon ...
分类:
编程语言 时间:
2017-05-21 11:51:40
阅读次数:
495
AVL树节点声明: 1 struct AvlNode 2 { 3 Comparable element; 4 AvlNode *left; 5 AvlNode *right; 6 int height; 7 8 AvlNode( const Comparable & theElement,AvlNo ...
分类:
编程语言 时间:
2017-05-20 00:06:34
阅读次数:
186
ZOJ3949 题意很简单,给定一个树,节点1e+5 问增加一条根节点到任意点的边,使得所有点到根节点的距离和最小,求这个最小距离和。 当我们连接(1,x)时,距离会减小的点显然是1->x链上在中点之后子树。 怎样高效计算呢? 其实我们可以在dfs的同时维护根节点到当前节点x这条链的信息, 用当前节 ...
分类:
其他好文 时间:
2017-05-19 21:06:27
阅读次数:
102
今天在项目中遇到一个问题,需要根据数据库中记录的树结构节点id获取该记录所在目录节点的路径。 大致想法,首先定义变量保存当前路径,然后递归遍历该树节点,在遍历的过程中将遍历到的节点加入到当前路径中,找到该节点后终止递归,最后返回路径即可。 问题,怎样保存当前判断节点的路径以及未找到节点时对路径的处理 ...
分类:
Web程序 时间:
2017-05-18 17:28:06
阅读次数:
313
如果需要定位某个XML文档中的一段特定信息,那么通过遍历DOM 树的众多节点来进行行查找显得有些麻烦,XPath语言使得访问树节点变得很容易,例如,下面的XML文档结构: Helv... ...
分类:
其他好文 时间:
2017-05-18 01:20:17
阅读次数:
289
1. 节点个数 2. 叶子个数 3. 第K层节点个数 4. 二叉树的最低公共节点,判断节点在左右两侧,则根节点(可能为子树根)为最小公共节点,否则在左子树或右子树中递归查找公共节点 ...
分类:
其他好文 时间:
2017-05-18 01:15:16
阅读次数:
180
题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 基本思路 在后序遍历得到的序列中,最后一个数字是树的根节点的值。数组中前面的数字可以分为两部分:第一部分是左子树节点的值,它们都比根节点的值小;第二部 ...
分类:
其他好文 时间:
2017-05-14 13:52:40
阅读次数:
178