Answered step by step
Verified Expert Solution
Question
1 Approved Answer
1. (50 pts) An AVL tree is a binary search tree such that, for each node x, the height of the left and right subtrees
1. (50 pts) An AVL tree is a binary search tree such that, for each node x, the height of the left and right subtrees of x differ by at most 1 . (Note that this question is from CLRS Problem 13-3 (AVL trees).) The below Python program is a part of AVL tree implementation. avl_insert() function inserts a key to the AVL tree and avl delete() function deletes a key from the AVL tree. Note that avl_insert() calls avl_fixup() function at the end, but avl_fixup() function is not implemented yet. avl_delete() function is not implemented either. Your task is to complete these two functions, so that avl_insert() and avl_delete() correctly inserts and deletes a given key, respectively, while maintaining the AVL tree property after the operation. You may add more helper functions. You also need to test your implementation. Below codes contain sample functions for testing. You may add more test cases. class Node: def __init__(self, key: int, p= None, 1= None, r= None, h=1 ) : self.left =1 self.right =r self parent =p 3
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started