在 Rust 中,Set
是一种无序且不包含重复元素的数据结构
use std::collections::HashSet;
let mut set = HashSet::new();
set.insert(1);
set.insert(2);
set.insert(3);
set.remove(&1); // 删除元素 1
if set.contains(&2) {
println!("Set contains 2");
}
let size = set.len(); // 返回 Set 中的元素个数
set.clear(); // 清空 Set 中的所有元素
for element in &set {
println!("{}", element);
}
HashSet
转换为 BTreeSet
):use std::collections::BTreeSet;
let btree_set: BTreeSet<i32> = set.into();
let mut set1 = HashSet::new();
set1.insert(1);
set1.insert(2);
let mut set2 = HashSet::new();
set2.insert(2);
set2.insert(3);
set1.union(&set2); // 合并 set1 和 set2
let mut set1 = HashSet::new();
set1.insert(1);
set1.insert(2);
let mut set2 = HashSet::new();
set2.insert(2);
set2.insert(3);
let intersection = set1.intersection(&set2); // 获取 set1 和 set2 的交集
let mut set1 = HashSet::new();
set1.insert(1);
set1.insert(2);
let mut set2 = HashSet::new();
set2.insert(2);
set2.insert(3);
let difference = set1.difference(&set2); // 获取 set1 和 set2 的差集
这些操作只是 Rust 中 Set 的基本功能。你可以根据需要使用它们来处理数据。