@CStoll: Hilfe von deiner Kompetenz (Dynamischer Datenstruktur Baum)
-
ok gut.. aber der Konstruktor des iterator.. was wird da intialisiert? wenn ich jetzt nicht bei der wurzel beginne zu iterieren.. dann muss da doch sicher was geamcht werden?
-
Was genau übergibst du diesem Ctor? (und von wo aus wird der aufgerufen?)
-> Wenn du ihn verwenden willst, um den begin()-Iterator deines Baums zu besorgen, mußt du dort auch den Weg "nach unten bis zum Blatt" gehen.
-> Wenn du einen Iterator direkt auf den übergebenen (Blatt)Knoten erzeugen willst, mußt du in p->father.children nach dem übergebenen Knoten suchen.
-
und wie wird dann "pos" intialisiert!
naja ich will quasie im C-Tor
iterator(node *pCurNode)......
den Start Knoten übergben.. war da mein Konstruktor im 2t letzen post ok?
-
Also pCurNode ist das Blatt, bei dem du mit dem Travarsieren beginnen willst?
pos=find(pCurNode->father->children.begin(),pCurNode->father->children.end(),pCurNode);
-
pCurNode kann auch ein Ast sein....
-
Wenn du irgendwo im Baum bist, mußt du nach unten bis zum ersten Blatt des aktuellen Knoten:
if(pCurNode->children.empty()) //Startpunkt ist Blattknoten pos=find(pCurNode->father->children.begin(),pCurNode->father->children.end(),pCurNode); else { //Wurzel bzw. mitten im Baum pos=pCurNode->children.begin(); while(!pos->children.empty()) pos=pos->children.begin(); }
-
ich gebs auf.. ich war jetzt 3-4 tage damit beschäftig.. bekomm das nich auf die reihe...
@CStoll: wenn du mir keine funktionieren Code postest.. wird das glaub nix mehr...

NERV
