package GraphenTeorie; import java.util.ArrayList; public class Knoten { private String beschriftung; private ArrayList eingehendeKanten; private ArrayList ausgehendeKanten; private ArrayList anliegendeKanten; private ArrayList nachbarKnoten; public Knoten() { this(""); } public Knoten(String beschriftung) { this.beschriftung = beschriftung; this.eingehendeKanten = new ArrayList<>(); this.ausgehendeKanten = new ArrayList<>(); this.anliegendeKanten = getAnliegendeKanten(); } public ArrayList getAnliegendeKanten() { ArrayList neueListe = new ArrayList<>(this.eingehendeKanten); neueListe.addAll(this.ausgehendeKanten); this.anliegendeKanten = neueListe; return this.anliegendeKanten; } public ArrayList getEingehendeKanten() { return this.eingehendeKanten; } public ArrayList getAusgehendeKanten() { return this.ausgehendeKanten; } public void addEingehendeKante(Kante neueKante) { this.eingehendeKanten.add(neueKante); this.anliegendeKanten.add(neueKante); } public void addAusgehendeKante(Kante neueKante) { this.ausgehendeKanten.add(neueKante); this.anliegendeKanten.add(neueKante); } public ArrayList getAllNachbarKnoten() { ArrayList nachbarnListe = new ArrayList<>(); for (Kante i: this.anliegendeKanten) { nachbarnListe.add(i.getOtherSide(this)); } return nachbarnListe; } public void editBeschriftung(String neueBeschriftung) { this.beschriftung = neueBeschriftung; } public boolean isArtikulation() { return true; } public int distanzTo(Knoten k1) { return 1; } public int extrenzitaet() { return 1; } }