Implementing Self Balancing BSTs (AVL & Red Black)
- We are required to implement a couple of the well known self balancing BSTs which are:
- AVL Tree
- Red Black Tree
- In addition to implementing a simple application - English Dictionary CLI Application - that utilizes the previously mentioned trees, providing the user the basic functionalities needed, such as:
- Searching
- Deleting
- Inserting
- Queries about the tree size & height.
- This lab was developed as a part of the academic course CSE 224: Data Structures & Algorithms that is being studied on the 6th semester (spring 2023) in the department of Computer and Systems Engieering, Alexandria University. we were assigned to implement those self balancing BSTs and build - using them - a simple CLI application.
- Understanding the essential functionalities behind the self balancing BSTs that assure the BSTs properties in addition to preserving the tree height in an acceptable range of complexity O(log n) with a tolerence - depending on the logic of the tree being implemented. -
- Download the ZIP file from here
- Extract it
- Open the Self Balancing BSTs directory using your favourite Java IDE.
- Build the project & run the CLI.CLI_Demo class
- Can be found HERE