输出有向无环图的所有路径

Posted Blocking The Sky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输出有向无环图的所有路径相关的知识,希望对你有一定的参考价值。

class Solution {
public:
    void findpath(vector<vector<int>>& graph,int start,int end,vector<int>& path,vector<vector<int>>& allpath){
        path.push_back(start);
        if(start==end){
            allpath.push_back(path);
        }
        for(int i=0;i<graph[start].size();i++){
            findpath(graph,graph[start][i],end,path,allpath);
        }
        path.pop_back();
    }
    vector<vector<int>> allPathsSourceTarget(vector<vector<int>>& graph) {
        vector<int> path;
        vector<vector<int>> allpath;
        findpath(graph,0,graph.size()-1,path,allpath);
        return allpath;
    }
};

以上是关于输出有向无环图的所有路径的主要内容,如果未能解决你的问题,请参考以下文章

加权有向无环图的最长路径

数据结构-图有向无环图的应用

一个有向无环图的拓扑排序序列是唯一的么

有向无环图的判定及拓扑排序

算法:有向无环图的最短路径

有向无环图的哈希值