Algorithm
文章平均质量分 60
Kallen
这个作者很懒,什么都没留下…
展开
-
The Proof of Correctness of Prim's Algorithm
Let P be a connected, weighted graph.At every iteration of Prim's algorithm, an edge must be found that connects a vertex in a subgraph to a vertex outside the subgraph. Since P is翻译 2012-05-28 22:08:19 · 994 阅读 · 0 评论 -
Kruskal Algorithm for Minimum Spanning Tree
#include#include#include#include#includeusing namespace std;int father[10005], Enums, Count;double MinL;struct Point{ int begin; int end; double Dis;}P[10005];int Find(int k){ return f原创 2012-05-26 08:25:00 · 894 阅读 · 0 评论 -
模式匹配算法
#include #include int index_KMP(char *s,char *t,int pos);void get_next(char *t,int *); char s[10]="abcacbcba";char t[4]="bca";int next[4];int pos=0;int main(){ int n; get_next(t,n原创 2012-04-13 12:59:08 · 979 阅读 · 0 评论 -
最小生成树之Prim算法
Prim算法用于求无向图的最小生成树 设图G =(V,E),其生成树的顶点集合为U。 ①、把v0放入U。 ②、在所有u∈U,v∈V-U的边(u,v)∈E中找一条最小权值的边,加入生成树。 ③、把②找到的边的v加入U集合。如果U集合已有n个元素,则结束,否则继续执行②。 其算法的时间复杂度为O(n^2) Prim算法实现: (1)原创 2011-12-20 13:52:32 · 831 阅读 · 0 评论 -
括号配对算法
#include#include#include#includetypedef char ElemType;typedef struct stack{ ElemType data; struct stack *top;}LinkStack;int InitStack(LinkStack *&ls){ ls=NULL; return 1;}int ClearStack(原创 2012-03-28 12:32:25 · 1185 阅读 · 1 评论 -
何谓算法
之前反复说过,要处理的数据越大,算法和数据结构的选择对速度的影响也就越大。首先看个简单的例子。假设要从数据中使用线性查找(Linear Search),从头开始依次查找所需数据,那么如果有1000条数据,那就需要反复查找数据直至找到为止,这个算法最多要进行1000次查找。对于n条数据要进行n次搜索,因此称为O(n)算法。而“二分查找”(binary search)算法能在log n次之内查找n原创 2011-12-12 09:28:05 · 1491 阅读 · 1 评论