算法总结
文章平均质量分 84
zxc106
这个作者很懒,什么都没留下…
展开
-
整数划分问题
所谓整数划分,是指把一个正整数n写成如下形式: n=m1+m2+...+mi; (其中mi为正整数,并且1 如果{m1,m2,...,mi}中的最大值不超过m,即max(m1,m2,...,mi) 例如但n=4时,他有5个划分,{4},{3,1},{2,2},{2,1,1},{1,1,1,1}; 注意4=1+3 和 4=3+1被认原创 2014-06-04 17:06:36 · 2381 阅读 · 1 评论 -
STL 优先队列(队列+栈) 转载
STL之优先队列原本以为priority_queue很简单,才知道原来懂的只是最简单的形式。头文件:#include优先队列,也就是原来我们学过的堆,按照自己定义的优先级出队时。默认情况下底层是以Vector实现的heap。既然是队列,也就只有入队、出队、判空、大小的操作,并不具备查找功能。函数列表:empty() 如果优先队列为空,则返回真 pop() 删除第转载 2014-08-25 20:24:38 · 544 阅读 · 0 评论 -
STL MAP用法详解
说明:如果你具备一定的C++ template知识,即使你没有接触过STL,这个文章你也应该可能较轻易的看懂。本人水平有限,不当之处,望大家辅正。 一.Map概述 Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里转载 2014-08-25 13:28:30 · 292 阅读 · 0 评论 -
KMP与最小覆盖子串
转载地址:http://blog.csdn.net/fjsd155/article/details/6866991转载 2014-07-14 16:44:12 · 339 阅读 · 0 评论 -
同余定理
声明http://www.cnblogs.com/zhixingqiezhixing/archive/2012/04/03/2430676.html转载 2014-07-13 14:36:08 · 1087 阅读 · 0 评论 -
RMQ算法
1. 概述RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j当然,该问题也可以用线段树(也叫区间树)解决,算法复杂度为:O(N)~O(logN),这里我们暂不介绍。2.RMQ算法对于该问题,最容易想到的解决方案是遍历,复杂度是O(n)。但当数据量非常大转载 2014-07-25 16:46:23 · 359 阅读 · 0 评论 -
二分图最大匹配总结
二分图指的是这样一种图,其所有顶点可以分成两个集合X和Y,其中X或Y中任意两个在同一集合中的点都不相连,所有的边关联在两个顶点中,恰好一个属于集合X,另一个属于集合Y。给定一个二分图G,M为G边集的一个子集,如果M满足当中的任意两条边都不依附于同一个顶点,则称M是一个匹配。图中包含边数最多的匹配称为图的最大匹配。 二分图的最大匹配有两种求法,第一种是最大流;第二种就是我现在要讲的匈牙利转载 2014-07-20 16:02:25 · 445 阅读 · 0 评论 -
KMP算法详细讲解
其实KMP的思想早就知道了,也有一些体会。但是让我转载 2014-07-21 09:40:57 · 423 阅读 · 0 评论 -
C++中的数学函数汇总
math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:1 三角函数double sin (double);double cos (double);double tan (double);2 反三角函数double asin (double); 结果介于[-PI/2, PI/2]double acos (double); 结果介于[0, PI原创 2014-07-15 23:12:00 · 411 阅读 · 0 评论 -
STL heap 转载
原文出自: http://blog.csdn.net/morewindows/article/details/6967409 下面再介绍STL中与堆相关的4个函数——建立堆make_heap(),在堆中添加数据push_heap(),在堆中删除数据pop_heap()和堆排序sort_heap():头文件 #include 下面的_First与_Last为可以随转载 2014-08-25 21:13:07 · 379 阅读 · 0 评论