rust 删除相同元素
时间: 2023-05-08 07:58:01 浏览: 119
Rust是一种功能强大的编程语言,提供了许多丰富的数据结构和算法库,可以很好地支持集合操作。如果要删除相同元素,我们可以使用Rust中提供的集合库,例如Vec、HashSet、BTreeSet等。
假设我们有一个Vec,其中包含了一些整数元素。要删除其中的相同元素,我们可以先将Vec转换成一个HashSet,这样重复的元素就会被自动去重。然后,我们再将HashSet转换回Vec即可完成删除相同元素的操作。
具体的代码实现如下:
```
use std::collections::HashSet;
fn main() {
let mut nums = vec![1, 2, 3, 1, 4, 2];
let set: HashSet<i32> = nums.into_iter().collect(); // 将Vec转换成HashSet
let nums: Vec<i32> = set.into_iter().collect(); // 将HashSet转换回Vec
println!("{:?}", nums); // 输出结果为[4, 1, 2, 3]
}
```
在上面的代码中,我们先创建了一个Vec(nums),其中包含了一些整数元素。然后,我们使用了into_iter()和collect()方法将Vec转换成HashSet(set)。注意,由于HashSet是一个无序的集合,转换回Vec的时候也会变成无序。
最后,我们再使用into_iter()和collect()方法将HashSet(set)转换回Vec(nums),这样就完成了删除相同元素的操作。最后输出结果为[4, 1, 2, 3],其中重复的元素已被去重。
阅读全文