Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmSeUn 201 of 373 menu
◀ ▶

Объединение множеств в Rust

Объединение собирает значения, которые есть хотя бы в одном множестве. Команда возвращает итератор: по нему идут циклом, как по элементам вектора по ссылке. Повторы между наборами схлопываются сами.

Объединим два набора строк и напечатаем элементы:

use std::collections::HashSet; fn main() { let mut a = HashSet::new(); a.insert("a".to_string()); a.insert("b".to_string()); let mut b = HashSet::new(); b.insert("b".to_string()); b.insert("c".to_string()); for n in a.union(&b) { println!("{}", n); } }

На экране три разных текста: "a", "b" и "c". Значение "b" встретилось в обоих источниках, но в объединении остается один раз.

Тот же прием для целых:

use std::collections::HashSet; fn main() { let mut left = HashSet::new(); left.insert(1); left.insert(2); let mut right = HashSet::new(); right.insert(2); right.insert(3); let mut count = 0; for _ in left.union(&right) { count += 1; } println!("{}", count); }

Даны переменные:

let mut a = HashSet::new(); a.insert("x".to_string()); let mut b = HashSet::new(); b.insert("y".to_string());

Соберите общий набор через перебор объединения в both и выведите длину both.

Даны переменные:

let mut a = HashSet::new(); a.insert(1); a.insert(2); let mut b = HashSet::new(); b.insert(2); b.insert(3);

Посчитайте элементы объединения и выведите число.

Одно множество пустое, второе содержит три значения. Сколько элементов будет в объединении?

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить