70 lines
1.4 KiB
Java
70 lines
1.4 KiB
Java
package GraphenTeorie;
|
|
|
|
public class Kante {
|
|
|
|
private String beschriftung;
|
|
private int gewichtung;
|
|
|
|
private Knoten startKnoten;
|
|
private Knoten endKnoten;
|
|
|
|
|
|
public Kante(Knoten startKnoten, Knoten endKnoten) {
|
|
this(startKnoten, endKnoten, 1, "");
|
|
}
|
|
|
|
|
|
public Kante(Knoten startKnoten, Knoten endKnoten, int gewichtung, String beschriftung) {
|
|
this.beschriftung = beschriftung;
|
|
this.gewichtung = gewichtung;
|
|
|
|
this.startKnoten = startKnoten;
|
|
this.endKnoten = endKnoten;
|
|
|
|
startKnoten.addAusgehendeKante(this);
|
|
endKnoten.addEingehendeKante(this);
|
|
}
|
|
|
|
|
|
public Knoten getStartKnoten() {
|
|
return this.startKnoten;
|
|
}
|
|
|
|
|
|
public Knoten getEndKnoten() {
|
|
return this.endKnoten;
|
|
}
|
|
|
|
|
|
public void editBeschriftung(String neueBeschriftung) {
|
|
this.beschriftung = neueBeschriftung;
|
|
}
|
|
|
|
|
|
public void editGewichtung(int neueGewichtung) {
|
|
this.gewichtung = neueGewichtung;
|
|
}
|
|
|
|
|
|
public int getGewichtung() {
|
|
return this.gewichtung;
|
|
}
|
|
|
|
|
|
public Knoten getOtherSide(Knoten eingabe) {
|
|
if (eingabe == this.startKnoten) {
|
|
return this.endKnoten;
|
|
} else if (eingabe == this.endKnoten) {
|
|
return this.startKnoten;
|
|
} else {
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
// Wenn man die Kante löscht, teilt sich der Graph
|
|
public boolean isBruecke() {
|
|
return true;
|
|
}
|
|
}
|