mirror of
https://github.com/krahets/hello-algo.git
synced 2026-06-14 22:26:38 +08:00
update rust codes for hash_map, binary_search, bubble_sort, stack, queue (#330)
* update rust codes * update rust codes * update rust codes * update and add rust codes for hash_map, binary_search, bubble_sort * update and add rust codes for hash_map, binary_search, bubble_sort * add rust codes for chapter stack * add rust codes for chapter queue * add rust codes for chapter deque
This commit is contained in:
37
codes/rust/include/print_util.rs
Normal file
37
codes/rust/include/print_util.rs
Normal file
@@ -0,0 +1,37 @@
|
||||
/**
|
||||
* File: print_util.rs
|
||||
* Created Time: 2023-02-05
|
||||
* Author: sjinzh (sjinzh@gmail.com)
|
||||
*/
|
||||
|
||||
use std::fmt::Display;
|
||||
use std::collections::HashMap;
|
||||
use std::collections::LinkedList;
|
||||
|
||||
/* Print an array */
|
||||
pub fn print_array<T: Display>(nums: &[T]) {
|
||||
print!("[");
|
||||
if nums.len() > 0 {
|
||||
for (i, num) in nums.iter().enumerate() {
|
||||
print!("{}{}", num, if i == nums.len() - 1 {"]"} else {", "} );
|
||||
}
|
||||
} else {
|
||||
print!("]");
|
||||
}
|
||||
}
|
||||
|
||||
/* Print a hash map */
|
||||
pub fn print_hash_map<TKey: Display, TValue: Display>(map: &HashMap<TKey, TValue>) {
|
||||
for (key, value) in map {
|
||||
println!("{key} -> {value}");
|
||||
}
|
||||
}
|
||||
|
||||
/* Print a queue or deque */
|
||||
pub fn print_queue<T: Display>(queue: &LinkedList<T>) {
|
||||
print!("[");
|
||||
let iter = queue.iter();
|
||||
for (i, data) in iter.enumerate() {
|
||||
print!("{}{}", data, if i == queue.len() - 1 {"]"} else {", "} );
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user