题解 | #删除字符串中出现次数最少的字符#
删除字符串中出现次数最少的字符
http://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9
记得把无关的空格 trim 掉
use std::io;
use std::collections::HashMap;
fn main() {
let mut s = String::new();
let mut map:HashMap<u8,u8> = HashMap::new();
io::stdin()
.read_line(&mut s)
.expect("Failed to read line");
let mut v = Vec::from(s.trim());
for i in v.iter() {
let num = match map.get(i){
Some(val) => *val + 1,
None => 1u8,
};
map.insert(*i, num);
}
let (&_a,&b) = map.iter().min_by_key(|(_x,y)| **y ).unwrap();
for i in map {
if i.1 == b {
for j in (0..v.len()).rev() {
if v[j] == i.0 {
v.remove(j);
}
}
}
}
for i in v {
print!("{}",char::from(i));
}
}
用 Rust 刷华为机试HJ 文章被收录于专栏
用 Rust 刷 HJ100 题,只需要懂基础 Rust 语法就能看懂