算法设计与分析
weixin_46037224
这个作者很懒,什么都没留下…
展开
-
【算法设计与分析】3.单源最短路径
void Dijkstra(int n,int v,Type dist[],int prev[],Type **c){ //顶点数,起始点,最短路径数组,连着的前一个点的数组,邻接矩阵 bool s[n+1];//s标记有无进入最短路径 for(int i=1;i<=n;i++){//初始化,得到起点v到其他各点的距离 dist[i]=c[v][i]; ...原创 2019-12-20 23:00:53 · 548 阅读 · 0 评论 -
【算法设计与分析】2.最长公共子序列
有序列X={x1,x2,…xm}和Y={y1,y2,…yn},找出它们的最长公共子序列。可以按以下方式递归进行:当xm=yn时,找出Xm-1与Yn-1的最长公共子序列,然后在尾部加上xm(xm=yn),即可得X与Y的最长公共子序列。当xm不等于yn时,必须解两个子问题,即找出Xm-1与Y的最长公共子序列及X与Yn-1的最长公共子序列,这两个公共子序列较长者即为X与Y的最长公共子序列。 void L...原创 2019-12-19 14:11:40 · 389 阅读 · 0 评论 -
【算法设计与分析】1.主定理
1.主定理内容 定理:设a >= 1, b>1为常数, f(n)为函数, T(n) 为非负整数,且T(n)=aT(n/b)+f(n) 2. 主定理的应用 例1:T(n) = 9T(n/3) + n 上述递推方程中: a = 9, b = 3,f (n) = n 相当于主定理的case1,其中ξ =1. 根据定理得到 T(n) = Θ(n*n) 例2:T(n) = T(2n/3) + 1...原创 2019-12-17 08:50:07 · 2347 阅读 · 0 评论