C++ 加权有向图

C++ 加权有向图,c++,graph,directed-graph,C++,Graph,Directed Graph,我试图在加权有向图()上实现递归深度优先遍历,但似乎我的输出始终处于关闭状态。如中所示,我获得了对节点的额外访问。这就是我目前正在处理的问题: 函数的参数是按值传递的;因此您的访问向量不会得到更新。另外,对其他向量使用按引用传递,以便每次递归调用都不会复制向量。函数的参数是按值传递的;因此您的访问向量不会得到更新。此外,使用通过引用传递其他向量,以便每次递归调用都不会复制向量 void Dfs( int u, vector<bool> visited, vector < ch

我试图在加权有向图()上实现递归深度优先遍历,但似乎我的输出始终处于关闭状态。如中所示,我获得了对节点的额外访问。这就是我目前正在处理的问题:


函数的参数是按值传递的;因此您的
访问向量
不会得到更新。另外,对其他向量使用按引用传递,以便每次递归调用都不会复制向量。

函数的参数是按值传递的;因此您的
访问向量
不会得到更新。此外,使用通过引用传递其他向量,以便每次递归调用都不会复制向量

void Dfs( int u, vector<bool> visited, vector < char > label, vector < vector < int > > adj)
{
visited[u] = true;
cout << label[u];

for ( int i = 0; i < (signed)visited.size(); i++)
    {
    if (visited[i] != true && adj[u][i] != 0)
            {
            cout << "->";
            Dfs( i, visited, label, adj);
            }
    }

}
  |  A  B  C  D  E
--|---------------
A |  -  -  -  6  -
B |  -  -  8  3  2
C |  -  8  -  7  -
D |  6  3  7  -  -
E |  -  2  -  -  -