class Solution {
public:
vector<vector<int>> ret;
void dfs(vector<vector<int>>& graph,int idx,vector<int> path)
{
if(idx==graph.size()-1)
{
path.insert(path.begin(),0);
ret.push_back(path);
return;
}
for(int j = 0;j<graph[idx].size();j++)
{
path.push_back(graph[idx][j]);
dfs(graph,graph[idx][j],path);
path.pop_back();
}
}
vector<vector<int>> allPathsSourceTarget(vector<vector<int>>& graph)
{
vector<int> path;
dfs(graph,0,path);
return ret;
}
};
个人做法,非标准答案