Skip to content

A comprehensive collection of Data Structure and Algorithm implementations, organized by topic — built and maintained by @yamiSukehiro2907. This repository is aimed at helping learners and developers strengthen their DSA concepts through clean, practical examples and interview-style problems.

Notifications You must be signed in to change notification settings

vimalyad/data_structure_algorithms

Repository files navigation

🚀 DSA — Data Structures & Algorithms

A comprehensive collection of Data Structure and Algorithm implementations, organized by topic — built and maintained by @yamiSukehiro2907.
This repository is aimed at helping learners and developers strengthen their DSA concepts through clean, practical examples and interview-style problems.


📂 Repository Structure

DSA/
├── Go/Recursion-1         # Solving interview questions in Go (recursion focus)
├── array                  # Array algorithms & problems
├── binary_tree            # Binary tree data-structures & problems
├── bit_manipulation       # Bit-wise operations & problems
├── graph                  # Graph data-structures & graph algorithms
├── linkedlist             # Linked list data-structures & problems
├── map                    # Map / HashMap related problems
├── queue                  # Queue and deque implementations
├── recursion              # Recursion-based problems
├── stack                  # Stack data-structure & problems
├── tries                  # Tries data-structure & problems
├── .idea                  # IDE configuration files (local development)
└── README.md              # ← You are here

🎯 What This Repository Contains

  • Topic-wise folders dedicated to individual data structures or algorithmic paradigms.
  • Multiple code examples and common interview problems.
  • A separate folder for Go language (Go/Recursion-1) demonstrating recursion problems.
  • Structured and modular approach for easy understanding.
  • Ideal for DSA practice, interview preparation, and concept revision.

✅ Why and How to Use

💡 Why

  • Learn, practice, and master essential DSA topics step by step.
  • Suitable for beginners, students preparing for coding interviews, and developers revising core concepts.
  • Helps build strong problem-solving skills and clean coding habits.

🧩 How

  1. Pick a topic folder (e.g., graph, bit_manipulation, or linkedlist).
  2. Explore the source files inside — each one contains implementations or problems on that topic.
  3. Try to understand and reimplement the code on your own.
  4. Analyze time and space complexity of each approach.
  5. Modify, extend, or optimize the code to improve your skills.
  6. Optionally, explore the Go/Recursion-1 folder for recursion exercises written in Go.

🔍 Tips for Getting Started

  • Begin with fundamental topics like array and stack before moving to advanced ones like graph or binary_tree.
  • Maintain consistent naming and folder structure when adding your own files.
  • Track your progress — mark solved problems and revisit challenging ones later.
  • Compare multiple approaches (iterative, recursive, optimized).
  • Study patterns like divide and conquer, two-pointer, sliding window, etc.

🧠 Topics Covered

  • Data Structures

    • Arrays, Linked Lists, Stacks, Queues, Trees, Graphs, Hash Maps, Heaps
  • Algorithms

    • Sorting & Searching
    • Recursion & Backtracking
    • Bit Manipulation
    • Greedy Algorithms
    • Graph Traversals (BFS, DFS)
    • Dynamic Programming

📝 Contributing

Contributions are always welcome!

If you'd like to add new problems, improve solutions, or update documentation:

  1. Fork this repository.

  2. Create a new branch:

    git checkout -b feature/new-topic
  3. Add your code or documentation.

  4. Commit your changes:

    git commit -m "Added [topic/problem name]"
  5. Push the branch:

    git push origin feature/new-topic
  6. Open a Pull Request.

💡 Follow the folder structure and naming conventions for better organization.


📜 License

This project is open-source and available for educational and personal use. You’re free to learn from, modify, and share the code with proper attribution.


💬 Contact

For queries, feedback, or suggestions — open an Issue on GitHub or connect directly via GitHub discussions.


🌟 If you found this helpful, don’t forget to star the repo!

Happy Coding and Keep Learning! 🚀

About

A comprehensive collection of Data Structure and Algorithm implementations, organized by topic — built and maintained by @yamiSukehiro2907. This repository is aimed at helping learners and developers strengthen their DSA concepts through clean, practical examples and interview-style problems.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published