Question: Plz just write one function which the question gave. Because this will be tested by code runner. We don't need whole program, but just a
Plz just write one function which the question gave. Because this will be tested by code runner. We don't need whole program, but just a function. Don't add other functions
Write a function to apply left or right rotations to a binary search tree based on the height of the left and right sub-trees of the root. The function should first determine if a binary search tree is height balanced, and if not, rotate the tree until it is. Your algorithm may need to apply a left or right rotation multiple times. You will not need to apply both a left and right rotation to any tree. The function should return the root of the tree.
TreeNode* CheckHeightAndRotate(TreeNode *root);
TreeNode struct:
struct TreeNode { int key; TreeNode *leftChild; TreeNode *rightChild; TreeNode *parent; }; Example:
Input Tree: 15 / \ 8 18 / \ 5 12 / \ 3 6 Expected Output: 8 / \ 5 15 / \ / \ 3 6 12 18
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
