This repository serves as a portfolio of my competitive programming journey and proficiency in algorithmic problem-solving using C and C++. It tracks my foundational training, dedicated study of core Data Structures, and implementation of various Graph and Optimization Algorithms.
| Language | Total Problems Solved | Status |
|---|---|---|
| C/C++ | 204 | Ongoing Development |
The solutions are divided into three main categories, reflecting a sequential learning path:
| Folder | Problem Count | Primary Focus |
|---|---|---|
| Initial_Training_Solutions | 104 | C/C++ syntax, basic implementation, mathematical logic. |
| Data_Structure_Training_Solutions | 66 | Foundational Data Structures and their efficient C++ implementation. |
| Algorithms_Training_Solutions | 34 | Core Graph, Search, and Optimization Algorithms. |
This folder contains the solutions from my initial training phase, primarily focused on establishing fluency in C and C++ syntax, control structures (loops, conditionals), and basic mathematical problem implementation.
- Goal: Master the core language features and translate beginner-level problems into functional code.
- Content Includes: Basic I/O, simple mathematical formulas, loops, and conditional logic problems.
- Organization: Files are generally organized chronologically by the order they were solved.
This section demonstrates dedicated practice in implementing and utilizing essential data structures, which are foundational to efficient problem-solving.
- Goal: Deepen understanding of how to implement and choose the correct data structure for maximizing runtime efficiency.
- Key Data Structures Covered:
- Singly Linked Lists
- Doubly Linked Lists
- Vectors/Dynamic Arrays
- Queues and Priority Queues
- Stacks
- Binary Search Trees (BST)
- Heaps
- Sets and Maps
This folder showcases proficiency in advanced algorithms necessary for competitive programming and complex engineering problems.
- Goal: Implement and apply standard graph traversal, shortest path, and optimization algorithms to solve problems.
- Key Algorithms Covered:
- Shortest Path: Dijkstra's Algorithm, Bellman-Ford Algorithm, Floyd-Warshall Algorithm
- Graph Traversal: Breadth-First Search (BFS), Depth-First Search (DFS)
- Set Operations: Disjoint Set Union (DSU) / Union-Find
- Optimization: Dynamic Programming (DP), Knapsack Problem Variations