Я пытаюсь получить упорядоченные вершины из графа с помощью DFS, но я не могу упорядочить его, используя его, только предварительный и пост-порядок. Мне удалось извлечь их из графа с помощью DFS
это мой код DFS
void DFSUtil(int v, bool visited[], vector<int> &result)
{
visited[v] = true;
// pre_order
result.push_back(v);
vector<int>::iterator i;
for (i = adj[v].begin(); i != adj[v].end(); i++)
if (!visited[*i])
{
DFSUtil(*i, visited,result);
}
//post order
post_order.push_back(v);
}
vector<int> DFS(int v)
{
bool *visited = new bool[V];
for (int i = 0; i < V; i++)
visited[i] = false;
vector<int> result;
post_order.clear();
DFSUtil(v, visited,result);
delete [] visited;
return result;
}
есть ли способ получить заказ из DFS или извлечь его с помощью и публикации и предварительного заказа?