Example #1
0
        private void Floyd_Load(object sender, EventArgs e)
        {
            int gradoInterno;

            string[] vector;
            dataGridCostos.ColumnCount     = matrizCostos.GetLength(0) + 1;
            dataGridCostos.Columns[0].Name = "Nodos";
            for (int i = 1; i < grafo.Count; i++)
            {
                dataGridCostos.Columns[i].Name = grafo[i - 1].Nombre;
            }
            dataGridCostos.Columns[grafo.Count].Name = grafo.Last().Nombre;
            foreach (Nodo busca in grafo)
            {
                vector = MetodosAuxiliares.vectorNodo(busca.Nombre, grafo.encuentraIndice(busca), matrizCostos);
                dataGridCostos.Rows.Add(vector);
            }
            dataGridRecorridos.ColumnCount     = matrizCostos.GetLength(0) + 1;
            dataGridRecorridos.Columns[0].Name = "Nodos";
            for (int i = 1; i < grafo.Count; i++)
            {
                dataGridRecorridos.Columns[i].Name = grafo[i - 1].Nombre;
            }
            dataGridRecorridos.Columns[grafo.Count].Name = grafo.Last().Nombre;
            foreach (Nodo busca in grafo)
            {
                dataGridRecorridos.Rows.Add(MetodosAuxiliares.vectorNodo(busca.Nombre, grafo.encuentraIndice(busca), matrizRecorridos));
            }
            foreach (Nodo nodo in grafo)
            {
                gradoInterno = 0;
                foreach (Nodo nodo2 in grafo)
                {
                    foreach (Arista arista in nodo2.Aristas)
                    {
                        if (nodo.Equals(arista.Arriba))
                        {
                            gradoInterno++;
                        }
                    }
                }
                if (nodo.Aristas.Count > 0)
                {
                    comboOrigen.Items.Add(nodo.Nombre);
                }
                if (gradoInterno > 0)
                {
                    comboDestino.Items.Add(nodo.Nombre);
                }
            }
            comboOrigen.Text = comboOrigen.Items[0].ToString();
            comboOrigen.Text = "";
        }
 private void Isomorfismo_Load(object sender, EventArgs e)
 {
     string[] vector;
     dataGridG1.ColumnCount     = grafo.Count + 1;
     dataGridG1.Columns[0].Name = "Nodos";
     label5.Text = "Nodos: " + grafo.Count.ToString() + "\n Aristas: " + (grafo.Aristas / 2).ToString();
     label6.Text = "Nodos: " + grafito.Count.ToString() + "\n Aristas: " + (grafito.Aristas / 2).ToString();
     for (int i = 1; i < grafo.Count + 1; i++)
     {
         dataGridG1.Columns[i].Name = grafo[i - 1].Nombre;
     }
     foreach (Nodo nodo in grafo)
     {
         vector = MetodosAuxiliares.vectorNodo(nodo.Nombre, grafo.encuentraIndice(nodo), grafo.matrizDeAdyacencia());
         dataGridG1.Rows.Add(vector);
     }
     dataGridG2.ColumnCount     = grafo.Count + 1;
     dataGridG2.Columns[0].Name = "Nodos";
     for (int i = 1; i < grafo.Count + 1; i++)
     {
         dataGridG2.Columns[i].Name = grafito[i - 1].Nombre;
     }
     foreach (Nodo nodo in grafito)
     {
         vector = MetodosAuxiliares.vectorNodo(nodo.Nombre, grafito.encuentraIndice(nodo), this.pasos.First());
         dataGridG2.Rows.Add(vector);
     }
     comboPasos.Items.Add("Original");
     comboPasos.Items.Add("Final");
     comboPasos.Text = "Original";
     for (int i = 0; i < this.cambios.Length; i++)
     {
         dataGridIntecambios.Rows.Add(grafo[i].Nombre, grafito[this.cambios[i]].Nombre);
     }
     if (band)
     {
         this.Text = "Los grafos SI son Isomorficos";
     }
     else
     {
         this.Text = "Los grafos NO son Isomorficos";
     }
 }