12. Binary Search Tree to Greater Sum Tree / Greater Tree
Last updated
Last updated
Given the root
of a Binary Search Tree (BST), convert it to a Greater Tree such that every key of the original BST is changed to the original key plus sum of all keys greater than the original key in BST.
As a reminder, a binary search tree is a tree that satisfies these constraints:
The left subtree of a node contains only nodes with keys less than the node's key.
The right subtree of a node contains only nodes with keys greater than the node's key.
Both the left and right subtrees must also be binary search trees.
Example 1:
Bruteforce solution is using two traversal 1 traversing and 1 checking nodes which are greater O(n^2)
Approach: Inorder Traversal gives sorted array Making prefix sum form right to left Again doing inorder traversal and inserting values
Time Complexity: O(N) Space Complexity: O(n)
Time Complexity: O(N) Space Complexity: O(n)