Welcome to my repository focused on Data Structures and Algorithms (DSA)! My aim with this repository is to share my knowledge and document my journey as I dive deep into the world of DSA.
Data Structures and Algorithms are the fundamentals of any programming language. Understanding these can be a major tool when it comes to solving complex problems. In this repository, I am focusing on learning, exploring, and implementing various data structures and algorithms with the aim of improving problem-solving skills.
- Arrays
- Stacks
- Queues
- Linked List
- Trees
- Graphs
- Hashing
- Heaps
- Sorting Algorithms
- Searching Algorithms
- Graph Algorithms
- Dynamic Programming
- Greedy Algorithms
- Divide and Conquer
- To understand the importance of data structures and algorithms.
- To analyze algorithms (time and space complexity).
- To implement data structures and algorithms.
- To solve problems using data structures and algorithms.
The implementations for DSA in this repository are primarily done in the following languages:
- Python
- Java
- C++
However, the core logic remains the same, and hence, these solutions can be translated into any other programming language.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Please make sure to update the tests as appropriate.