Joshua gave you the correct answer. An example would be:
Transformer<Graph<V,E>, Set<Set<V>>> trns = new WeakComponentClusterer<V,E>();
Set<Set<V>> clusters = trns.transform(graph);
This will give you clusters
which is a Set
(collection) of Sets
of vertices. Basically, it will look like:
{ <---+
{1,2,3},{4,5}, <--- a set of vertices |
{1,2},{3},{5}, |- a set of sets
{1},{2,3,4}, |
... |
} <---+
As an aside, the speed of this algorithm will depend on the number of vertices you have (as you correctly stated) as well as the number of edges. But 100,000 vertices shouldn't be a limiting factor.