[x] This pull request is all my own work -- I have not plagiarized.
[x] I know that pull requests will not be merged if they fail the automated tests.
[x] This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
[x] All new JavaScript files are placed inside an existing directory.
[x] All filenames should use the UpperCamelCase (PascalCase) style. There should be no spaces in filenames.
Example:UserProfile.js is allowed but userprofile.js,Userprofile.js,user-Profile.js,userProfile.js are not
[x] All new algorithms have a URL in its comments that points to Wikipedia or other similar explanation.