Reverse alternate levels of a perfect binary tree
Given a Perfect Binary Tree, reverse the alternate level nodes of the binary tree.
Solution:
- First traverse tree in InOrder and extract all elements of odd level from tree to list
- Reverse the elements of list
- Traverse again tree and replace elements of tree with list element.
Latest Source Code:
Github: ReverseAtAlternateLevelOfPerfectBinaryTree.java
Output:
1 / \ / \ / \ / \ 2 3 / \ / \ / \ / \ 4 5 6 7 / \ / \ / \ / \ 8 9 10 11 12 13 14 15 After reverse : 1 / \ / \ / \ / \ 3 2 / \ / \ / \ / \ 4 5 6 7 / \ / \ / \ / \ 15 14 13 12 11 10 9 8