算法~摘要
dooder_daodao
这个作者很懒,什么都没留下…
展开
-
KMP算法详解(转)
KMP苦恼好久了>.http://www.matrix67.com/blog/archives/115 如果机房马上要关门了,或者你急着要和MM约会,请直接跳到第六个自然段。 我们这里说的KMP不是拿来放电影的(虽然我很喜欢这个软件),而是一种算法。KMP算法是拿来处理字符串匹配的。换句话说,给你两个字符串,你需要回答,B串是否是A串的子串(A串是否包含B串)。比如,字符串A="I'm matrix67",字符串B="matrix",我们就说B是A的子串。你可以委婉地问你的MM:“假如你要向你喜欢转载 2011-04-03 00:11:00 · 943 阅读 · 0 评论 -
Poj2187(最远点对距离)凸包+旋转卡壳
<br />题目链接:http://poj.org/problem?id=2187<br /> <br />题意:求出给定点集的最远点对距离<br /> <br />首先知道一点,最远点对一定是在这些点集构成的凸包的边上,所以可以先求出凸包,再枚举凸包上所有点对即可,用nlogn的时间求凸包,然后用k^2的时间求最远点对,另外还有一种较快方法可以求凸包上的最远点对,旋转卡壳法,就是找出可以刚好卡着凸包的两条平行线,然后对旋转,可以知道,最远点对一定在分这两条平行线上,旋转过程中求出最远的即可。<br />原创 2011-04-22 09:12:00 · 1580 阅读 · 0 评论 -
Poj1379(区域内距最近点最远的位置)模拟退火算法实现
<br />题目链接:http://poj.org/problem?id=1379<br /> <br /> <br />题意:给出指定的区域,及平面内的点集,求出一个该区域内到点集中所有点的最短距离最大的一个位置,点.<br /> <br />解题:三角剖分问题,可是对于没接触过三角剖分的我,当看到792行的网上找的代码时,当时那个感觉啊```,还好从Disscuss 上看到了可以用随 机化算法模拟退火来解决,下载了个PPT,想通了其中的环节~然后,决定今天把它敲出来,AC之,可敲出来之原创 2011-04-20 20:19:00 · 2175 阅读 · 7 评论 -
树状数组求区间最值(转载)
树状数组(Binary Index Tree)利用二进制的一些性质巧妙的划分区间,是一种编程,时间和空间上都十分理想的求区间和的算法,同样我们可以利用树状数组优美的区间划分方法来求一个序列的最值约定以 num[] 表示原数组, 以 idx[] 表示索引数组, Lowbit(x)转载 2011-07-25 19:24:05 · 2089 阅读 · 0 评论 -
Poj 2823 (单调队列)
题目链接:http://poj.org/problem?id=2823题意:给出一个数列,长度为n,然后有一个宽度为k的窗口自数列最左端开始滑动至其右边到达数列的最右端,要求出整个过程中,滑动窗口在每个位置内的最大值和最小值。 题目链接:http://poj.org/proble原创 2011-07-25 20:56:40 · 863 阅读 · 2 评论 -
Poj DancingLinks(3372 3074 3076)
好吧,趁热打铁,今天写了整天的Dancing Links,不过还老是出现种种错误~其中竟因为一个变量把整个十字链表给写成了一条长长的链了,竟然还能通过样例,TLE了好久才发现~ 三题中3372就是个模板题,不过是后来才发现有这么一个题的,先写的数独两个问题,原创 2011-08-03 20:11:15 · 893 阅读 · 2 评论