Data Structures and Algorithms Project
This is a Contact Management System that uses a Binary Search Tree (BST) to store and manage contact information such as names and phone numbers, a Queue to batch search and a Stack to undo deletion. The system allows users to add, search, delete, and undo deletions of contacts. It also provides a batch search feature for processing multiple search queries at once.
- Add Contact: Insert new contacts into the system with a name and phone number.
- Display Contacts: Display all contacts stored in the system.
- Search Contact: Search for a contact by phone number.
- Delete Contact: Delete a contact by phone number, with the ability to undo the deletion.
- Undo Last Deletion: Restore the last deleted contact.
- Batch Search: Perform multiple phone number searches at once using a queue.
- Search by Name: Placeholder feature (not fully implemented).
- C++: The system is written in C++ using object-oriented programming principles.
- Binary Search Tree (BST): Efficient search, insert, and delete operations.
- Stack: Used to store recently deleted contacts for undo functionality.
- Queue: Used to handle multiple search queries for batch search.
- C++ compiler (e.g., GCC, MinGW, Clang)
- C++11 or later
- Clone the repository:
git clone https://github.com/namher-sec/DSA-Project.git cd DSA-project
- Build the Program:
Ensure you have a C++ compiler (e.g.,g++
) installed. Then compile the program:
g++ -o project project.cpp
- Run the program:
./project