杂谈
文章平均质量分 78
Stand_over_sun
这个作者很懒,什么都没留下…
展开
-
ACM总结——最长公共子序列 & 最长不减(不增)子序列
ACM总结——最长公共子序列 & 最长不减(不增)子序列两个经典DP一、最长公共子序列(Longest Common Subsequence:LCS)设有两个序列A[1...m]和B[1...n],分别对A和B进行划分子序列A[1] A[1..2] A[1..3] ... A[1..m]B[1] B[1..2] B[1..3] ... B[1..n]依次求出A中转载 2012-10-15 09:21:36 · 697 阅读 · 0 评论 -
最小生成树,Prim,Kruskal算法主要思想,证明及C++实现
最小生成树:任何只由G的边构成,并包含G的所有顶点的树称为G的生成树(G连通).加权无向图G的生成树的代价是该生成树的所有边的代码(权)的和.最小代价生成树是其所有生成树中代价最小的生成树。实现最小生成树的算法常用的是Prim,Kruskal学校数据结构的书上讲解了这两大算法的思路及用C++实现,但关于其合理性的证明却略过去了,这里主要加上我自己的一些总结,证明一下,最后写个模版用。P原创 2012-11-24 22:00:07 · 9252 阅读 · 1 评论 -
数据结构实验,哈夫曼编码/译码系统
1. 实验名称: 二叉树的基本操作及哈夫曼编码译码系统的实现 2.实验目的:创建一棵二叉树,实现先序、中序和后序遍历一棵二叉树,计算二叉树结点个数等操作。哈夫曼编码/译码系统。 3. 实验任务: 能成功演示二叉树的有关运算,运算完毕后能成功释放二叉树所有结点占用的系统内存。 4. 实验内容 (1)在二叉链表上实现二叉树运算a) 设原创 2012-11-02 22:45:55 · 10261 阅读 · 1 评论 -
ACM位运算,被鄙视了。。。总结
运算方法有六种:& 与运算 | 或运算 ^ 异或运算 ~ 非运算(求补) >> 右移运算 运用这些基本的运算,我们可以解决acm所需的各种运算,给Bit赋1,赋0,给他的值取反,还有好多段操作。如下:功能 | 示例 | 位运算----------------------+---------------------------+------------------转载 2012-10-17 21:47:51 · 910 阅读 · 1 评论 -
POJ水题总结
1000 纯属适应题1003 做的时候花了很久,现在看好像也不难1004 适应题,求下平均就行1005 要读懂题就行1007 逆序数,discuss方法1046 全部暴搜一遍。。1118 照抄2606没看题。。WA。。RE全占了1207 貌似我的方法超级麻烦 1247 读懂题目比较麻烦1248 暴力过的。。1250 一整个晚上整这一道题转载 2012-10-15 09:27:11 · 498 阅读 · 0 评论 -
平面空间的分割问题总结
(1) n条直线最多分平面问题 题目大致如:n条直线,最多可以把平面分为多少个区域。 分析:可能你以前就见过这题目,这充其量是一道初中的思考题。但一个类型的题目还是从简单的入手,才容易发现规律。当有n-1条直线时,平面最多被分成了f(n-1)个区域。则第n条直线要是切成的区域数最多,就必须与每条直线相交且不能有同一交点。这样就会得到n-1个交点。这些交点将第n条直线分为转载 2012-10-15 09:22:18 · 604 阅读 · 0 评论 -
杭电OJ题目分类
杭电OJ题目分类 1001 入门1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最近点对问题,用分治 1008 简单题 1009 贪心 1010 搜索题,剪枝很关键 1011转载 2012-10-15 09:22:01 · 478 阅读 · 0 评论 -
C++文件读写总结,做USACO碰到问题,找到一篇比较全面的
在C++中如何实现文件的读写?一、ASCII 输出为了使用下面的方法, 你必须包含头文件(译者注:在标准C++中,已经使用取代,所有的C++标准头文件都是无后缀的。)。这是 的一个扩展集, 提供有缓冲的文件输入输出操作. 事实上, 已经被包含了, 所以你不必包含所有这两个文件, 如果你想显式包含他们,那随便你。我们从文件操作类的设计开始, 我会讲解如何进行ASCII I/O操作。转载 2012-12-14 20:17:11 · 1416 阅读 · 0 评论