This repository is a comprehensive collection of C++ implementations covering a wide range of data structures and algorithms.
The repository is organized into various directories, each focusing on a specific topic within data structures and algorithms. From fundamental concepts like arrays and linked lists to more advanced topics like graph algorithms and dynamic programming, you'll find a combination of code examples I worked through on my learning journey to help deepen your understanding.
Contributions are encouraged and appreciated! If you have a new algorithm or data structure to add, or if you spot an error or improvement opportunity, feel free to submit a pull request.
- Arrays
- Binary Search Trees (BST)
- Backtracking
- Binary Trees
- Data Structures
- Dynamic Programming
- Graphs
- Hashmaps
- Priority Queues
- Recursion
- Sorting Algorithms
- Trees
- Tries
- Constructors.cpp
- HuffmanCode.cpp
In the "Arrays" directory, you'll find C++ implementations related to arrays. This includes algorithms and operations commonly used with arrays.
The "BST" directory contains implementations related to Binary Search Trees. You'll find code for creating, manipulating, and searching within BSTs.
In the "BackTracking" directory, you can explore implementations related to backtracking algorithms.
In the "BinaryTrees" directory, you can explore implementations related to binary trees. This includes tree traversal, node insertion, and other binary tree operations.
The "DataStructures" directory contains code related to various data structures. This may include implementations of stacks, queues, linked lists, and more.
In the "DynamicProgramming" directory, you'll find implementations related to dynamic programming algorithms.
In the "Graphs" directory, you'll find code for graph-related algorithms and data structures. This includes graph traversal, shortest path algorithms, and more.
In the "Hashmaps" directory, you'll find code for hashmap-related algorithms and data structures.
In the "PriorityQueues" directory, you'll find code for heap-related algorithms. This includes max and min heaps, k-sorted arrays, and other implementations.
The "Recursion" directory contains code that utilizes recursion for solving various problems, including those involving arrays and trees.
In the "Sorting_Algorithms" directory, you'll find implementations of different sorting algorithms such as bubble sort, selection sort, insertion sort, and more.
The "Trees" directory contains code related to tree data structures. This includes implementations of n-ary trees and various tree manipulation methods.
In the "Tries" directory, you'll find implementations related to trie data structures and algorithms.
This file contains updated implementations of constructors for the data structures and algorithms covered in this repository.
This file contains implementations related to Huffman coding algorithms.