Listen verwalten



  • Hi, habe ein Problem das ich selber nicht lösen kann.

    Es geht um ein paar Listen die abgearbeitet werden müssen. Das in einer bestimmten Reihenfolge.

    Hier mal etwas zur veranschaulichung:
    http://mitglied.lycos.de/gidxgraphic/temp/kult.jpg

    Es gibt ein Hauptliste. Diese verzweigt in die Nebenlisten. Ist eine Nebenliste abgearbeitet springt man in den zweiten Eintrag in der Hauptliste und macht mit der zweiten nebenliste weiter usw...

    Ich habe es mit ein paar verketteten Listen probiert. Doch glaube ich das ich auf dem Holzweg bin. Kann mir einer von euch einen Hiweis geben wie man das evt besser machen könnte?

    Programmiert wird in C/C++ jedoch ohne zuhilfnahme von STL oder ähnlichem.



  • hm, würde einen baum nehmen, das ist am einfachsten. jeder knoten hat (mind) einen next zeiger, einen zeiger auf den übergeordneten knoten und evtl einen zeiger auf einen kindknoten. damit bekommst du diese hübschen bäume, wie du sie haben willst



  • Also erstellt ich eine Struktur

    struct Knoten{
       Knoten *rechts;
       Knoten *runter;
    };
    

    Auch dazu eine Grafik.
    http://mitglied.lycos.de/gidxgraphic/temp/kult.jpg

    void besuche(Knoten *baum)
    {
         while(baum!=NULL){
            besuche(baum->unten);
            besuche(baum->rechts);}
    }
    

    Und so besuche ich die einzelnen Knoten.

    Ich muss also erst zum dunkel grauen Knoten. Danach alle Knoten unterhalb davon abarbeiten. Weiter zum zweiten und alle Knoten unterhalb von diesem abarbeiten ect...

    Was sagt ihr zu diesem Ansatz?


Anmelden zum Antworten