예제 #1
0
        public override List<GenericNode> GetListSucc()
        {
            List<GenericNode> Succ = new List<GenericNode>();
            int ligne = Convert.ToInt32(this.GetNom()[0]) - 65;

            for (int i = 0; i < Matrice.GetUpperBound(0) + 1; i++)
            {
                if (Matrice[ligne, i] != -1)
                {
                    NodeGraph Enfant = new NodeGraph(Convert.ToChar(i + 65).ToString());
                    Enfant.SetNoeud_Parent(this);
                    Succ.Add(Enfant);
                    successeur.Add(Enfant.GetNom());
                }
            }
            return Succ;
        }
예제 #2
0
파일: Form1.cs 프로젝트: FullyK/Project_IA
        private void Chemin_Click(object sender, EventArgs e)
        {
            NodeGraph depart = new NodeGraph(Depart.Text[0].ToString().ToUpper());
            depart.setMatrice(matriceAdjacente);

            NodeGraph arrive = new NodeGraph(Arrive.Text[0].ToString().ToUpper());
            depart.setEndNode(arrive.GetNom());

            Graph g = new Graph();
            List<GenericNode> Solution = g.RechercheSolutionAEtoile(depart);


            string reponse = "Le chemin est : ";
            string poids = "Son poids est : ";
            foreach (GenericNode Gn in Solution)
            {
                reponse += Gn.GetNom() + " ";
            }

            MessageBox.Show(reponse + "\n" + poids + CalculPoids(Solution).ToString());
            g.GetSearchTree(arbre);
        }