<p>Given a directed graph, design an algorithm to find out whether there is a route between two nodes.</p> <p><strong>Example1:</strong></p> <pre> <strong> Input</strong>: n = 3, graph = [[0, 1], [0, 2], [1, 2], [1, 2]], start = 0, target = 2 <strong> Output</strong>: true </pre> <p><strong>Example2:</strong></p> <pre> <strong> Input</strong>: n = 5, graph = [[0, 1], [0, 2], [0, 4], [0, 4], [0, 1], [1, 3], [1, 4], [1, 3], [2, 3], [3, 4]], start = 0, target = 4 <strong> Output</strong> true </pre> <p><strong>Note: </strong></p> <ol> <li><code>0 <= n <= 100000</code></li> <li>All node numbers are within the range [0, n].</li> <li>There might be self cycles and duplicated edges.</li> </ol>