摘要: 概念 \(\text{KMP}\) 算法,又称模式匹配算法,能够在 \(O(n+m)\) 的时间复杂度内求解如下的问题: 有两个字符串 \(p[n]\) 、\(s[m]\) ,称字符串 \(p\) 为模式串、字符串 \(s\) 为文本串。要求判断模式串 \(p\) 是否为文本串 \(s\) 的子串, 阅读全文
posted @ 2020-11-21 15:29 kebingyi 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 多源最短路问题 给定一张 \(n\) 个点的有向图,要求出任意两点间的最短路。 算法简介 这是一个基于动态规划思想的最短路算法,它可以求解多源最短路问题。 时间复杂度为 \(O(n^3)\) 算法流程 设 \(dis[k][i][j]\) 表示从 \(i\) 到 \(j\) ,只经过 \(1,2,. 阅读全文
posted @ 2020-11-21 15:16 kebingyi 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 单源最短路问题 给定一张 \(n\) 个点的有向图,边权均为正数。给定起点 \(st\) ,要求出 \(st\) 到其他所有点的最短路。 算法简介 \(\text{Dijkstra}\) 算法是典型的单源最短路径算法,朴素算法的时间复杂度为 \(O(n^2)\) ,加上堆优化后可以达到 \(O((n 阅读全文
posted @ 2020-11-21 14:49 kebingyi 阅读(349) 评论(0) 推荐(0) 编辑