Advertisement
ganryu

Nodo

May 29th, 2017
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.09 KB | None | 0 0
  1. package agentesIA;
  2.  
  3. import java.util.Map;
  4. import java.util.Set;
  5.  
  6. public class Nodo implements Comparable<Nodo> {
  7.     private Map<Nodo, Integer> nodosHijos;
  8.     public final String nombre;
  9.     public final int h;
  10.     public int coste;
  11.     public Nodo padre = null;
  12.    
  13.     private Nodo(String nombre, int h) {
  14.         this.nombre = nombre;
  15.         this.h = h;
  16.     }
  17.    
  18.     public static Nodo crearNodo(String nombre, int h) {
  19.         return new Nodo(nombre, h);
  20.     }
  21.    
  22.     public void addHijo(Nodo nodo, int coste) {
  23.         nodosHijos.put(nodo, coste);
  24.     }
  25.    
  26.     public Set<Nodo> getHijos() {
  27.         return nodosHijos.keySet();
  28.     }
  29.    
  30.     public int getCosteHijo(Nodo hijo) {
  31.         return nodosHijos.get(hijo);
  32.     }
  33.    
  34.     @Override
  35.     public int compareTo(Nodo otro) {
  36.         int f = this.coste + this.h;
  37.         int otroF = otro.coste + otro.h;
  38.        
  39.         return f - otroF;
  40.     }
  41.    
  42.     @Override
  43.     public boolean equals(Object otro) {
  44.         if(otro == null || !(otro instanceof Nodo)) {
  45.             return false;
  46.         }
  47.        
  48.         return ((Nodo) otro).nombre == this.nombre;
  49.     }
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement