//package Graph; /** * Title: Graph * Description: Prova di implementazione di un struttura dati per rappresentare un grafo. * Copyright: Copyright (c) 2000 * Company: Università degli Studi di Verona * @author Roberto Posenato * @version 1.0 */ /** * La classe arco serve per rappresentare un arco del grafo */ public class Arco implements Comparable { Object x, y; Object value; public Arco() { x = y = null; value = null; } public Arco(Object x1, Object y1, Object v) { x = x1; y = y1; value = v; } public Object getX() { return x; } public Object getY() { return y; } public Object getValue() { return value; } public boolean equals(Arco a) { return (x.equals(a.x) && y.equals(a.y) && value.equals(a.value)); } public int hashCode() { return x.hashCode()+y.hashCode()+value.hashCode(); } public String toString() { return "("+x.toString()+", "+y.toString()+"; "+value.toString()+")"; } public boolean equals(Object x) { if (x.getClass()==this.getClass()) return this.equals((Arco) x); else return false; } public int compareTo(Object a) { int i = ((Comparable) value).compareTo(((Arco)a).value); if (i==0) { int j = ((Comparable) x).compareTo(((Arco)a).x); if (j == 0) return ((Comparable) y).compareTo(((Arco)a).y); else return j; } else { return i; } } }