Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- bool BinaryTree::printLevel(TreeNode *head, int level)
- {
- /* Wenn level 0 ausgeben werden soll */
- if (level == 0 && tmp==false)
- {
- cout << this->head->right->element << endl ;
- return true;
- }
- /* Setze den Anker */
- if (head == NULL)
- head = this->head->right;
- /* Rekursiver Aufruf um Elemente aus der Ebene zu bekommen
- Wenn das Level gefunden wurden ist und der Eintrag
- nicht gleich dem Head->Element ist, dann ausgeben*/
- if (level == 0 && head->element != this->head->right->element)
- cout << " " << head->element;
- /* Benötigtes Level noch nicht erreicht,
- dann gehe eine Ebene tiefer
- wiederhole für Linken und Rechten Pfad*/
- else if (level + 1 > 1) /* + - 1 Problem*/
- {
- tmp = true; /* um Ebene 0 nicht auszugeben */
- if (head->left!=NULL)
- printLevel(head->left, level - 1);
- if (head->right != NULL)
- printLevel(head->right, level- 1);
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement