Struktury drzewiaste

witam,

jeśli mam klasę Tree, oraz wskaźniki tej klasy left i right i mam zamiar w oparciu o tą klasę tworzyć drzewo binarne w jaki sposób proponujecie zrealizować dodawanie kolejnych elementów do drzewa?

Nie rozumiem pytania. Musisz se wybrać w którym miejscu dodajesz. Domyslne wartości null, i potem się bawisz w zmianę danego wskaźnika na ten dodany. Coś jak w liście dwukierunkowej z tym, że drugi wskaźnik nie pokazuje poprzedniego elementu lecz drugi następny. Lecz musisz se również obsłużyć brak miejsca na dodanie kolejnego elementu.

Również nie do końca rozumiem pytanie (a przynajmniej jest dla mnie niejasne). Tak czy siak jeśli masz jakiś wątpliwości, zobacz jak inni to zrobili:

http://developer.gnome.org/glib/2.29/gl … Trees.html

http://www.google.com/codesearch/p?hl=p … ib/gtree.c

powiedzmy że chcę dodać element do drzewa - skąd mam wiedzieć np. który rodzic ma które miejsce wolne?

Jeśli chcesz robić BST ( http://pl.wikipedia.org/wiki/Binarne_dr … kiwa%C5%84 ) to, cytujac

dalej źle pytanie postawiłem, jeśli chcę dodawać w czasie działania programu do drzewa jakie wartości(np typu int) - w jaki sposób mogę to zrealizować, tak abym wiedział z poziomu kodu jak dodać, gdzie ?

Podstawowe pytanie: czy to ma być binarne drzewo poszukiwań (BST)? Czemu ma ono służyć?

tak BST

No to jeśli jest to BST to jest taka zasad jak zacytowane powyżej. Tu masz pseudokod nawet http://pl.wikipedia.org/wiki/Binarne_dr … nie_klucza