【发布时间】:2015-06-24 13:54:09
【问题描述】:
将HashMap 分成相等的块的最佳方法是什么?例如,这就是我拆分Vec<String> 的方式:
extern crate num_cpus;
fn main() {
let cpu_count = num_cpus::get();
let list: Vec<String> = vec!["one".into(), "two".into(), "three".into(), "four".into(), "five".into(), "six".into(), "seven".into(), "eight".into(), "nine".into(), "ten".into()];
let chunk_len = (list.len() / cpu_count) as usize + 1;
let mut chunks = Vec::new();
for chunk in list.chunks(chunk_len) {
chunks.push(chunk.to_owned());
}
for chunk in chunks {
println!("{:?}", chunk);
}
}
产生输出
["one", "two"]
["three", "four"]
["five", "six"]
["seven", "eight"]
["nine", "ten"]
我如何对HashMap<String, String> 做同样的事情?
【问题讨论】:
标签: rust