Hey there! 👋
We’re so glad you’re here and interested in contributing to this project. Below, you'll find guidelines and instructions to help you get started. Let’s dive in! 🚀
- Getting Started
- How to Contribute
- What Can You Contribute?
- Submitting Your Changes
- Coding Standards
- Community Support
To get started, pull the repository to your local machine:
git clone https://github.com/Ashrockzzz2003/Data_Structures_and_Algorithms.git
cd Data_Structures_and_Algorithms
Start by forking this repository to create a copy under your GitHub account.
- Hit the Fork button on the repository page.
Clone your forked version:
git clone https://github.com/<your-username>/Data_Structures_and_Algorithms.git
cd Data_Structures_and_Algorithms
(Replace <your-username>
with your GitHub username.)
To keep your fork up-to-date with the original repository:
git remote add upstream https://github.com/Ashrockzzz2003/Data_Structures_and_Algorithms.git
Before making any changes, create a new branch:
git checkout -b feature/<branch-name>
Examples:
feature/add-dijkstra
fix/binary-search-bug
Now you’re all set to start coding!
There’s plenty to do! Here are some ways you can help:
- New Algorithms: If you have an algorithm we’re missing, bring it in!
- Bug Fixes: Fixing those pesky bugs!
- Documentation: Add examples, comments, or improve the README. This helps others understand the code better.
- Different approach and Proposing new problem: New approach to solve a existing problem in the repository. And if you feel like something could be added as a problem feel free to use the open issue and put your problem request as comments.
Once your changes are ready:
-
Commit Your Work
Write clear and concise commit messages:git commit -m "Add: Quick Sort implementation in Python"
-
Push Your Branch
Send your changes to your fork:git push origin feature/<branch-name>
-
Open a Pull Request
- Head to the original repository.
- Click Pull Requests > New Pull Request.
- Select your branch, add a meaningful title and description, and submit the PR. Let it be short and crisp.
-
Feedback Time
Reviewers might leave comments—don’t worry, it’s all to make your work shine! Update your code and resubmit when needed.
Great code is readable and consistent. Here are some tips to keep in mind:
- Document Your Code: Add comments, especially for tricky parts.
- Follow Standards:
- Python: Stick to PEP 8.
- Java: Follow the Google Java Style Guide.
- C++: Use camelCase for variables and meaningful function names.
- Go: Adhere to Effective Go.
- Test Your Code: Include test cases with inputs and expected outputs.
If you have any questions or suggestions:
- Questions: Open a discussion under the Discussions tab.
- Issues: Issues will be made available with bounty points for ACM AmWOC (Amrita Winter Of Code) and will be assigned on request to the participants.
We’re happy to have you onboard. 🚀