Supervisor: Dr Shimaa Ibrahim.
Supervisor assistant: Eng Mohamed Hassan.
Student: Mahmoud Sayed Abd El-Magied.
The project contains two types of binary tree data structure implementations: - generic implementations -
- Binary Search Tree (BST)
- AVL tree
The project enables users to do several operations
- Insert data: inserting new key and its value.
- Modify data: modifying value of specific key
- Insert or modify: insert key and its value if the key doesn’t exist, otherwise modifying the key’s value with the new value.
- Contains key: determine if the key exists or not.
- Get value: get the value if specific key.
- Print: print the data in non-decreasing order according to its keys.
I used Eclipse CDT to implement this project and used git as a version control system.
The project contains:
- Map header: contains the tree’s attributes and functions definitions.
- DS namespace: contains the tree class and its implementation.
- Map class: contains the tree attributes and functions implementations.
- BST class
map | |
+ map()
|
default constructor constructor destructor bool T1 void void void void |
- _search(node*, T1)
|
node* void void void void |
- AVL class
map | |
+ map()
|
default constructor constructor destructor bool T1 void void void void |
- _search(node*, T1)
|
node* void void void void |