# Learn Algorithms from LeetCode - 119 (0797. All Paths From Source to Target(Medium))

## Categories: Graph/DFS, Level: Medium

Introduction: (Basic + Advanced + Interview Edition)
Learning Algorithms from LeetCode + Interview Success Guide
(Regular price: 3591 NTD, Discounted price until 2023/06/30 23:59)
https://hiskio.com/bundles/eCP23B397?s=tc

(Regular price: 3990 NTD, Valid for a long term)
https://bit.ly/lc2022all

Please help me click on the “SHOW EMBED” below and give it 5 likes~ If you like it, you can also give me a round of applause~
(Liking doesn’t cost anything, thank you for supporting my writing~)

Question:

Given a directed acyclic graph (DAG) of `n` nodes labeled from `0` to `n - 1`, find all possible paths from node `0` to node `n - 1` and return them in any order.

The graph is given as follows: `graph[i]` is a list of all nodes you can visit from node `i` (i.e., there is a directed edge from node `i` to node `graph[i][j]`).

Example 1:

`Input: graph = [[1,2],,,[]]Output: [[0,1,3],[0,2,3]]Explanation: There are two paths: 0 -> 1 -> 3 and 0 -> 2 -> 3.`

Example 2:

`Input: graph = [[4,3,1],[3,2,4],,,[]]Output: [[0,4],[0,3,4],[0,1,3,4],[0,1,2,3,4],[0,1,4]]`

Constraints:

• `n == graph.length`
• `2 <= n <= 15`
• `0 <= graph[i][j] < n`
• `graph[i][j] != i` (i.e., there will be no self-loops).
• All the elements of `graph[i]` are unique.
• The input graph is guaranteed to be a DAG.

Analysis/Approach:
Given a directed acyclic graph (DAG) with n nodes labeled from 0 to n — 1, we need to find all possible paths from node 0 to node n — 1 and return them…

--

--

LeetCode、Python、Java、Android；第11屆iT邦幫忙鐵人賽Software Development組優選(從LeetCode學演算法)；HiSKIO特約講師；課程優惠： https://bit.ly/lc2022all ；合作請洽： learnwithdesolve@gmail.com