Skip to content

Repository files navigation

🚀 Data Structures and Algorithms (DSA)

GitHub stars GitHub forks GitHub issues GitHub license GitHub contributors GitHub last commit GitHub language count Top language Repo size

Welcome to the DSA Practice Hub – a comprehensive repository to learn and implement Data Structures and Algorithms using C++ and Python. Whether you're preparing for coding interviews or just getting started, this repo provides structured learning, curated problems, and clean implementations.


📁 Repository Structure

📁 DSA
│── 📁 CPP                # DSA solutions in C++
│── 📁 Python             # DSA solutions in Python
│── 📁 Notes              # Conceptual explanations and strategies
│── 📁 Basic_Maths        # Number theory, GCD/LCM, etc.
│── 📁 Arrays             # Array problems
│── 📁 Sorting            # Sorting algorithms
│── 📁 Binary_Search      # Binary search problems and patterns
│── 📁 Hashing            # Hash tables, maps, frequency
│── 📁 Recursion          # Recursion and backtracking
│── 📁 Strings            # String manipulation problems
│── 📄 README.md

Each topic folder contains:

  • Concepts & Notes
  • Code Implementations (C++)
  • Practice Problems from LeetCode, GFG, Codeforces, etc.

📚 Learning Roadmap

Follow this roadmap if you're learning DSA step by step:

  1. ✅ Arrays & Strings
  2. ✅ Sorting & Searching Algorithms
  3. ✅ Recursion & Backtracking
  4. ✅ Hashing & Hashmaps
  5. ✅ Two Pointers / Sliding Window
  6. ✅ Bit Manipulation
  7. ✅ Stack, Queue, Linked List
  8. ✅ Trees & Binary Trees
  9. ✅ Graph Algorithms (BFS, DFS, Dijkstra’s, Union-Find)
  10. ✅ Dynamic Programming
  11. ✅ Advanced Topics (Trie, Segment Tree, Fenwick Tree)

🔧 Getting Started

  1. Clone the repo

    git clone https://github.com/krishnakamalbaishnab/Data-Structures-and-Algorithms.git
    cd Data-Structures-and-Algorithms
  2. Browse topics Navigate to any folder (Arrays, Graphs, etc.) and run the code using your preferred compiler or interpreter.


🌟 Resources & References


🤝 Contributing

We welcome contributions! If you’d like to add new problems, improve existing code, or write notes:

📌 Contribution Guidelines

  • Fork the repo
  • Create a branch: feature/your-feature-name
  • Add your code under the correct folder (e.g., Arrays/)
  • Use meaningful filenames: two_sum.py / reverse_array.cpp
  • Comment your code with explanations
  • Submit a Pull Request 🚀

See CONTRIBUTING.md for full details.


📄 License

This project is licensed under the MIT License.


✨ Let's Grow Together

This repository aims to be a collaborative and evolving DSA resource for all learners. Add your ideas, raise issues, and help others grow.
Let’s master DSA together 💪

Happy Coding! 🚀
Krishna Kamal Baishnab

About

DSA With Notes

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages