A console-based Blood Bank Management System developed in C++ using fundamental Data Structures. This project efficiently manages blood inventory, donor records, and patient requests.
This system simulates real-world blood bank operations by allowing users to manage donors, track blood units, process patient requests, and maintain issue history.
- Linked List → Blood Inventory Management
- Queue (FIFO) → Patient Requests Handling
- Binary Search Tree (BST) → Donor Records Management
- Stack (LIFO) → Blood Issue History & Undo Feature
- Add blood units with date
- View complete inventory
- Search blood group
- Check low stock levels
- Remove expired blood (after 30 days)
- Add donor with eligibility check
- Delete donor by ID
- Search donor by ID
- Display all donors (sorted using BST)
- Add patient request
- Process requests (FIFO order)
- View pending requests
- Cancel request
- Store issued blood records
- View recent issues
- Count total issues
- Undo last issued record
This project demonstrates practical implementation of core Data Structures in a real-world scenario:
- Linked Lists
- Queues
- Stacks
- Binary Search Trees
- Language: C++
- Concepts: Data Structures & Algorithms (Linked List, Queue, Stack, BST)
- Compiler: Any standard C++ compiler (g++, Dev C++, CodeBlocks)