/javascript-algorithms

JavaScript implementation of different computer science algorithms.

Primary LanguageJavaScript

About

This repository contains JavaScript implementations of different famous Computer Science algorithms.

API reference with usage examples available here.

Note: not all algorithms are well tested so bugs are quite possible.

Development

To install all dev dependencies

Call:

npm install

To setup repository with documentation

  • Go to the parent directory of the javascript-algorithms folder and call:
git clone https://github.com/mgechev/javascript-algorithms.git javascript-algorithms-docs
  • Go to the javascript-algorithms-docs folder and change current branch to gh-pages:
git checkout gh-pages

Now you can see index.html file in this folder and open it in your browser.

To update .html files with documentation

Go to the javascript-algorithms folder and call:

gulp jsdoc

and all files in javascript-algorithms-docs folder will be updated.

To run tests

Call:

gulp test

and all *.spec.js files will be executed.

Contributions

Fork the repo and make required changes. After that push your changes in branch, which is named according to the changes you did. Initiate the PR.

Make sure you're editor makes validations according to the .jshintrc in the root directory of the repository.

Before pushing to the repository run:

gulp build

If the build is not successful fix your code in order the tests and jshint validation to run successfully and after that create a pull request.

Contributors

mgechev AndriiHeonia Jakehp lygstate krzysztof-grzybek pvoznenko
mgechev AndriiHeonia Jakehp lygstate krzysztof-grzybek pvoznenko
jettcalleja kdamball lekkas infusion deniskyashif filipefalcaos
jettcalleja kdamball lekkas infusion deniskyashif filipefalcaos
designeng Microfed pkerpedjiev Xuefeng-Zhu mik-laj amilajack
designeng Microfed pkerpedjiev Xuefeng-Zhu mik-laj amilajack
ysharplanguage contra liesislukas millerrach fanixk shaunak1111
ysharplanguage contra liesislukas millerrach fanixk shaunak1111

License

The code in this repository is distributed under the terms of the MIT license.