/*************************** Edge.java * **************************************/

import java.util.*;

/** Klasse zur Repraesentation einer Kante                                    */
/*  compareTo-Methode noetig zum Abspeichern von Kanten in Priority-Queue     */

public class Edge implements Comparable<Edge>{

  public Vertex dest;                 // Zielknoten, zu dem die Kante fuehrt
  public double cost;                 // Kosten dieser Kante
  
  public Edge (Vertex d, double c) {  // Konstruktor fuer Kante
    dest = d;                         // initialisiere Zielknoten
    cost = c;                         // initialisiere Kantenkosten
  }

  public int compareTo (Edge other) { // vergleiche mit anderer Kante
    return cost < other.cost ? -1 :   // falls selbst kleiner : Ergebnis negativ
           cost > other.cost ? +1 :   // falls selbst groesser: Ergebnis positiv
                                0 ;   // falls beide gleich   : Ergebnis 0
  }

}
