实现很简单,直接上代码: 1 void
CCheckBoxTreeDlg::OnNMClickTree1(NMHDR *pNMHDR, LRESULT *pResult) 2 { 3 // TODO:
在此添加控件通知处理程序代码 4 CPoint point; 5 UINT...
分类:
其他好文 时间:
2014-05-12 11:07:03
阅读次数:
297
题目链接:10253 - Series-Parallel Networks
白书的例题。
这题也是需要把问题进行转化,一个并联可以分为几个串联,然后串联可以分成边。
如此一来,最后叶子结点种数会是n,问题转化为去分配叶子结点,使得总和为n。
书上有两种方法,一种直接去递归,利用组合数学的方式去计算答案。
一种是推出递推式:
设dp[i][j]为一共j个叶子结点的树,子树的叶子最多的为i...
分类:
Web程序 时间:
2014-05-12 06:22:04
阅读次数:
447
import java.util.Iterator;
import java.util.Scanner;
public class Stack implements Iterable {
private Node first;// 栈顶
private int N;// 元素数量
// 定义结点的嵌套类
private class Node{
Item item;
Node nex...
分类:
其他好文 时间:
2014-05-11 13:20:22
阅读次数:
257
给你几个(<=100)小岛的坐标,然后你把所有的岛都修上桥连接起来,求最小花费,还有个附加的限制:只有岛之间的距离大于等于10,或小于等于1000时才能修桥。
很明显这是一道MST(最小生成树)的题目.最小生成树的常用算法有两个kruskal和prim算法。一言以蔽之,两者的不同之处在于:kruskal----归并边;prim----归并点。我用离散数学来描述一下。
设有图G=(V,E),所有的结点集合为V,另有一空集合U。基本思路是:
先随意确定一个起点。
设此点为v,加入集合U中。
...
分类:
其他好文 时间:
2014-05-10 04:23:55
阅读次数:
334
使用 LINQ to XML
LINQ to XML 的目标是提供 XML 对象模型,能够很好地以LINQ 的函数风格进行编程。表 9-4 汇总了这个命名空间中的重要类。
表 9-4 由 LINQ to XML 提供的类
类名
父类
描述
XNode
这个类提供了应用于 XML 文档中的所有结点的基础功...
分类:
其他好文 时间:
2014-05-10 03:48:48
阅读次数:
286
相关性质 可查看维基百科"二叉查找树"关键性质:设root为二叉查找树的结点
如果a是root的左结点 key[a] 2 #include 3 using namespace std; 4 /*二叉查找树*/ 5
/*实现中假设关键元素互不相同*/ 6 typedef i...
分类:
其他好文 时间:
2014-05-10 02:28:24
阅读次数:
630
B树即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right);
2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;如:
B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比结点关键字...
分类:
其他好文 时间:
2014-05-09 05:44:56
阅读次数:
275
堆的删除
按定义,堆中每次都只能删除第0个数据。为了便于重建堆,实际的操作是将最后一个数据的值赋给根结点,然后再从根结点开始进行一次从上向下的调整。调整时先在左右儿子结点中找最小的,如果父结点比这个最小的子结点还小说明不需要调整了,反之将父结点和它交换后再考虑后面的结点。相当于从根结点将一个数据的“下沉”过程。
堆的插入
每次插入都是将新数据放在数组最后。可以发现从这个新...
分类:
其他好文 时间:
2014-05-09 02:16:57
阅读次数:
255
题意:题目给出一个有向图 , 找若干个圈,使得每个结点切好属于一个圈,并且所有圈的总长度最小 , 如果没有满足条件的就输出 'N‘ 。
注意:1、有重边
2、如果有向边(u , v) , (v , u)都存在 , 它们的长度不一定相同。
解法: 刚看这个题目的时候,没有什么思路,知道是用二分匹配之后就更没思路了。这题的关键还是在于构图:
每个点分成入度点和出度点两个点,然后...
分类:
其他好文 时间:
2014-05-08 11:13:24
阅读次数:
308
线段树练习飘逸的写法,自从自己改成这种写法之后,线段树就没再练过,现在终于练得上了。
因为这里查询只是查询了叶子结点,所以pushUp函数就用不上了,不过我没去掉之前是3ms,去掉之后反而变成4ms了,搞不懂怎么原因,没用到,去掉之后应该更快才对啊,竟然变慢了,真搞不明白?
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-05-08 05:50:29
阅读次数:
240