繁体   English   中英

如何使用dfs O(n)打印图形的MaxPath?

[英]How to print MaxPath of graph using dfs O(n)?

我们想要找到最远的顶点到第i个顶点,

到图的当前顶点的最远顶点,为我们提供了最大路径。

请帮助我解决这个问题:

vector<int> v[100];
bool mark[100];
int v1;

inline int max_path(int k)
{
    int result = -1;
    mark[k] = true;
    for(int i=0; i<v[k].size(); i++)
        if(!mark[v[k][i]])
        {
            int x = max_path(v[k][i]);
            if(x > result)
            {
                result = x;
                v1 = v[k][i];
            }
        }
    return result+1;
}

v1必须是距离当前顶点(k)最远的顶点,并且结果必须是路径的长度。

您可以使用int result[n] ,然后打印该int result[n]的最大变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM