public override bool isomorfismo(int[,] g1, int[,] g2, ref List <int[, ]> pasos, ref int[] cambios) { int[] p; List <int> p2 = new List <int>(); long fact = MetodosAuxiliares.factorial(this.Count); int[] indexp = new int[this.Count]; for (int i = 0; i < this.Count; i++) //se llena indexp con el numero de nodos { indexp[i] = i; } if (MetodosAuxiliares.comparaMatrices(g1, g2)) { sep(ref p2, indexp); cambios = indexp; return(true); } p = indexp; //creamos una permutacion y la probamos for (int i = 0; i < fact; i++) { biyeccion(indexp); if (PruebaPermutacion(g1, g2, indexp, ref p, ref pasos)) { cambios = indexp; return(true); } } cambios = indexp; return(false); }