Given a binary search tree which is also a complete binary tree. The problem is to convert the given BST into a Min Heap with the condition that all the values in the left subtree of a node should be less than all the values in the right subtree of the node. This condition is applied on all the nodes in the so converted Min Heap.
Input : 4 / \ 2 6 / \ / \ 1 3 5 7 Output : 1 / \ 2 5 / \ / \ 3 4 6 7 The given BST has been transformed into a Min Heap. All the nodes in the Min Heap satisfies the given condition, that is, values in the left subtree of a node should be less than the values in the right subtree of the node.
- Create an array arr of size n, where n is the number of nodes in the given BST.
- Perform the inorder traversal of the BST and copy the node values in the arr in sorted order.
- Now perform the preorder traversal of the tree.
- While traversing the root during the preorder traversal, one by one copy the values from the array arr to the nodes.
Preorder Traversal: 1 2 3 4 5 6 7
Time Complexity: O(n)
Auxiliary Space: O(n)
This article is contributed by Ayush Jauhari. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Convert min Heap to max Heap
- Convert BST to Max Heap
- Convert BST into a Min-Heap without using array
- Heap Sort for decreasing order using min heap
- K-ary Heap
- K’th Least Element in a Min-Heap
- Binomial Heap
- Max Heap in Java
- Skew Heap
- Weak Heap
- Pairing Heap
- Max Heap in Python
- Min Heap in Python
- Binary Heap
- C++ Program for Heap Sort
- Print all nodes less than a value x in a Min Heap.
- Implementation of Binomial Heap
- Where is Heap Sort used practically?
- K-th Greatest Element in a Max-Heap
- Minimum element in a max heap
Improved By : PranchalKatiyar