hell-student
Lieutenant
- Dabei seit
- Nov. 2007
- Beiträge
- 671
Hallo Zusammen,
Ich habe folgende Situation. Ich habe hier einen Beispielsgraphen, welcher schon gescheduled wurde, also die Graphknoten den einzelnen Steps (Zeitschritte 0 - 4) zugeordnet wurde. Wie kann ich mir diesen am effizientesten Speichern?

Vorraussetzung:
- Graph muss möglicherweise rescheduled werden -> einzelne Knoten werden also in Y-Achse nach unten verschoben -> mehr Steps
- Es müssen neue Knoten in den gescheduleden Graphen eingefügt werden.
Meine erste Idee war folgende:
1. Knoten in der Reihenfolge nach in einem Array speichern.
2. Zusätzliches Array verwenden, welches folgende Aussage hat:
step_size[x] = Startindex im Knotenarray
step_size[x+1] = Endindex im Knotenarray
Alle Knoten von Start (inklusive) bis End (exclusive) werden im step y gescheduled.
Beispiel hier am Graph:
Knotenarray: [1, 2, 3, 4, 5, 6, 7, 8]
step_size: [1, 4, 4, 5, 5, 6, 6, 7, 7, 9]
also:
Step 0: 1,4 d.h Knoten 1,2,3
Step 1: 4,5 d.h Knoten 4
Step 2: 5,6 d.h Knoten 5
Step 3: 6,7 d.h Knoten 6
Step 4: 7,9 d.h Knoten 7,8
Mein Problem ist hierbei, dass ich mit festen Arrays arbeiten würde, könnte also obige Voraussetzungen nicht erfüllen.
Meine nächste Idee ist, dass ich es als LinkedList abspeichere in der Art:

Ich möchte später für jeden Knoten etwas berechnen/tun und zwar in der Step Reihenfolge, also muss ich später zuerst die Steps durchgehn und dann die darin enthaltenen Knoten
Gibt es möglicherweise eine Lib die mir das alles erspaart? thx
Ich habe folgende Situation. Ich habe hier einen Beispielsgraphen, welcher schon gescheduled wurde, also die Graphknoten den einzelnen Steps (Zeitschritte 0 - 4) zugeordnet wurde. Wie kann ich mir diesen am effizientesten Speichern?

Vorraussetzung:
- Graph muss möglicherweise rescheduled werden -> einzelne Knoten werden also in Y-Achse nach unten verschoben -> mehr Steps
- Es müssen neue Knoten in den gescheduleden Graphen eingefügt werden.
Meine erste Idee war folgende:
1. Knoten in der Reihenfolge nach in einem Array speichern.
2. Zusätzliches Array verwenden, welches folgende Aussage hat:
step_size[x] = Startindex im Knotenarray
step_size[x+1] = Endindex im Knotenarray
Alle Knoten von Start (inklusive) bis End (exclusive) werden im step y gescheduled.
Beispiel hier am Graph:
Knotenarray: [1, 2, 3, 4, 5, 6, 7, 8]
step_size: [1, 4, 4, 5, 5, 6, 6, 7, 7, 9]
also:
Step 0: 1,4 d.h Knoten 1,2,3
Step 1: 4,5 d.h Knoten 4
Step 2: 5,6 d.h Knoten 5
Step 3: 6,7 d.h Knoten 6
Step 4: 7,9 d.h Knoten 7,8
Mein Problem ist hierbei, dass ich mit festen Arrays arbeiten würde, könnte also obige Voraussetzungen nicht erfüllen.
Meine nächste Idee ist, dass ich es als LinkedList abspeichere in der Art:

Ich möchte später für jeden Knoten etwas berechnen/tun und zwar in der Step Reihenfolge, also muss ich später zuerst die Steps durchgehn und dann die darin enthaltenen Knoten
Gibt es möglicherweise eine Lib die mir das alles erspaart? thx