Commit Graph

265 Commits

Author SHA1 Message Date
Oleksii Trekhleb
a1060c2a94 Merge branch 'master' of https://github.com/trekhleb/javascript-algorithms 2018-06-05 21:50:44 +03:00
Oleksii Trekhleb
6c892c4b2f Fix bug with primality test. 2018-06-05 21:50:08 +03:00
m-maksyutin
38688f25c5 Fix the remove method for the MinHeap (#50)
* Fix LinkedList

* Fix the prepend method for the LinkedList

* Fix the remove method for the MinHeap
2018-06-05 16:17:14 +03:00
Oleksii Trekhleb
9f83862212 Update README for segment tree. 2018-06-05 08:47:52 +03:00
Oleksii Trekhleb
434a5649cb Refactor segment tree implementation. 2018-06-05 08:45:00 +03:00
Oleksii Trekhleb
5784a4a95b Merge branch 'master' into segment-tree 2018-06-05 06:12:30 +03:00
Oleksii Trekhleb
74b93d36cb Add isPowerOfTwo functions. 2018-06-04 20:42:22 +03:00
Oleksii Trekhleb
c7610d58b1 Update README. 2018-06-04 06:57:33 +03:00
Vignesh Manoharan
2e5fd8d583 Segment Tree implementation (#45)
* added segment tree implementation - supports custom operation

* added readme for segment tree
2018-06-04 06:32:34 +03:00
m-maksyutin
beb8501aca Fix the prepend method for the LinkedList (#47)
* Fix LinkedList

* Fix the prepend method for the LinkedList
2018-06-04 05:21:42 +03:00
Oleksii Trekhleb
91d4714d19 Code styling fixes for Sieve of Eratosthenes. 2018-06-03 09:34:48 +03:00
Juan Pablo Valencia
943f83492a Adding Sieve of Eratosthenes (#46)
* Adding Sieve of Eratosthenes

* Typo
2018-06-03 09:25:15 +03:00
Oleksii Trekhleb
d2b8eabcf4 Update READMEs. 2018-06-02 22:21:59 +03:00
Oleksii Trekhleb
90b56bc3d3 Fix issue #37 with AVL tree. 2018-06-02 22:11:01 +03:00
Oleksii Trekhleb
924066bb0c Do minor optimisations to factorial function. 2018-06-02 09:40:32 +03:00
Oleksii Trekhleb
88bd8d7044 Add JSdocs for fibonacci. 2018-06-02 09:32:50 +03:00
Oliver Hepworth-Bell
d267d72524 Added fibonacci sequence as well as fibonacci nth, renamed functions accordingly (#36) 2018-06-02 09:31:09 +03:00
m-maksyutin
a63bc67cf4 Fix LinkedList (#42) 2018-06-02 09:23:55 +03:00
Oleksii Trekhleb
0edb1525ea Throw error on remove from red-black tree. 2018-06-02 08:51:45 +03:00
Oleksii Trekhleb
26d6b7877d Improve test-coverage for red-black tree. 2018-06-02 08:24:31 +03:00
Oleksii Trekhleb
19789c6a94 Add red-black tree. 2018-06-02 08:15:40 +03:00
Oleksii Trekhleb
48f7ea1ad5 Add one more test for BST. 2018-06-01 10:52:23 +03:00
Oleksii Trekhleb
4132522d4a Set up node comparator for BST. 2018-06-01 08:28:36 +03:00
Oleksii Trekhleb
02299b77e6 Add uncle property to binary tree node. 2018-06-01 05:16:07 +03:00
Oleksii Trekhleb
e6de25ecb3 Use HashTable in TrieNode. 2018-05-31 21:37:13 +03:00
Oleksii Trekhleb
5b3de38cca Update hash table methods. 2018-05-31 21:35:53 +03:00
Oleksii Trekhleb
ecd8d22fc6 Add new hash table methods. 2018-05-31 21:30:44 +03:00
Oleksii Trekhleb
f04626bc5c Return removed nodes in BST. 2018-05-31 08:29:59 +03:00
Oleksii Trekhleb
7a4265403c Use Map for node meta data. 2018-05-31 07:59:20 +03:00
Oleksii Trekhleb
e572de63cb Create getters and setters for meta data in binary tree node. 2018-05-31 07:37:31 +03:00
Oleksii Trekhleb
02d7abcf65 Make it possible to insert meta information to bst node. 2018-05-31 07:16:35 +03:00
Oleksii Trekhleb
33ac110cce Make it possible to attach meta information to binary tree node. 2018-05-31 07:03:33 +03:00
Oleksii Trekhleb
c18fd63a53 Fix naming in binary search tree test. 2018-05-31 06:23:51 +03:00
Oleksii Trekhleb
b62d9a43b4 Clean up in binary search tree constructor. 2018-05-30 08:18:45 +03:00
Oleksii Trekhleb
b7e27b2f07 Remove parent parameter from binary tree node constructor to simplify syntax. 2018-05-30 08:16:41 +03:00
Oleksii Trekhleb
fcc546347d Code style fixes. 2018-05-30 08:00:25 +03:00
Oleksii Trekhleb
8d868ae582 Code style fixes. 2018-05-30 07:47:49 +03:00
Oleksii Trekhleb
797a6f28a3 Make it possible to use objects as a values for binary search tree nodes. 2018-05-30 07:43:39 +03:00
Oleksii Trekhleb
3ae9c40416 Test that it is possible to use objects and binary tree node values. 2018-05-30 07:19:48 +03:00
Oleksii Trekhleb
625217a9c2 Code style fixes. 2018-05-29 11:19:08 +03:00
Oleksii Trekhleb
caec97e562 Add Radix Sort illustration. 2018-05-29 09:43:23 +03:00
Oleksii Trekhleb
afd5617144 Code style fixes for RadixSort. 2018-05-29 09:01:16 +03:00
Robert Taussig
71985337b5 Radix sort (#28)
* Add in-place sort to QuickSort.js

* Fix linting errors and clean up comments

* Change implementation to address lint errors

* Trailing space and undefined variable

* Create own class for in-place quicksort and use tests

* Add trailing space at end of file

* Fix placement of visitedCallback, explain itial destructuring

* Implement Radix Sort

Remove excess line

Reorganize RadixSort of match structure of other classes

Write tests for RadixSort and additional test constants

Create README

Update main readme to include radix sort
2018-05-29 07:38:19 +02:00
Oleksii Trekhleb
0c1f6851d5 Add counting sort. 2018-05-29 07:29:28 +03:00
Cyril Auburtin
b1a613e03e Use Map for TrieNode children (#27) 2018-05-29 05:13:12 +02:00
Oleksii Trekhleb
30ae3230d1 Do some code formatting on QuickSort algorithm. 2018-05-27 22:23:40 +02:00
Robert Taussig
bf5d7b338c Add in-place sort to QuickSort.js (#16)
* Add in-place sort to QuickSort.js

* Fix linting errors and clean up comments

* Change implementation to address lint errors

* Trailing space and undefined variable

* Create own class for in-place quicksort and use tests

* Add trailing space at end of file

* Fix placement of visitedCallback, explain itial destructuring
2018-05-27 23:11:13 +03:00
Federico Bozzini
f93d12d5dd Added missing return type (#23) 2018-05-27 18:20:04 +03:00
Oleksii Trekhleb
2e3860f357 Add linear search. 2018-05-26 01:01:08 +03:00
ak4522912
7ed425ed3a Added Linear Search (#20)
Added algorithm for the basic and useful linear search
2018-05-26 00:43:50 +03:00