예제 #1
0
        //todas las acciones posibles
        public Estado LlenarJ3()
        {
            Estado estado = new Estado(3, J4, "LLenar J3 ");

            de.setDeb("He llenado J3 *" + estado.getJ3() + "," + estado.getJ4() + "* ");
            return(estado);
        }
예제 #2
0
파일: Nodo.cs 프로젝트: luismigm/busqueda1
        //crea una lista de estados candidatos, los compara con los del padre por si se repite. devuelve una lista de nodos.
        public List <Nodo> expandir(debug de)
        {
            this.de = de;
            de.setDeb(this.miEstado());
            estado.setDebug(de);
            List <Estado> estadosCandidatos = estado.expandir();
            List <Nodo>   listaADevolver    = new List <Nodo>();

            foreach (Estado esta in estadosCandidatos)
            {
                if (padre == null)
                {
                    Nodo nuevoNodo = new Nodo(this, esta.getJ3(), esta.getJ4(), null);

                    listaADevolver.Add(nuevoNodo);
                }
                else if (!esta.comparaEstado(padre.getEstado()))
                {
                    Nodo nuevoNodo = new Nodo(this, esta.getJ3(), esta.getJ4(), esta.accion);
                    listaADevolver.Add(nuevoNodo);
                }
            }
            return(listaADevolver);
        }