Commit Graph

75 Commits

Author SHA1 Message Date
Benjamin Scher Purcell
64f44f66bc more tests, revise existing tests 2017-02-26 13:12:51 -06:00
Benjamin Scher Purcell
e3980e5b80 add avl implementation 2017-02-25 14:29:26 -06:00
Emir Pasic
4ea857183a - optimization to bulk insert into heap as per @cristaloleg suggestion #32 2016-09-07 03:51:19 +02:00
Emir Pasic
196706bb29 - set key to key if direct match when inserting into red-black tree. fixes the issue when the key is a struct type, which is how treeset uses the red-black tree #31 2016-09-07 03:19:20 +02:00
Emir Pasic
0790df9fd0 - errcheck 2016-08-07 01:54:22 +02:00
Emir Pasic
efcbbe6274 - detailed extensive tests with breakdown on number of elements 2016-07-16 04:40:16 +02:00
Emir Pasic
b38c99bf33 - btree deletion fixes with more tests (done) 2016-07-14 08:28:11 +02:00
Emir Pasic
288c1a4ca3 - btree deletion with tests 2016-07-14 05:55:24 +02:00
Emir Pasic
eb4171fdb0 - btree Keys() and Values() implemented with tests (using iterator) 2016-07-12 03:05:00 +02:00
Emir Pasic
53898058bb - btree iterator implemented with tests 2016-07-12 02:53:48 +02:00
Emir Pasic
76711f5b71 - btree don't allow order less than 3
- btree Left(), Right(), LeftKey(), RightKey(), LeftValue(), RightValue() implementation with tests
2016-07-11 02:28:14 +02:00
Emir Pasic
4e3ff20469 - btree get and put tests 2016-07-11 01:00:52 +02:00
Emir Pasic
9663093961 - btree put fixes 2016-07-11 00:18:00 +02:00
Emir Pasic
2df9ce1ab5 - btree put fixes 2016-07-10 22:03:59 +02:00
Emir Pasic
eecaef5625 - btree Height() and String() implementations 2016-07-10 05:16:02 +02:00
Emir Pasic
ab73314ad4 - btree expose its root, nodes and entries (for extension purposes) 2016-07-09 04:13:51 +02:00
Emir Pasic
19bf8e5c15 - remove inOrder function in red-black tree and use iterator 2016-07-09 04:10:02 +02:00
Emir Pasic
28b826151a - btree insertion with tests 2016-07-09 03:57:27 +02:00
Emir Pasic
9563b15010 - btree insertion with tests 2016-07-09 03:57:18 +02:00
Emir Pasic
213367f1ca - replace long bsd text with short in all .go files 2016-06-27 04:21:09 +02:00
Emir Pasic
20229603ab - refactor all iterators and enumerables into separate files 2016-06-27 04:02:52 +02:00
Emir Pasic
02f40db0cf - test iterator end on reverse-iterable data structures
- fix red-black tree
2016-06-27 02:42:05 +02:00
Emir Pasic
f052c96069 - iterator end on reverse-iterable data structures 2016-06-27 00:41:32 +02:00
Emir Pasic
57162feff5 - rename Reset() to Begin() in iterators (this will allow End() which will make reverse loops more readable) 2016-06-27 00:08:01 +02:00
Emir Pasic
cbc23a5b79 - test iterator first on all iterable data structures 2016-06-26 23:58:23 +02:00
Emir Pasic
bdfeab4912 - iterator first on all structures with reversible iterators 2016-06-26 22:50:14 +02:00
Emir Pasic
3d1014bf63 - test iterator last on all structures with reversible iterators 2016-06-26 22:40:49 +02:00
Emir Pasic
f8b0747409 - iterator last on all structures with reversible iterators 2016-06-26 22:27:08 +02:00
Emir Pasic
3a938233a0 - test iterator reset on all structures 2016-06-26 21:44:23 +02:00
Emir Pasic
b86d413e66 - iterator reset on all structures 2016-06-26 20:50:49 +02:00
Emir Pasic
eb4bb224e3 - add reversible iterators to tree set and tree map 2016-06-25 21:01:33 +02:00
Emir Pasic
178bc76d62 - add reversible iterators to red-black tree 2016-06-25 20:45:43 +02:00
Emir Pasic
ae143689c6 - add reversible iterators to binary heap 2016-06-25 19:26:08 +02:00
Emir Pasic
d7a31571cc - add reversible iterators to lists (array list and doubly-linked list)
- documentation and tests updates
2016-06-25 18:17:48 +02:00
Emir Pasic
59bebe43ce - update all documentation to be in godoc style 2016-06-25 17:02:21 +02:00
Emir Pasic
ef9baa808a - golint 2016-06-24 21:52:16 +02:00
Emir Pasic
35457aba81 - fix spelling 2016-06-24 20:27:34 +02:00
Emir Pasic
ab6656e286 - refactor trees' tests 2016-06-24 20:23:54 +02:00
Emir Pasic
8cb4635c2c - code document all enumarable functions and iterators in containers 2016-06-24 00:08:04 +02:00
Emir Pasic
e4c3d8a0d8 - split iterators into two type (iterator with index and iterator with key) 2016-06-22 19:59:08 +02:00
Emir Pasic
255a3095cb - add iterator to redblack tree 2016-06-22 19:47:24 +02:00
Emir Pasic
6c3a5ce1cc - add iterator to binary heap 2016-06-22 06:18:08 +02:00
Emir Pasic
3b3edfc539 - naming conventions (calling interfaces by what they are) 2016-06-22 03:09:48 +02:00
Emir Pasic
d13e3d6b6a - Add Left(), Right(), Floor() and Ceiling() function to the red black tree with test and documentation update 2016-06-13 00:52:16 +02:00
Emir Pasic
160299d0f7 - fix spelling mistake everywhere (expacted -> expected) and go vet/fmt 2016-06-12 15:04:33 +02:00
Vlad Alexandru Ionescu
6bfa9f318d Add ability to get leftmost (minimum) and rightmost (maximum) keys in treemap. 2016-04-19 21:38:32 +01:00
Emir Pasic
f9305332a4 - expose comparator in binary heap
- fix comment
2016-03-28 08:01:46 +02:00
Emir Pasic
60c53a79f0 - expose Comparator in redblacktree and include @otnt changes 2016-03-28 07:54:17 +02:00
Emir Pasic
7ecff11d2d - revert, build failing 2016-03-28 07:17:39 +02:00
Emir Pasic
35539c048b Merge pull request #4 from otnt/master
Add Ceiling and Floor functions to redblacktree
2016-03-28 07:01:54 +02:00