Inhomogener Baum: Frage zur Datenverwaltung
-
Hallo,
ich moechte einen inhomogenen Baum aufbauen der Art
N / \ P P /|\ \ N N N N ...
aufbauen. Dabei besteht jede Generation aus einer Art (N oder P) und die Arten wechseln sich pro Generation ab.
Dabei werden die Baeume nicht sehr gross, so dass ich mir um Speicherprobleme zunaechst keine Sorgen machen muss.
Als Quelle zum Aufbauen dienen mit ein std::vector<P> poolP und std::vector<N> poolN.Ich suche nach Tipps, mit welchen Datenstrukturen ich das in C++ am besten mache.
- Sollte ich eine Grundklasse fuer N und P erzeugen und dann einen klassischen
Baum implementieren, oder kann ich zwei 'parallele' Baeume halten, da ich
weiss, dass sich N und P pro Generation abwechseln?
- Wie realisiere ich es am besten, dass ich bei der Suche nach z.B. einem N in
der Generation (2k+1) kein N benutzte, welches bereits in einer
vorangegangenen Generation benutzt wurde? Ein Vergleich unterschiedlicher N
ist relativ kostenaufwendig.Ich waere dankbar, wenn mir jemand hierzu ein paar Tips oder Literaturhinweise geben koennte.
Vielen Dank.
-
ich würde die knoten homogen machen und innerhalb des knotens einen zeiger auf P bzw N ablegen
also stinknormaler allgemeiner baum, z.b. mit einfachen c-strukturen realisiert.