Open sean-public opened 7 years ago
Any new data structure is a good addition to GoDS, so I might use parts of your code as inspiration to create SkipLists.
Regarding thread-safety, GoDS tries to keep its hands clean from that problem and that should be handled on another abstaction level with mutex or whichever... repeat #68 #84 (also noted in the documentation and comments)
@sean-public i took a brief look at your implementation and testing various implementations. i think you have done a good job and would like to move from there.
however, two things i would change due to nature of GoDS which despite trying to stay un-opinionated, things took a path.
do these two suggestions sound reasonable?
@sean-public May I help with this
It has been a few years, let me review everything and get back to you.
I think it would be useful to have skip lists included in the GoDS collection.
I previously studied the publicly available Go skip list implementations and found some issues with each. I then created a very fast, threadsafe skip list of my own (under MIT license). I believe it is one of the best foundations to work from for this data structure and can easily be integrated into GoDS.
If you like, I can work on a pull request to include my skip list implementation with the appropriate interface. First, I wanted to make sure this would be useful and to ask what specific details I should watch for / include to ensure smooth compatibility.