题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1520
题目大意:给定一棵关系树,每个节点有个权值,子节点和父节点不能同时选,问最后能选的最大价值是多少?
解题思路:树形DP入门题。由于子节点与父节点不能同时选,有人可能会用贪心思想,二者选其一肯定最优。其实不然,有可能父节点和子节点都不选,而要选子孙节点。不过只要再往深点想下,就可以得出...
分类:
其他好文 时间:
2014-06-05 07:40:29
阅读次数:
255
Cocos2d-x 3.final Node节点分析
1。每个Node都有绘图的基本属性,如锚点,坐标,尺寸,透明度等。
2。每个Node都有变换的属性,如缩放、扭曲、旋转等。
3。每个Node都有摄像机属性(因为Cocos2d-x所有Node都是3D图形的2D投影,一些变换和特效实际上是改变了摄影机的位置);
4。每个Node都可以有子节点管理方法,如添加子节点,删除子节点,获取所有子节点,当前节点的tag(每个Node都是一颗树,你懂的....)
5。每个Node都有任务管理,如Schedule计划任务...
分类:
其他好文 时间:
2014-06-05 06:21:41
阅读次数:
209
穷举:生成所有候选解,然后找出需要的解。
回溯:把解表示成向量,每个分量取自一个有限集合。从部分解开始,每次添加解的一个分量,然后判断如果有可能扩展成完整解则递归下去,否则换成下一个。可以看做是隐式图上的深度优先搜索。
回溯/穷举的复杂度,最坏时和后者一样,通常情形因为不必遍历所有子节点,还是比较快的。
回溯框架:
backtrack(a[], k)
if a[0,...,k] i...
分类:
编程语言 时间:
2014-06-05 02:39:10
阅读次数:
246
字典树的删除操作:
1 没找到直接返回
2 找到叶子节点的时候,叶子节点的count标志清零,代表不是叶子节点了
3 如果当前节点没有其他孩子节点的时候,可以删除这个节点
判断是否需是叶子节点,就检查叶子节点的count标志就可以了。
判断是否有其他孩子节点就需要循环26个节点了,如果都为空,那么就没有其他孩子节点了。
#include
#include
#include ...
分类:
其他好文 时间:
2014-06-03 00:49:49
阅读次数:
279
树形DP问题。定义:1.dp[u][1]表示u这个点设立糖果发放点且u这棵子树满足条件时的最少糖果点数2.dp[u][0]表示u这个点不设立发放点且u这棵子树满足条件时的最少糖果点数设v1,v2……vn为u的子节点,则转移方程:dp[u][1]=
sum(min(dp[vi][1],dp[vi][0...
分类:
其他好文 时间:
2014-06-02 20:35:30
阅读次数:
262
赫夫曼树:
假设有n个权值{w1,w2,w3....},试构造一棵具有n个叶子节点的二叉树,每个叶子节点带权为wi,则其中带权路径长度最小的二叉树称为最优二叉树或者叫赫夫曼树。
构造赫夫曼树:
假设有n个权值,则构造出的赫夫曼树有n个叶子节点,n个权值分别设置为w1,w2,....wn,则赫夫曼树的构造规则为:
1.将w1,w2...看成是有n棵树的森林;
2.在森林...
分类:
其他好文 时间:
2014-06-02 18:54:17
阅读次数:
363
子类的position:absoulte;父类元素只有相对定位后,移动位置,子类才能跟着移动
子节点 firstChild firstElementChild lastChild last...
分类:
编程语言 时间:
2014-06-02 01:39:07
阅读次数:
308
今天总结一下二叉树,要考离散了,求不挂!二叉树最重要的就是 建立、4种遍历方式,简单应用
二叉树分为 :1、完全二叉树 2、满二叉树
结构性质:
1).满二叉树 高度为h ,节点数则为 2^h - 1,且叶子节点全在最下层,且叶子节点数为2^(n-1)个{n代表二叉树层数,也叫深度}
2).n个节点的 完全二叉树 深度为 int(log2n)(以2为底n的对数...
分类:
其他好文 时间:
2014-06-01 17:18:03
阅读次数:
549
剪枝的概念极大极小过程是先生成与/或树,然后再计算各节点的估值,这种生成节点和计算估值相分离的方式,需生成规定深度内的所有节点,搜索效率较低。
如果能边生成节点边对节点估值,并剪去一些没用的分枝,这种技术被称为α-β剪枝。剪枝方法(1) MAX节点(或节点)的α值为当前子节点的最大到推值;(2)
M...
分类:
其他好文 时间:
2014-06-01 12:32:00
阅读次数:
552
Splay树的插入操作,只需要处理好插入节点的孩子节点就可以了,最重要的是不要破坏了BST的基本规则。
因为高度并不是Splay树的首要因素,所以插入的时候也是使用splay操作,然后在根节点插入。
参考:http://www.geeksforgeeks.org/splay-tree-set-2-insert-delete/
对比一下使用插入创建的树和手工创建数的区别,先序遍历的结果...
分类:
其他好文 时间:
2014-05-31 21:47:50
阅读次数:
320