Summary
文章平均质量分 52
--Simone-
这个作者很懒,什么都没留下…
展开
-
最大连续子序列和
rSum + a[i]; /* 与最大子序列和比较,更新最大子序列和 */ if (curSum > maxSum) maxSum = curSum; /* 动态规划部分,舍弃当前和为负的子序列 */ if (curSum < 0) curSum = 0; } printf("%d\n",maxSum); 2.含右边界的最大子序列和(就是说已知终点从后往前找原创 2013-08-02 17:59:11 · 44 阅读 · 0 评论 -
拓扑排序
就叫做是拓扑序列。 更专业的说法就是:由某个集合上的一个偏序得到该集合上的一个全序的操作。 而偏序和全序就是离散数学中的概念: 1.偏序:设A是一个非空集,P是A上的一个关系,若关系P是自反的、反对称的、和传递的,则称P是集合A上的偏序关系。 2.全序:在集合 A 中,存在偏序关系 R,如果对于任意 a∈A, b∈A, 有 aRb 或 bRa,即 A 中的每对元素都满足关系 R,则集合 A 上的偏序 R 是全序的或线性次序的。 2.注意点原创 2013-08-08 23:39:41 · 95 阅读 · 0 评论 -
邻接矩阵和邻接表
原创 2013-08-11 16:36:32 · 258 阅读 · 0 评论 -
堆(Heap)
原创 2013-08-11 21:48:08 · 102 阅读 · 0 评论 -
并查集
用问题中,我们需要划分n个不同的元素成若干组,每一组的元素构成一个集合。这种问题的一个解决办法是,在开始时,让每个元素自成一个单元素集合,然后按一定顺序将属于同一组的元素所在的集合合并。其间要反复用到查找一个元素在哪一个集合的运算。 常见两种操作: 将编号分别为1…N的N个对象划分为不相交集合,在每个集合中,选择其中某个元素代表所在集合。 1.合并两个集合 2.查找某元素属于哪个集合 进一步优化——路径压缩: 利用一个rank数组来存储集合的深度下界,在查找操作时进行路径原创 2013-08-15 14:38:28 · 40 阅读 · 0 评论 -
kruskal算法
原创 2013-08-19 09:29:23 · 61 阅读 · 0 评论