private void moveVertex(Vertex<Integer> vertex, Set<Vertex<Integer>> sourceSet,
                            Set<Vertex<Integer>> destinationSet) {
        sourceSet.remove(vertex);
        destinationSet.add(vertex);
    }
http://www.geeksforgeeks.org/detect-cycle-in-a-graph/
src/com/interview/graph/CycleInDirectedGraph.java