#tree #binary-search-tree #lol #serious

bin+lib rust_black_tree

Please don't use this in something serious lol

5 releases

0.1.5 Mar 3, 2020
0.1.4 Mar 3, 2020

#3 in #serious

GPL-3.0-or-later

80KB
2K SLoC

User Manual

Getting Started

cargo run

Prerequisites

  • cargo

Installing

change directory into the project's root, and then run

cargo install --path .

The command-line application will then be installed and can be run:

rust_black_tree <new | add | delete | print | clear | quit>

Example usage of CLI

new/create/n/c

Allows for creation of a Red Black tree, AVL tree, or Binary Search tree

new rb
new avl
new bst
create rb
n avl
c bst

add/insert/i/a

Insert a value into the tree

add 5
insert 2
i 6
a 9

delete/del/remove/d/r

Delete a value from the tree

delete 5
del 2
remove 6
d 9
r 10

Note: non-existent values in the tree passed to the delete command will be ignored

print/p

Print the current tree

print
p

clear/clr

Removes everything in the tree

clear
clr

quit/exit

Exit the CLI

quit
exit

Running the tests

cargo test

Benchmarking

Benchmark reports can be found in `target/criterion/report/index.html

cargo bench
cargo bench bench_rbtree

cargo bench bench_avltree

Documentation

Documentation can be easily generated by running

cargo doc --open

Authors

  • Arun Woosaree
  • Jacob Reckhard
  • Alexander Rostron

Dependencies

~4MB
~73K SLoC