An open API service indexing awesome lists of open source software.

https://github.com/stranger6667/veb

Rust implementation of a van Emde Boas tree
https://github.com/stranger6667/veb

Last synced: 4 days ago
JSON representation

Rust implementation of a van Emde Boas tree

Awesome Lists containing this project

README

          

# vEB

A WIP Rust implementation of a van Emde Boas tree.

```rust
fn main() {
let mut tree = veb::VebTree::new(1024);
tree.insert(50);
assert!(tree.contains(50));
assert!(!tree.contains(49));
}
```

**NOTE**: This is an alpha version and is not ready for production use.

TODO:
- [x] Insert
- [x] Contains
- [x] Delete one
- [ ] Delete all
- [ ] Store values associated with keys
- [x] Find next
- [ ] Find prev
- [ ] Size
- [ ] Iteration + exact size iteration + fused, double ended iterator
- [ ] Extend from iterator
- [ ] Drain / drain filter / retain / take
- [ ] Default / Debug
- [ ] First / last (with pop)
- [ ] Append
- [ ] Fuzzing
- [ ] Generic over T
- [ ] Clone
- [ ] Eq
- [ ] Some `From` impls (e.g. `&[usize]`)
- [ ] O(n) space
- [ ] Use bit vectors when size is <= word size
- [ ] More tests
- [ ] Detailed comments & docs
- [ ] Arena-based allocation