Welcome to the Data Structures and Algorithms in C++ repository! This project is designed to help programmers and students understand the implementation of various data structures and algorithms in C++ with optimized solutions and explanations.
Clone this repository using the following command:
git clone https://github.com/your-username/dsa-cpp.git
cd dsa-cpp
Make sure you have a C++ compiler installed:
- GCC (MinGW for Windows)
- Clang
- Visual Studio (Windows)
To compile and run a program:
g++ filename.cpp -o output
./output
- Arrays
- Linked Lists (Singly, Doubly, Circular)
- Stacks (Array & Linked List implementation)
- Queues (Simple, Circular, Priority Queue)
- Trees (Binary Tree, BST, AVL, Heap)
- Graphs (Adjacency Matrix/List, BFS, DFS, Dijkstra's Algorithm)
- Hash Tables (Chaining & Open Addressing)
- Linear Search
- Binary Search
- Bubble Sort
- Selection Sort
- Insertion Sort
- Merge Sort
- Quick Sort
- Recursion (Factorial, Fibonacci, Tower of Hanoi)
- Dynamic Programming (Knapsack, LCS, Fibonacci Memoization)
- Graph Algorithms (Dijkstra, Kruskal, Prim)
We welcome contributions! Follow these steps:
- Fork this repository.
- Create a new branch (
feature-branch
). - Commit your changes.
- Push to your fork and submit a Pull Request.
Happy Coding! 🚀