Skip to content

A structured collection of essential algorithms implemented in C++ for learning, practice, and competitive programming.

Notifications You must be signed in to change notification settings

Mahin725/Algorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

64 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ“š Algorithms Collection in C++

Welcome to the Algorithms repository! This collection contains efficient and clean C++ implementations of core computer science algorithms. It is designed for practice, academic learning, competitive programming, and quick reference.


๐Ÿš€ Table of Contents


โœ… Features

  • Clean and modular C++ code
  • Covers essential algorithms in graph theory, dynamic programming, searching, etc.
  • Well-structured folder system
  • Ideal for students, developers, and competitive programmers

๐Ÿ“‚ Folder Structure

Each folder contains one or more .cpp files based on the algorithm category:

๐Ÿ“ 0-1-knapsack
๐Ÿ“ Bellman Ford Algorithm
๐Ÿ“ Breadth First Search (BFS)
๐Ÿ“ Cycle Detection mod-6
๐Ÿ“ Depth First Search (DFS) and 2D Grid
๐Ÿ“ Dijkstra Algorithm
๐Ÿ“ Dynamic Programming (DP)
๐Ÿ“ Floyd-Warshall Algorithms
๐Ÿ“ Graph Representations
๐Ÿ“ Two Pointers Technique
๐Ÿ“ Union find DSU
๐Ÿ“ knapsack variations

๐Ÿ“Œ Implemented Algorithms

Category Algorithms Included
Graph Algorithms BFS, DFS, Dijkstra, Bellman-Ford, Floyd-Warshall, Cycle Detection, DSU
Dynamic Programming 0-1 Knapsack, Knapsack Variations, Fibonacci (Bottom-up)
Search Techniques Two Pointers Technique
Data Structures Graph Representations, Union-Find
Miscellaneous 2D Grid DFS Traversal, Modulo-Based Cycle Detection

๐Ÿ› ๏ธ How to Use

  1. Clone this repository:

    git clone https://github.com/raihanuldev/Algorithms.git
    cd Algorithms
  2. Compile any algorithm file using g++:

    g++ path/to/your/code.cpp -o output
    ./output
  3. Explore, modify, and practice!


๐Ÿ”ฎ Future Plans

  • Add problem statements and sample test cases for each algorithm
  • Include time & space complexity notes
  • Integrate unit tests
  • Add advanced algorithms: Segment Trees, Trie, Suffix Arrays, etc.
  • Visual explanations (e.g. Graph traversal animations)

๐Ÿค Contributing

Contributions are welcome! To contribute:

  1. Fork this repository
  2. Create a branch: git checkout -b new-algorithm
  3. Add your algorithm inside a relevant folder
  4. Commit your changes: git commit -m 'Add new algorithm'
  5. Push to the branch: git push origin new-algorithm
  6. Open a Pull Request ๐Ÿš€

๐Ÿ“„ License

This project is licensed under the MIT License โ€“ you are free to use, modify, and share!


๐Ÿ‘จโ€๐Ÿ’ป Author

Raihanul Islam Sharif
๐ŸŽ“ CSE Student | ๐Ÿ’ผ Full Stack Developer | ๐Ÿง  C++ Problem Solver
๐ŸŒ GitHub: raihanuldev


โ€œStrive for clean code and clear logic โ€” your future self will thank you.โ€

About

A structured collection of essential algorithms implemented in C++ for learning, practice, and competitive programming.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages