摘要:
prime O(n^2) 从一点开始选择距离最小的点扩大集合U至整个图G,维护距离数组表示未加入集合的点到集合的最小距离 /* d[N]距离数组 vis[N]是否加入集合 */ d[1] = 0;//从点1开始 int ans = 0; int flag = 1;//图是否联通 for (int i
阅读全文
posted @ 2025-11-14 18:57
Radarman108
阅读(5)
推荐(0)
摘要:
处理多组图时 vector<pair<int,int>>e[N]需要在每次新建图时清空 /* 错误操作: */ e.clear(); /* 正确操作: */ for(int i=1;i<=n;i++){ e[i].clear(); }
阅读全文
posted @ 2025-11-08 17:41
Radarman108
阅读(2)
推荐(0)
摘要:
tarjan /* dfs1 dep[N] siz[N] son[N] fa[N] dfs2 top[N] */ node* tarjan(node* a, node* b) { if (top[a] == NULL || top[b] == NULL)return NULL; while (top
阅读全文
posted @ 2025-11-07 19:04
Radarman108
阅读(5)
推荐(0)
摘要:
dijkstra 单源最短路 O(mn) O(mlogn)优先队列优化 理解:点与源最近的距离等于直接边权或中转后和距离 贪心思路-选择已探明的点中距离最小的点 只有从距离最小的点中转的点距离才会最小 /* 数据存储形式 带权邻接表 vector<pair<int, int>>e[N]; 辅助数组
阅读全文
posted @ 2025-11-07 14:41
Radarman108
阅读(3)
推荐(0)
摘要:
中序遍历非递归算法 int main(){ }
阅读全文
posted @ 2025-10-11 19:50
Radarman108
阅读(5)
推荐(0)
摘要:
模式匹配 KMP 思想: 当匹配到模式串p第j个元素 p0[j]!=p[i] 可知p0(j-h,j-h+1,j-h+2...j-1)与p(i-h,i-h+1..i-1)相同 由于根据模式串自身前后缀性质 显然当模式串滑动1,2...个元素时不可能与自身匹配成功 也就不能与目标串匹配成功 故要找出最大
阅读全文
posted @ 2025-09-24 20:25
Radarman108
阅读(4)
推荐(0)