Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

rjrahulraj/Algorithm

Repository files navigation

🧠 Algorithm Repository

Welcome to the Algorithm Repository β€” a collaborative platform for algorithmic learning and problem solving in C++, Java, and Python.

This repository is designed to be Hacktoberfest friendly πŸŽƒ and open for contributions from programmers around the world.


πŸ“‚ Repository Structure

Each branch represents a programming language:

Branch Language Description
cpp C++ Solutions and algorithms implemented in C++
java Java Solutions and algorithms implemented in Java
python Python Solutions and algorithms implemented in Python

⚠️ All commits and PRs must be made to the branch corresponding to the language you are contributing in.
πŸ’‘ If the language branch does not exist yet, create a new branch with the name of that language and add your solution there.


πŸ’» How to Contribute

You can contribute in two main ways:

1️⃣ Add Problem Solutions

  • Add solutions for problems from:
  • Each solution should include:
    • The problem statement or link
    • A clear explanation of your approach (AI tools like ChatGPT, Gemini are allowed for explanation)
    • Properly formatted and commented code

πŸ“‚ Example Folder Structure

cpp/ ┣ LeetCode/ ┃ β”— 001_Two_Sum.cpp ┣ GFG/ ┃ β”— Longest_Palindromic_Subsequence.cpp ┣ CodeChef/ ┃ β”— STARTER100_MXSMALL.cpp

yaml Copy code


2️⃣ Add Algorithms

  • Add algorithms in the algo/ folder with:
    • Clear explanation
    • Code implementation
    • Time & space complexity analysis

πŸ“‚ Example

algo/ β”— Dijkstra_Algorithm.cpp

yaml Copy code


βš™οΈ Contribution Guidelines

  1. Fork the repository
  2. Clone your fork locally:
git clone https://github.com/<your-username>/Algo.git
Checkout to the correct language branch or create one if it doesn’t exist:
bash
Copy code
git checkout cpp # or java / python
# OR create new branch for other language
git checkout -b <language-name>
Add your code in the appropriate folder
Commit changes:
bash
Copy code
git add .
git commit -m "Added [ProblemName] solution in [Language] with explanation"
Push your branch:
bash
Copy code
git push origin <branch-name>
Create a Pull Request (PR):
Base branch β†’ the corresponding language branch
Provide a clear PR title and description
Include problem link and summary of explanation
βœ… PR Acceptance Criteria
PRs will be merged if:
Code belongs to the correct language branch
Code is well-documented and formatted
Explanation is clear and thorough
Commit messages and PR title are meaningful
No plagiarism or spam
πŸ’‘ Solutions may use AI tools (ChatGPT, Gemini, etc.) for explanations, but code must be original and clear.

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /