Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang 检查路径是否存在相关的知识,希望对你有一定的参考价值。
func PathExists(path string) (bool, error) {
_, err := os.Stat(path)
if err != nil {
return true, nil
}
if os.IsNotExist(err) {
return false, nil
}
return false, nil
}
检查是否存在连接C ++中2个顶点的路径
HasPathvisited[i] = 1;
另外,不要忘记删除动态分配的内存(即使它在这里不重要。)
#include <iostream>
using namespace std;
bool HasPath(int V, int** edges, int* visited, int v1, int v2)
{
if (edges[v1][v2] == 1)
return true;
for (int i = 0; i<V; i++)
{
if (visited[i] != 1 && edges[v1][i] == 1)
{
visited[i] = 1;
if (HasPath(V, edges, visited, i, v2))
return true;
}
}
return false;
}
int main()
{
int V, E;
cin >> V >> E;
int** edges = new int*[V];
for (int i = 0; i<V; i++)
{
edges[i] = new int[V];
for (int j = 0; j<V; j++)
{
edges[i][j] = 0;
}
}
for (int i = 0; i<E; i++)
{
int f, s;
cin >> f >> s;
edges[f][s] = 1;
edges[s][f] = 1;
}
int* visited = new int[V];
for (int i = 0; i<V; i++)
visited[i] = 0;
int v1, v2;
cin >> v1 >> v2;
bool ans = HasPath(V, edges, visited, v1, v2);
cout << (ans == 1 ? "true" : "false");
for (int i = 0; i < V; i++)
delete[] edges[i];
delete[] edges;
delete[] visited;
return 0;
}
以上是关于golang 检查路径是否存在的主要内容,如果未能解决你的问题,请参考以下文章