Skip to content

Implementing a self-balancing AVL Binary Search Tree and using it to implement Set and Map data structures

License

Notifications You must be signed in to change notification settings

msaw328/rbst328

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rbst328

Binary Search Tree implementation in Rust. For fun and to practice Rust programming.

The plan is as follows:

  1. Have a working BST implementation:
    • ✅ Insertion
    • ✅ Removal
    • ✅ Search
    • Secondary operations:
      • .clear()
      • .contains()
      • .len()
      • .is_empty()
    • Iterators:
      • .iter()
      • .into_iter()
      • .from_iter() (and .collect())
      • .extend()
      • .iter_mut()
  2. Implement Self-balancing using the AVL method:
    • ✅ Insertion
    • ✅ Removal
  3. Add serialization and deserialization from/to bytes
  4. Try sending it over a network, writing to a file or some other way of IPC/data sync
    • Perhaps a simple Redis-style key-value store with persistence to disk?
  5. Optionally: make the code pretty :)

About

Implementing a self-balancing AVL Binary Search Tree and using it to implement Set and Map data structures

Topics

Resources

License

Stars

Watchers

Forks

Languages