![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习笔记-《算法设计》
文章平均质量分 79
莫扎特的代码
if you can't make it better,make it faster
展开
-
字符串匹配自动机
在长度为n的数组T[n]中查找一个长度为m的数组P[m],如果用朴素字符串匹配方法要用O(mn)的时间,用自动机匹配要O(n)的时间,但一般的自动机要O(ml)的时间(l为字符集的宽度),而KMP只要O(m)的预处理时间。其实最早接触字符串匹配自动机应该是在数字电路中的序列检测器那时候,序列检测器是用硬件区实现一个个状态的转换,这里和那儿是一个原理。主程序维持一个状态量mode是在读入某个字符原创 2013-03-11 21:33:45 · 850 阅读 · 0 评论 -
计算几何
把草稿纸上的集合体转变成代码其中还是有很多细节问题需要注意的,《算法导论》主要介绍了叉积在几何学中的应用。向量的两个运算点积与叉积,点积:ab = |a||b|cos 叉积:a x b = |a||b|sin,由于叉积的形式与面积公式相似,也常用于计算多边形的面积,同时如果a x b > 0则a 向量在b向量的顺时针方向上,利用这个性质,《算法导论》介绍了凸包的求解方法。HDU2036就是利用原创 2013-03-17 13:49:51 · 670 阅读 · 0 评论 -
八数码问题(HDU 1043)
#include#include#include#include#include#include#define INF 400000#define END 322560using namespace std;struct NODE{ int board[3][3]; int x,y; int h,g; in原创 2013-01-08 23:26:18 · 606 阅读 · 0 评论