Krak´ow 14.12.2017
Zestaw zada´ n nr. 8
Zadania programoweprzygotowujemy w postaci kodu programu oraz dokumentu z kr´otkim opisem kodu oraz wynikami test´ow: plik.pdf (u˙zywamy latex, word) i umieszczamy w systemie Pegaz.
• Zadanie (programowe)
Zaimplementuj drzewo binarne przy pomocy wska´znik´ow oraz operacje charakterystyczne dla tej struktury. Wykorzystaj rekurencje przy iterowaniu po drzewie.
– insert(x): wstaw to drzewa
– lockup(x): sprawd´z czy element nale˙zy do drzewa – size(): policz ilo´s´c we‘z l´ow
– maxDepth(): podaj wysoko´s´c drzewa
– minValue(): podaj najmniejszy element w drzewie – printTree(): wypisz zawarto´s´c wszystkich we
‘z l´ow, zaimplementuj i u˙zyj metod:
∗ inorder()
∗ preorder()
∗ postorder()
– hasPathSum(x): sprawd´z czy w drzewie istnieje droga korze´n-do-li´scia dla kt´orej suma warto´sci w we‘´zle jest r´owna x
– printPaths(): wypisz wszystkie wartoci we
‘z l´ow na ka˙zdej z dr´og korze´n-do-li´scia – sameTree(tree1, tree2): maja
‘c dwa drewa binarne sprawd´z czy sa
‘ identyczne
Dla ka˙zdej z metod przygotuj, w main programu, segment testuja‘cy czytaja‘cy z pliku inputowego. Za la
‘cz plik inputowy oraz output z test´ow. Mo˙zesz u˙zy´c generatora liczb losowych do generowania ilo´sci we
‘z low oraz warto´sci wprowadzanych we
‘z l´ow.
1