000
08.12.2004, 15:23 Uhr
FloSoft
Medialer Over-Flow (Administrator)
|
Hallo, habe ein kleines problem da ich noch nie mit Trees gearbeitet habe (Suche hat mir nicht so wirklich geholfen):
Habe momentan ein array aus einer struktur mit folgenden elementen:
Wie kann ich aus denen nun am "einfachsten" und schnellsten einen Tree bauen?
momentan schaut das z.b so aus:
Code: |
INDEX 1, PARENT 0, NAME Lokale Ordner INDEX 8, PARENT 1, NAME Entwürfe INDEX 7, PARENT 1, NAME Gelöschte Objekte INDEX 4, PARENT 1, NAME Posteingang INDEX 6, PARENT 1, NAME Gesendete Objekte
|
ich bekomm die Elemente völlig unsortiert. Weiterhin weiß ich nicht wieviele Zweige es geben wird.
Meine Idee sähe folgendermaßen mal aus:
C++: |
struct Tree { char name[512]; unsigned long index; Tree *parent; Tree *prev; Tree *next; };
|
nur wie befüll ich die ohne "tausendemale" den kompletten Tree durchzugehen um die Elemente zuzuordnen?
Bearbeitung: |
evtl wär es ja einfach wenn man am anfang die elemente sortiert? also erst nach parent von 0 - ULONG_MAX und dann jeweils die Indexes noch sortiert, nur wie kann ich sowas machen das er mir erst das eine und dann das andere "korrekt" sortiert?
|
-- class God : public ChuckNorris { }; Dieser Post wurde am 08.12.2004 um 15:26 Uhr von FloSoft editiert. |