Skip to content

Latest commit

 

History

History
52 lines (41 loc) · 2.08 KB

CONTRIBUTING.md

File metadata and controls

52 lines (41 loc) · 2.08 KB

Contributing

I would love to have contributors on this project. You can submit a pull request, create an issue, or provide any type of feedback. The language I know best at the moment is Python so the solutions may resemble the pythonic style, if you feel there's a more elegant and language specific solution for a problem, please let me know.

Priorities

These are the things I prioritize in a solution, in order of decreasing importance:

  • Performance (time)
  • Performance (memory)
  • Simplicity / Elegance
  • length of the code

Get Started

First fork the repository and then clone it using:

git clone git@github.com:your-username/algorithms.git

You may contribute by:

  • implementing new algorithms in the repo. Be sure to keep it under right section (e.g. array, dp, etc). Make a new section for it if it doesn't fall under any section.
  • optimizing or improving the existing algorithms.
  • adding a different solution for the problem.
  • finding and fixing bugs.
  • adding examples to explain the algorithms better.
  • adding test cases.

Pull Requests

Push to your fork and submit a pull request.

I will review and may suggest some changes or improvements or alternatives. Some things that will increase the chance that your pull request is accepted:

  • All Python algorithms should be written in Python 3.
  • Write clean and understandable code.
  • Properly comment the code and briefly explain what the algorithm is doing.
  • You may also explain the output using a minimal example.
  • Try to also include a couple of test cases for the algorithm.

Issues

Whenever you want a new algorithm to be added, or find some bugs in the existing algorithms, just submit an issue and feel free to discuss over it. Or you may resolve any of the existing issues.