Welcome to my comprehensive Data Structures and Algorithms (DSA) repository! 🚀
This repository is a structured collection of my solutions and implementations for various DSA concepts. It serves as a personal knowledge base and a practical reference guide to mastering algorithmic problem-solving.
The repository is neatly organized by topic, covering a wide array of fundamental and advanced data structures and algorithmic patterns. Each folder contains solutions to specific problems or implementations of core concepts, primarily written in C++ and Java.
-
Basic to Advanced Data Structures:
Array,String,Linked List(Singly & Doubly)Stack and queueBinary Tree&Binery Search Tree(BST)Graph(BFS, DFS, Shortest Paths, Minimum Spanning Trees)HEAPandTRIE
-
Algorithmic Paradigms:
- Recursion & Backtracking
- Sorting & Searching (including extensive
Binary Searchapplications) - Dynamic Programming (DP) (1D, 2D, Strings, Subsequences)
- Bit Manipulation
-
Specialized Scenarios:
Unique Data Structures by coding platfroms
- C++: The primary language for most algorithmic solutions, utilizing STL for optimal performance.
- Java: Used extensively for Object-Oriented implementations and standard library capabilities.
- Clone the repository:
git clone https://github.com/shrihari7396/DSA.git
- Explore by Topic: Navigate into the specific folder of the topic you want to study (e.g.,
cd Graph/ShortestPathAlgorithms). - Review the Code: Open the
.cppor.javafiles to review the problem-solving logic, time-complexity considerations, and clean coding practices.
Consistent practice builds algorithmic intuition. Keep coding! 💻