1

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) から最も遠い頂点でなければならず、結果はパスの長さでなければなりません。

4

1 に答える 1

0

int result[n]その最大変数を使用して出力できます...

于 2013-10-30T18:30:04.553 に答える