Skip to content

dxtym/btree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Btree

license codecov

An in-memory generic B-tree data structure in Go.

Installation

go get github.com/dxtym/btree

Features

  • Insert: Add a key-value item
  • Search: Find a value by key
  • Remove: Delete an item by key
  • Traverse: Get all items in order

Example

b, err := btree.New[int, string](3)
if err != nil {
    panic(err)
}

for range 100 {
    key := rand.Intn(100)
    b.Insert(key, strconv.Itoa(key))
}

if value, err := b.Search(42); err != nil {
    panic(err)
}

if err := b.Remove(42); err != nil {
    panic(err)
}

Plans

  • Make concurrent safe
  • Add benchmarks tests
  • Optimize memory usage

License

MIT License. See LICENSE for details.

About

In-memory generic B-tree

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages