Commit Graph

105 Commits

Author SHA1 Message Date
Paul Cruickshank
962a86dc92 Create an iterator at a specific node 2020-06-29 19:27:19 +01:00
emirpasic
4bc610bb3f TreeMap Floor and Ceiling functions 2018-09-23 01:35:23 +02:00
emirpasic
5123d6be01 - fix comments/documentation, rigorous serialization testing 2018-09-21 04:45:26 +02:00
emirpasic
370f7ab252 - fix https://github.com/emirpasic/gods/issues/85 2018-09-20 18:07:43 +02:00
Benjamin Scher Purcell
08df807efe speed up redblack put performance 2017-04-06 11:33:07 -05:00
Emir Pasic
7eadb02f45 - all trees (de)serialization 2017-03-06 04:18:23 +01:00
Emir Pasic
42299026d8 - flip the output of avl tree (swap left with right children in output to mimick the output given by red-black tree) 2017-03-05 22:25:29 +01:00
Emir Pasic
bf32da08f2 - mimicking iterator behavior as with red-black tree (copied/pasted same test from red-black tree and fixed the iterator logic) 2017-03-05 21:47:47 +01:00
Emir Pasic
240822f445 - avl tree: reshuffle functions around to resemble the red-black tree ordering of functions (makes it easier to maintain code of various trees) 2017-03-05 21:33:07 +01:00
Emir Pasic
9f8722300a - AVL tree, remove dynamic func initialization within a func, simply extract those put/remove func on its own 2017-03-05 21:26:42 +01:00
Emir Pasic
d6611c11d3 - getting rid of min/max from avl tree for now, until we figure out if these should be implemented on all trees (probably, yes) 2017-03-05 21:09:28 +01:00
Emir Pasic
31294e57de - remove copy-constructor like initialization in avl tree, could be ambiguous for clients of what the output might be. an explicit initialization with explicit comparator is a lot more obvious, more code, but more obvious. 2017-03-05 21:04:53 +01:00
Emir Pasic
59734f8164 - avl tree: expose children and parent nodes, can be useful when extending structure to have access to these 2017-03-05 21:03:01 +01:00
Emir Pasic
f480e9419a - simplify avl tree by exposing its comparator , i.e. del getter for comparator 2017-03-05 20:57:53 +01:00
Emir Pasic
6f20e11a99 - remove logging and panics from avl tree 2017-03-05 20:54:33 +01:00
Emir Pasic
dbba07eb57 - go fmt/vet 2017-03-05 20:50:19 +01:00
Emir Pasic
6c67eb0b06 - revert some of changes coming from avl tree merge 2017-03-05 20:48:18 +01:00
Emir Pasic
b5004c7e71 - fix import path 2017-03-05 20:48:04 +01:00
Emir Pasic
cac4f90f91 - move license of avl tree to root's license 2017-03-05 20:41:29 +01:00
Benjamin Scher Purcell
38b9436208 fix tests 2017-02-26 21:45:46 -06:00
Benjamin Scher Purcell
c49ab09dea fix more travis issues 2017-02-26 21:18:37 -06:00
Benjamin Scher Purcell
b8c9d1188f fix travis errors 2017-02-26 21:00:43 -06:00
Benjamin Scher Purcell
5507a9ec4d Revert "fix import paths back to emirpasic" The paths have to point to spewspews for the build to succeed
This reverts commit 6da2e38be5.
2017-02-26 20:30:24 -06:00
Benjamin Scher Purcell
6da2e38be5 fix import paths back to emirpasic 2017-02-26 20:20:24 -06:00
Benjamin Scher Purcell
dfbd06908b fix golint issues 2017-02-26 20:14:08 -06:00
Benjamin Scher Purcell
0e4eb1c32c convert treemap in the same way as treeset 2017-02-26 20:10:35 -06:00
Benjamin Scher Purcell
67a0d2f547 Make treeset take an interface, make the trees satisfy that interface 2017-02-26 19:46:04 -06:00
Benjamin Scher Purcell
d84c1f0a42 fix documentation 2017-02-26 18:52:00 -06:00
Benjamin Scher Purcell
2339521ad9 put tests back 2017-02-26 18:49:18 -06:00
Benjamin Scher Purcell
d43b189795 add random put and remove 2017-02-26 13:37:01 -06:00
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