Commit Graph

254 Commits

Author SHA1 Message Date
Simon
0ea24230d4 Patch 5 (#127)
* New function 'fromArray'

Function get array of Doubly Linked List Nodes, go through and append to currently list.

* New Test for new function 'fromArray'

* Minor changes

Minor changes about coding style.
2018-08-06 16:02:46 +03:00
Oleksii Trekhleb
7a4b829abe Fix issue #132 - Wrong Red-Black Tree pictures in README. 2018-08-02 16:43:54 +03:00
Oleksii Trekhleb
ecc8c65466 Add comments to Linked List code. 2018-07-30 15:38:04 +03:00
Oleksii Trekhleb
97926b1243 Add comments to Linked List code. 2018-07-30 15:35:28 +03:00
seIncorp
5105898aa7 Twice defined (#124)
* Twice defined

Parameter 'deletedTail' were defined twice.

* Update LinkedList.js

* Update LinkedList.js
2018-07-30 15:33:17 +03:00
Oleksii Trekhleb
6e897a0a7a Minor README updates. 2018-07-30 14:18:56 +03:00
Oleksii Trekhleb
305e30357c Add comments to HashTable hash function. 2018-07-29 08:28:03 +03:00
Oleksii Trekhleb
80e3216609 Add annotations to Trie. 2018-07-26 18:02:34 +03:00
Oleksii Trekhleb
39acb2b65d Avoid using toBeTruthy() and toBeFalsy() because of type coercion. 2018-07-26 16:14:26 +03:00
Oleksii Trekhleb
863dbdbac3 Fix issue #98. 2018-07-13 17:48:27 +03:00
Oleksii Trekhleb
afbdb89101 Update heap documentation. 2018-07-08 04:29:12 +03:00
Correy Lim
a3d099003d Improve data-structures/heap/README.md (#94)
* Update data-structure/heap/README.md

The overuse of parenthesis in the previous description made the
explanation of a heap more diffcult to read. Following technical
writing standards, the topic of the sentence should be at the
forefront of a sentence, to give the reader an idea of what is
going to be explained in said sentence.

The mention of min heap and max heap were previously in parenthesis, in
the middle of the sentence. This change informs the reader that there
are two types of heaps, with a preface indicating which one is being
explained.

* Add min heap picture and move max heap picture

Add a picture of a min heap below the explanation of a min heap.
Move the picture of a max heap below the explanation of a max heap.

* Italicize heap terminology

Italicize the terms 'max heap' and 'min heap' to make it clear to readers that new terminology is being introduced
2018-07-08 04:27:06 +03:00
Oleksii Trekhleb
17ad4dc4d1 Upgrade packages. 2018-07-05 16:30:00 +03:00
Oleksii Trekhleb
d0499d2544 Minor code style fixes for DoublyLinkedList. 2018-07-05 15:44:25 +03:00
Oleksii Trekhleb
a72fda4dfd Minor code style fixes for DoublyLinkedList. 2018-07-05 15:33:39 +03:00
Oleksii Trekhleb
6a5ed26bd2 Extend DoublyLinkedListNode tests. 2018-07-05 15:28:11 +03:00
Oleksii Trekhleb
a9eeea2ca8 Update doubly linked list README. 2018-07-05 15:25:51 +03:00
Huzaima Khan
6b354ad4ce Added doubly linked list (#92)
* Added doubly linked list

* improved doubly linked list coverage
2018-07-05 15:18:57 +03:00
Oleksii Trekhleb
e3b482c5e6 Update bloom filters description. 2018-06-30 21:48:57 +03:00
Oleksii Trekhleb
a2310c59d3 Delete false positive tests for bloom filter. 2018-06-30 20:46:34 +03:00
Oleksii Trekhleb
610b120e27 BloomFilter minor fixes. 2018-06-30 20:39:46 +03:00
Oleksii Trekhleb
b33b1fe1bc Update bloom filter README. 2018-06-30 20:23:02 +03:00
arnav-aggarwal
41a6430532 Add bloom filter (#84) 2018-06-30 20:07:19 +03:00
m-maksyutin
36e0bfeb32 Fix the value returned by DisjointSet union (#81)
* Fix LinkedList

* Fix the prepend method for the LinkedList

* Fix the remove method for the MinHeap

* Correct a comment

* Fix BST removal method

* Fix the findEdge method of the graph

* Fix the value returned by DisjointSet union
2018-06-27 16:22:54 +03:00
Oleksii Trekhleb
c96bbdf00e Code style fix. 2018-06-25 14:34:40 +03:00
m-maksyutin
88d038b5c8 Fix the findEdge method of the graph (#80)
* Fix LinkedList

* Fix the prepend method for the LinkedList

* Fix the remove method for the MinHeap

* Correct a comment

* Fix BST removal method

* Fix the findEdge method of the graph
2018-06-25 14:33:31 +03:00
Oleksii Trekhleb
a9502851f5 Update READMEs. 2018-06-23 13:21:07 +03:00
Oleksii Trekhleb
2334583635 Add setValue and nodeCopy methods to binary tree node. 2018-06-22 08:22:12 +03:00
m-maksyutin
bd5a16be71 Fix BST removal method (#74)
* Fix LinkedList

* Fix the prepend method for the LinkedList

* Fix the remove method for the MinHeap

* Correct a comment

* Fix BST removal method
2018-06-22 07:57:52 +03:00
m-maksyutin
9311735867 Correct a comment (#66)
* Fix LinkedList

* Fix the prepend method for the LinkedList

* Fix the remove method for the MinHeap

* Correct a comment
2018-06-18 16:30:30 +03:00
Oleksii Trekhleb
c3a961840d Fix BST removal method. 2018-06-13 06:39:18 +03:00
Oleksii Trekhleb
294bd2acb7 Update READMEs. 2018-06-06 07:54:38 +03:00
Oleksii Trekhleb
00fbba5438 Update tests. 2018-06-06 07:49:12 +03:00
Oleksii Trekhleb
183dade079 Update Fenwick Tree readme and do code style fixes. 2018-06-06 07:41:28 +03:00
Christopher Samuel
1a4fe11a80 Added Binary Indexed Tree / Fenwick Tree Implementation (#51)
* added fenwick tree implementation

* added fenwick tree implementation
2018-06-06 06:25:31 +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
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
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
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
Cyril Auburtin
b1a613e03e Use Map for TrieNode children (#27) 2018-05-29 05:13:12 +02:00
Federico Bozzini
f93d12d5dd Added missing return type (#23) 2018-05-27 18:20:04 +03:00
Oleksii Trekhleb
114748b876 Refactor peek function in Stack. 2018-05-24 09:10:48 +03:00
Oleksii Trekhleb
d596e1d485 Fix then > than typo. 2018-05-24 09:01:50 +03:00
Oleksii Trekhleb
3e0ac7486c Use Infinity instead of zero in Graph adjacency matrix to show that vertices are not connected. 2018-05-22 07:10:46 +03:00
Oleksii Trekhleb
2185212527 Update READMEs. 2018-05-21 16:51:21 +03:00
Oleksii Trekhleb
ef72e2de79 Update READMEs. 2018-05-21 16:48:21 +03:00
Oleksii Trekhleb
a41e4a18b7 Update READMEs. 2018-05-21 16:39:54 +03:00
Oleksii Trekhleb
0fc7b9d09d Generate adjacency matrix for graph. 2018-05-16 09:21:16 +03:00
Oleksii Trekhleb
44b0a99a80 Add Tower of Hanoi. 2018-05-14 08:56:44 +03:00
Oleksii Trekhleb
20d642b402 Add SCC. 2018-05-14 07:13:07 +03:00
Oleksii Trekhleb
0c2561197a Make it possible to reverse the graph. 2018-05-14 06:29:55 +03:00
Oleksii Trekhleb
ff8f9c49df Make it possible to delete all vertex edges at once. 2018-05-12 10:35:54 +03:00
Oleksii Trekhleb
808a1e713f Make it possible to delete edge from graph. 2018-05-11 16:58:39 +03:00
Oleksii Trekhleb
cb48efee79 Make it possible to delete edge from graph vertex. 2018-05-11 16:50:18 +03:00
Oleksii Trekhleb
1af824f448 Make it possible to use custom comparators for linked lists. 2018-05-11 16:30:28 +03:00
Oleksii Trekhleb
5f50bd9bb2 Add degree property to GraphVertex. 2018-05-09 09:35:34 +03:00
Oleksii Trekhleb
e73dc2dfd7 Add topological sorting. 2018-05-08 19:27:42 +03:00
Oleksii Trekhleb
cad8ccd9bb Add Prim. 2018-05-07 12:45:10 +03:00
Oleksii Trekhleb
50df3bf717 Update Graph. 2018-05-07 11:06:37 +03:00
Oleksii Trekhleb
47ac5fcd70 Add detect cycle. 2018-05-04 07:04:37 +03:00
Oleksii Trekhleb
843893e8e7 Add disjoint set. 2018-05-04 06:18:05 +03:00
Oleksii Trekhleb
2e76caa9d6 Add disjoint set. 2018-05-03 16:49:46 +03:00
Oleksii Trekhleb
5788575718 Add Bellman-Ford. 2018-05-03 09:58:00 +03:00
Oleksii Trekhleb
ce7a4a930f Add Dijkstra. 2018-05-03 06:47:09 +03:00
Oleksii Trekhleb
8b057b10d0 Make it possible to change priority of PriorityQueue. 2018-05-03 06:34:32 +03:00
Oleksii Trekhleb
9c1b8e48fd Make it possible to remove from Heap. 2018-05-02 21:22:12 +03:00
Oleksii Trekhleb
c0fe2a3f16 Update Heap. 2018-05-02 20:41:13 +03:00
Oleksii Trekhleb
59f61dc132 Add dijkstra. 2018-05-02 08:15:20 +03:00
Oleksii Trekhleb
36bbfed6a1 Add heap sort. 2018-04-14 10:29:36 +03:00
Oleksii Trekhleb
053b365f24 Add README. 2018-04-14 09:59:33 +03:00
Oleksii Trekhleb
8efebc1715 Add README. 2018-04-14 09:55:46 +03:00
Oleksii Trekhleb
0fac790e1b Add README. 2018-04-14 09:52:04 +03:00
Oleksii Trekhleb
781d5224e0 Add README. 2018-04-14 09:43:09 +03:00
Oleksii Trekhleb
3fad3735db Add README. 2018-04-14 09:39:36 +03:00
Oleksii Trekhleb
248f1bc3a8 Add README. 2018-04-14 09:36:15 +03:00
Oleksii Trekhleb
a7322a88eb Add README. 2018-04-14 09:33:38 +03:00
Oleksii Trekhleb
629de0b8f6 Add README. 2018-04-14 09:29:39 +03:00
Oleksii Trekhleb
773941843f Add README. 2018-04-14 09:26:51 +03:00
Oleksii Trekhleb
4d6d5da7bb Add README. 2018-04-14 09:22:23 +03:00
Oleksii Trekhleb
7045392737 Add README. 2018-04-14 09:18:21 +03:00
Oleksii Trekhleb
e27ccedf28 Update READMEs. 2018-04-12 08:46:35 +03:00
Oleksii Trekhleb
e05d159765 Use Comparator in heap. 2018-04-12 08:25:19 +03:00
Oleksii Trekhleb
ddd7f9fe0d Add getNeighbors method to Graph. 2018-04-11 08:42:17 +03:00
Oleksii Trekhleb
87ef6e2e48 Fix JSDoc. 2018-04-11 07:38:48 +03:00
Oleksii Trekhleb
67cdad8030 Add graph. 2018-04-10 11:42:32 +03:00
Oleksii Trekhleb
840635e613 Add playground. 2018-04-09 19:43:09 +03:00
Oleksii Trekhleb
8c46dbfb6d Make it possible to add objects to LinkedList. 2018-04-09 12:15:28 +03:00
Oleksii Trekhleb
8d21315b14 Add AVL Tree. 2018-04-06 09:17:52 +03:00
Oleksii Trekhleb
d10293c088 Add AVL Tree. 2018-04-06 09:11:08 +03:00
Oleksii Trekhleb
81253e8a5d Fix binary tree node. 2018-04-06 07:08:14 +03:00
Oleksii Trekhleb
9eefd13615 Fix binary tree node. 2018-04-06 07:01:16 +03:00
Oleksii Trekhleb
30c080ba02 Fix binary tree node. 2018-04-05 15:54:25 +03:00
Oleksii Trekhleb
d19149de8e Fix binary tree node. 2018-04-05 08:29:13 +03:00
Oleksii Trekhleb
b24763e249 Fix binary tree node. 2018-04-05 06:51:45 +03:00
Oleksii Trekhleb
97e6120b3f Refactor BST. 2018-04-04 09:21:03 +03:00
Oleksii Trekhleb
857edbf3a8 Add possibility for tree nodes to have height. 2018-04-04 09:11:26 +03:00
Oleksii Trekhleb
c79dfac2c5 Integrate codecov. 2018-04-04 07:39:42 +03:00
Oleksii Trekhleb
f5ae2360f2 More tests. 2018-04-04 07:02:56 +03:00
Oleksii Trekhleb
138c3d9905 Refactor MinHeap. 2018-04-03 18:17:14 +03:00
Oleksii Trekhleb
062f5a4929 Refactor MinHeap. 2018-04-03 18:04:44 +03:00
Oleksii Trekhleb
7dd977c3a4 Add comments. 2018-04-03 16:51:58 +03:00
Oleksii Trekhleb
9f8e763d69 Add binary search tree. 2018-04-03 08:47:42 +03:00
Oleksii Trekhleb
1c911aadf0 Add binary search tree. 2018-04-03 07:50:30 +03:00
Oleksii Trekhleb
b89e406444 Add binary search tree. 2018-04-03 07:37:19 +03:00
Oleksii Trekhleb
c5bccffe36 Add binary search tree. 2018-04-03 07:35:13 +03:00
Oleksii Trekhleb
1513c536a6 Add binary search tree. 2018-04-03 07:20:08 +03:00
Oleksii Trekhleb
873024079a Add binary search tree. 2018-04-03 06:41:45 +03:00
Oleksii Trekhleb
8caf3a2201 Add binary search tree. 2018-04-02 20:26:29 +03:00
Oleksii Trekhleb
fbfdce030e Add binary search tree. 2018-04-02 20:24:51 +03:00
Oleksii Trekhleb
d6be33842c Add binary search tree. 2018-04-02 17:50:56 +03:00
Oleksii Trekhleb
6e4d7a1750 Add Trie. 2018-03-30 20:45:51 +03:00
Oleksii Trekhleb
b7675f8834 Cleanup. 2018-03-30 18:08:11 +03:00
Oleksii Trekhleb
86a4069e26 Cleanup. 2018-03-30 10:37:24 +03:00
Oleksii Trekhleb
c4a40160bf Add big O info. 2018-03-30 10:15:33 +03:00
Oleksii Trekhleb
1eaab78371 Add big O info. 2018-03-30 10:13:58 +03:00
Oleksii Trekhleb
5e75378280 Add Heap. 2018-03-30 08:07:13 +03:00
Oleksii Trekhleb
09100eab44 Add Heap. 2018-03-30 08:03:26 +03:00
Oleksii Trekhleb
fcf6eebebe Add Algorithms. 2018-03-29 21:51:40 +03:00
Oleksii Trekhleb
8da6754523 Add Stack. 2018-03-28 17:01:46 +03:00
Oleksii Trekhleb
c8bfe9ffaa Add Queue. 2018-03-28 15:53:12 +03:00
Oleksii Trekhleb
6ffbd6eb55 Add HashTable. 2018-03-28 09:30:30 +03:00
Oleksii Trekhleb
ce40b52e09 Add HashTable. 2018-03-28 09:29:47 +03:00
Oleksii Trekhleb
97b8765a7d Add LinkedList. 2018-03-27 15:41:50 +03:00
Oleksii Trekhleb
309e7b59b7 Add LinkedList. 2018-03-27 15:41:26 +03:00