private int CalcBicliqueCount(int[] verticies, int[] edges)
 {
     var g = new UndirectedGraph<int, IEdge<int>>();
     g.AddVertexRange(verticies);
     var convEdges = new Edge<int>[edges.Length / 2];
     for (int i = 0; i < edges.Length; i += 2)
     {
         convEdges[i / 2] = new Edge<int>(edges[i], edges[i + 1]);
     }
     g.AddEdgeRange(convEdges);
     var algo = new BipartiteDimensionAlgorithm(g);
     algo.Compute();
     return algo.BipartiteDimensionValue;
 } 
        private int CalcBicliqueCount(int[] verticies, int[] edges)
        {
            var g = new UndirectedGraph <int, IEdge <int> >();

            g.AddVertexRange(verticies);
            var convEdges = new Edge <int> [edges.Length / 2];

            for (int i = 0; i < edges.Length; i += 2)
            {
                convEdges[i / 2] = new Edge <int>(edges[i], edges[i + 1]);
            }
            g.AddEdgeRange(convEdges);
            var algo = new BipartiteDimensionAlgorithm(g);

            algo.Compute();
            return(algo.BipartiteDimensionValue);
        }