Klasse TelNet

java.lang.Object
TelNetApplication.TelNet

public class TelNet extends Object
Klasse zur Verwaltung von Telefonknoten mit (x,y)-Koordinaten und zur Berechnung eines minimal aufspannenden Baums mit dem Algorithmus von Kruskal. Kantengewichte sind durch den Manhattan-Abstand definiert.
Seit:
16.12.2024
  • Konstruktorübersicht

    Konstruktoren
    Konstruktor
    Beschreibung
    TelNet(int lbg)
    Legt ein neues Telefonnetz mit dem Leitungsbegrenzungswert lbg an.
  • Methodenübersicht

    Modifizierer und Typ
    Methode
    Beschreibung
    boolean
    addTelKnoten(int x, int y)
    Fügt einen neuen Telefonknoten mit Koordinate (x,y) dazu.
    boolean
    Berechnet ein optimales Telefonnetz als minimal aufspannenden Baum mit dem Algorithmus von Kruskal.
    void
    drawOptTelNet(int xMax, int yMax)
    Zeichnet das gefundene optimale Telefonnetz mit der Größe xMax*yMax in ein Fenster.
    void
    generateRandomTelNet(int n, int xMax, int yMax)
    Fügt n zufällige Telefonknoten zum Netz dazu mit x-Koordinate aus [0,xMax] und y-Koordinate aus [0,yMax].
    Liefert ein optimales Telefonnetz als Liste von Telefonverbindungen zurück.
    int
    Liefert die Gesamtkosten eines optimalen Telefonnetzes zurück.
    static void
    main(String[] args)
    Anwendung.
    int
    Liefert die Anzahl der Knoten des Telefonnetzes zurück.
     

    Von Klasse geerbte Methoden java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Konstruktordetails

    • TelNet

      public TelNet(int lbg)
      Legt ein neues Telefonnetz mit dem Leitungsbegrenzungswert lbg an.
      Parameter:
      lbg - Leitungsbegrenzungswert.
  • Methodendetails

    • addTelKnoten

      public boolean addTelKnoten(int x, int y)
      Fügt einen neuen Telefonknoten mit Koordinate (x,y) dazu.
      Parameter:
      x - x-Koordinate.
      y - y-Koordinate.
      Gibt zurück:
      true, falls die Koordinate neu ist, sonst false.
    • computeOptTelNet

      public boolean computeOptTelNet()
      Berechnet ein optimales Telefonnetz als minimal aufspannenden Baum mit dem Algorithmus von Kruskal.
      Gibt zurück:
      true, falls es einen minimal aufspannden Baum gibt, sonst false.
    • getOptTelNet

      public List<TelVerbindung> getOptTelNet() throws IllegalStateException
      Liefert ein optimales Telefonnetz als Liste von Telefonverbindungen zurück.
      Gibt zurück:
      Liste von Telefonverbindungen.
      Löst aus:
      IllegalStateException - falls nicht zuvor computeOptTelNet() erfolgreich durchgeführt wurde.
    • getOptTelNetKosten

      public int getOptTelNetKosten() throws IllegalStateException
      Liefert die Gesamtkosten eines optimalen Telefonnetzes zurück.
      Gibt zurück:
      Gesamtkosten eines optimalen Telefonnetzes.
      Löst aus:
      IllegalStateException - falls nicht zuvor computeOptTelNet() erfolgreich durchgeführt wurde.
    • drawOptTelNet

      public void drawOptTelNet(int xMax, int yMax) throws IllegalStateException
      Zeichnet das gefundene optimale Telefonnetz mit der Größe xMax*yMax in ein Fenster.
      Parameter:
      xMax - Maximale x-Größe.
      yMax - Maximale y-Größe.
      Löst aus:
      IllegalStateException - falls nicht zuvor computeOptTelNet() erfolgreich durchgeführt wurde.
    • generateRandomTelNet

      public void generateRandomTelNet(int n, int xMax, int yMax)
      Fügt n zufällige Telefonknoten zum Netz dazu mit x-Koordinate aus [0,xMax] und y-Koordinate aus [0,yMax].
      Parameter:
      n - Anzahl Telefonknoten
      xMax - Intervallgrenz für x-Koordinate.
      yMax - Intervallgrenz für y-Koordinate.
    • size

      public int size()
      Liefert die Anzahl der Knoten des Telefonnetzes zurück.
      Gibt zurück:
      Anzahl der Knoten des Telefonnetzes.
    • toString

      public String toString()
      Setzt außer Kraft:
      toString in Klasse Object
    • main

      public static void main(String[] args)
      Anwendung.
      Parameter:
      args - wird nicht benutzt.