public DirectedGraph Transposition() { DirectedGraph result = new DirectedGraph(VerticesCount); for (int i = 0; i < VerticesCount; ++i) for (int j = 0; j < GetVertexDegree(i); ++j) result.AddEdge(GetEdge(i, j).Reverse()); return result; }