A comprehensive reference collection of 100+ C++ programs covering core computer science topics: data structures, algorithm design paradigms, operating system concepts, object-oriented programming, computer graphics, file handling, and competitive programming. Each file is a standalone, compilable program.
- 100+ standalone programs — each file is independently compilable with
g++ - Covers undergraduate and competitive programming syllabi
- Organized by topic — easy to locate implementations by concept name
- Includes both classical textbook algorithms and practical OOP examples
| Component | Technology |
|---|---|
| Language | C++11 / C++14 |
| Compiler | g++ / MSVC |
| Graphics | BGI (Borland Graphics Interface) for circle, ellipse, line programs |
| File | Structure |
|---|---|
linkedlist_implementation.cpp |
Singly Linked List |
binarytree_implementation.cpp |
Binary Tree |
avltree_implementation.cpp |
AVL Tree |
red black tree.cpp |
Red-Black Tree |
b tree.cpp |
B-Tree |
stack_implementation.cpp |
Stack |
queue.implementation.cpp |
Queue |
circular_queue_implementation.cpp |
Circular Queue |
deque_implementation.cpp |
Deque |
priority_queue.cpp |
Priority Queue |
segment tree.cpp |
Segment Tree |
bloom filter.cpp |
Bloom Filter |
perfect hashing.cpp |
Perfect Hashing |
| Paradigm | Examples |
|---|---|
| Greedy | Dijkstra, Kruskal MST, Coin Change, Container Loading, Job Scheduling, Knapsack, Subset Cover |
| Dynamic Programming | Knapsack DP, LCS, Matrix Chain Multiplication, Multistage Graph, Coin Change DP, Binomial Coefficient |
| Backtracking | N-Queens, Hamiltonian Circuit, Graph Coloring, Knapsack, Permutations, Subset Cover |
| Branch & Bound | 15-Puzzle, Knapsack B&B |
| Divide & Conquer | Strassen Matrix Multiplication, Karatsuba Long Integer, Merge Sort |
| Graph | Dijkstra, Adjacency List/Matrix, Dial's Algorithm |
| File | Concept |
|---|---|
fcfs_scheduling-os.cpp |
First Come First Served |
roundrobin_scheduling-os.cpp |
Round Robin |
SJFScheduling.cpp |
Shortest Job First |
fcfs_disk_scheduling.cpp |
Disk: FCFS |
scan_disk_scheduling.cpp |
Disk: SCAN |
cscan_disk_scheduling.cpp |
Disk: C-SCAN |
look_disk_scheduling.cpp |
Disk: LOOK |
sstf_disk_scheduling.cpp |
Disk: SSTF |
| File | Concept |
|---|---|
animal_virtual_function.cpp |
Polymorphism / Virtual Functions |
staff_inheritance.cpp |
Inheritance |
complex_operator_overloading.cpp |
Operator Overloading |
string_concat_operator_overloading.cpp |
String Operator Overloading |
friend_function_add_members.cpp |
Friend Functions |
template_calculator.cpp |
Function Templates |
inline_functions.cpp |
Inline Functions |
provide_access_exceptions.cpp |
Exception Handling |
file_operations.cpp, file_read.cpp, file_write.cpp
circle-graphics.cpp, ellipse-graphics.cpp, line-graphics.cpp
cesar_cipher.cpp, cipher_text.cpp, des cipher.cpp
bank_operations.cpp, library_management.cpp, product_management.cpp, hotel_bill_calculation.cpp, electricity_bill_calculation.cpp, bmi_calculation.cpp, employee_salary.cpp
# Using g++ (Linux / macOS / Windows with MinGW)
g++ -o output bubble_sort.cpp && ./output
# For graphics programs (requires BGI / WinBGIm on Windows)
g++ -o circle circle-graphics.cpp -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32Paste any file into Programiz C++ Compiler or OnlineGDB to run without installation.
All .cpp files are in the repository root. File names are descriptive and indicate the algorithm/concept.
CPP-Programming/
├── bubble_sort.cpp
├── dijkstra_algorithm.cpp
├── avltree_implementation.cpp
├── nqueen-backtracking.cpp
├── knapsack-dp.cpp
├── roundrobin_scheduling-os.cpp
├── ... (100+ files)
└── README.md
MIT License — see LICENSE for details.