Package pi.dsa.graph

Class GraphArrayMatrix

java.lang.Object
pi.dsa.graph.Graph
pi.dsa.graph.GraphArrayMatrix
Direct Known Subclasses:
BreadthFirstSearch, DepthFirstSearch

public class GraphArrayMatrix extends Graph
Ein Graph, der über ein zweidimensionales Feld / Array implementiert ist.
Since:
0.36.0
Author:
Josef Friedrich
See Also:
  • Field Details

    • matrix

      protected int[][] matrix
      Das 2-dimensionale Feld der Adjazenzmatrix.
  • Constructor Details

    • GraphArrayMatrix

      public GraphArrayMatrix(int matrixSize)
      Erzeugt einen neuen Graphen unter Angabe der Größe der Matrix. Die Matrix wird automatisch vergrößert.
      Parameters:
      matrixSize - Die Größe der Matrix.
    • GraphArrayMatrix

      public GraphArrayMatrix()
      Erstellt eine Adjazenz-Matrix mit der Größe von 42. Die Matrix wird automatisch vergrößert.
  • Method Details

    • getEdgeWeight

      public int getEdgeWeight(String from, String to)
      Gibt die Gewichtung einer Kante zurück.

      Die Kante ist durch einen Anfangsknoten und einen Endknoten festgelegt.

      Parameters:
      from - Der Bezeichner des Anfangsknotens.
      to - Der Bezeichner des Endknotens.
      Returns:
      Die Gewichtung der Kante.
    • addNodeIntoDataStructure

      protected void addNodeIntoDataStructure(String label, double x, double y)
      Description copied from class: Graph
      Fügt einen neuen Knoten in den Datenstruktur (z. B. Matrix oder Liste) der aktuellen Graph-Implementation ein.

      Diese Methode wird aufgerufen, wenn bereits ein neuer Knoten vom Datentyp GraphNode erzeugt wurde. Außerdem ist schon überprüft worden, ob der Bezeichner des Knotens eindeutig ist.

      Specified by:
      addNodeIntoDataStructure in class Graph
      Parameters:
      label - Der Bezeichner des neuen Knotens, der dem Graphen hinzugefügt wird.
      x - Die x-Koordinate des Knotens in Meter.
      y - Die y-Koordinate des Knotens in Meter.
    • addEdgeIntoDataStructure

      protected void addEdgeIntoDataStructure(String from, String to, int weight, boolean directed)
      Description copied from class: Graph
      Einfügen einer Kante in den Graphen.

      Die Kante ist durch einen Anfangsknoten und einen Endknoten festgelegt, hat eine Gewichtung und kann gerichtet sein.

      Specified by:
      addEdgeIntoDataStructure in class Graph
      Parameters:
      from - Der Bezeichner des Anfangsknotens.
      to - Der Bezeichner des Endknotens.
      weight - Die Gewichtung der Kante.
      directed - Ist die Kante gerichtet?
    • getAllEdgesOfNodePairs

      public ArrayList<pi.dsa.graph.EdgesOfNodePair> getAllEdgesOfNodePairs()
    • print

      public void print()
      Gibt die Adjazenzmatrix des Graphen nach Zeilen und Spalten formatiert in der Konsole aus. Als Spaltenbreite wurde hier 4 Zeichen gewählt.