set_symmetric_difference формирует отсортированный выход из элементов, не общих для обоих входов.">
Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpAgSD 76 of 696 menu
◀ ▶

Симметричная разность в C++

Алгоритм set_symmetric_difference формирует отсортированный выход из элементов, не общих для обоих входов.

Это дополнение к set_union и set_intersection из основного курса. Дубликаты в каждом входе обычно убирают заранее. Запишем два массива и выведем разность:

#include <algorithm> #include <iostream> #include <vector> int main() { int a[] = {1, 2, 5}; int b[] = {2, 3, 5}; std::vector<int> out(4); auto end = std::set_symmetric_difference( std::begin(a), std::end(a), std::begin(b), std::end(b), out.begin()); for (auto it = out.begin(); it != end; ++it) { std::cout << *it << " "; } std::cout << "\n"; return 0; }

Постройте симметричную разность {1, 4, 7} и {4, 5, 7} в вектор алгоритмом set_symmetric_difference и выведите элементы.

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