I am working on GIS project where we are making use of road maps that may contain one-way streets.
We are writing some debugging tools one of which I want to design to find "Islands". This would list out all the sets of vertices such that for each pair of vertices A, B in a set you would be able to get from A to B and from B to A.
Here is an example:
A<----------------------> B
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
v v
C
In this case the islands are {c} and {a,b}.
I expect that this reduces to some well-known graph-theory algorithm, but I don't see it.
Does anyone have any pointers for me to do further research or some ideas about a solution?