Hola a todos,
estoy desarrolando un juego usando el A*, y tengo esta implementación
.
Entiendo el algoritmo, pero tengo una duda en las partes subrayadas.
Mi primera duda (g(N’) = g(N) ;f(N’) = g(N’) + h(N’)) es en esta parte. Aquí, comprueba si el valor g(n) del nodo actual es inferior al alguno de frontera en cuyo caso lo sustituye, para eso crea un puntero de n a n'. Si esto es correcto, actualizar el valor del g(n') con el del g(n) pero luego no hace lo mismo con el h(n'). ¿esto es un errata o hay algo que se me pasa?
La segunda parte, creo que lo hace es comprobar si alguno camino posible del nodo g(n') actual es mejor que el nuevo valor conseguido g(n), y si no es así lo coge.
Saludos y gracias a todos.