int optvalue;
vector<int>pre[MAXV];
vector<int>path,tempPath;
void DFS(int v){
if(v==st){
tempPath.push_back(v);
int value;
if(value优于optvalue){
optvalue=value;
path=tempPath;
}
tempPath.pop_back();
return;
}
tempPath.push_back(v);
for(int i=0;i<pre[v].size();i++){
DFS(pre[v][i]);
}
tempPath.pop_back()
}
用Dijkstra+DFS算法求pre数组
最新推荐文章于 2025-11-24 22:40:12 发布
本文介绍了一种使用深度优先搜索(DFS)算法在给定图中寻找从起点到终点路径,并优化价值的过程。通过递归遍历节点,当遇到起点时开始记录路径,若发现当前路径的价值优于已知最优解,就更新optvalue和path。
277

被折叠的 条评论
为什么被折叠?



