Dieser Blog richtet sich an Entwickler, die den Kern eines Konzepts verstehen und nicht um den heißen Brei herumreden möchten. In diesem Beitrag werden wir die Struktur der Diagrammdaten verstehen. Fangen wir an.
Grafiken sind nichtlineare Datenstrukturen mit zwei Komponenten, nämlich Kanten und Knoten.
Ein Knoten ist: -
Eine Kante ist:-
Es gibt 2 Möglichkeiten:
Die benachbarte Matrix ist eine 2D-Matrix, die die Diagrammdatenstruktur darstellt. Die Zeilen und Spalten stellen Knoten dar und der Wert in der Matrix stellt die Kanten dar.
Im obigen Bild sind 4 Knoten durch die Kanten verbunden. Knoten A ist mit allen Knoten verbunden und daher wird der Wert als 1 in den Zellen addiert, in denen A (entweder Zeile oder Spalte) Zeilen oder Spalten anderer Knoten schneidet. Knoten B ist nur mit Knoten A verbunden, was zu einem Wert 1 in der Zelle führt, in der sich Knoten B mit Knoten A schneidet, und andere Zellen haben einen Wert 0.
Die Zeitkomplexität zum Hinzufügen oder Löschen einer Kante für die angrenzende Matrix beträgt O(1). Es kann verwendet werden, wenn: -
Die benachbarte Liste speichert das Diagramm mithilfe mehrerer verknüpfter Listen oder Arrays. Die Zeilen stellen den Knoten dar (siehe Abbildung unten), und die in den Zeilen vorhandenen Werte stellen den Nachbarn dar.
Im obigen Bild gibt es 5 Knoten. Knoten A ist mit Knoten B und Knoten D verbunden, weshalb das erste Array diese Werte hat. In ähnlicher Weise ist Knoten B mit Knoten A, Knoten C, Knoten D und Knoten E verbunden, sodass das zweite Array diese Knoten im zweiten Array enthält.
Die Zeitkomplexität zum Abrufen oder Löschen einer Kante beträgt O(n) und die Zeitkomplexität zum Hinzufügen einer Kante beträgt O(1). Die nebenstehende Liste kann verwendet werden, wenn: -
Ein beliebtes Beispiel für die Struktur von Diagrammdaten ist: In einem Fußballfeld kann jeder Spieler als Knoten betrachtet werden und seine Interaktionen stellen Kanten dar.
Grafiken werden in ähnlichen Szenarien wie im vorherigen Beispiel verwendet, wie zum Beispiel: -
Das obige ist der detaillierte Inhalt vonHier erhalten Sie einen Überblick über die Struktur der Diagrammdaten .... Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!