Manage a large entry of books and users for an average sized library. The system will be able to:
- Search books based on ISBN, title, author, and publisher (as a guest, user, and admin)
- Create new books, delete existing books, and modify an existing book given an ISBN (for admin)
- Add or remove book stocks given an ISBN (for admin)
- Register a new user and a user login system
- Allow user to borrow and return a book from the library
- Show users information and their currently borrowed books (for admin)
Data structure, algorithm, and data used:
- B+Tree, for both books and users. Fast single operation (O(log N)), relatively fast to return all values (O(N)), compared to other BST.
- Linked list to store history and user's borrowed books.
- Data persistent using JSON. Used third party SimpleJSON library for C++ to JSON parser and vice versa.
- Books data set and Mockaroo for users data set.
- Compile the
main.cpp
program - Run the
main.exe