Tarjan: Difference between revisions

Content added Content deleted
m (→‎{{header|Racket}}: Whoops. Fixed the typo)
Line 489: Line 489:


=={{header|Racket}}==
=={{header|Racket}}==

=== Manual implementation ===


{{trans|Kotlin}}
{{trans|Kotlin}}
Line 559: Line 561:
<pre>
<pre>
'((7) (3 4) (5 6) (2 1 0))
'((7) (3 4) (5 6) (2 1 0))
</pre>

=== With the graph library ===

<lang racket>#lang racket

(require graph)

(define g (unweighted-graph/adj '([0 1]
[2 0]
[5 2 6]
[6 5]
[1 2]
[3 1 2 4]
[4 5 3]
[7 4 7 6])))

(scc g)</lang>

{{out}}
<pre>
'((7) (3 4) (5 6) (1 0 2))
</pre>
</pre>