Data structure and algorithms in Rust