Вперед Зміст

Як підключити

Для підключення і set, і multiset в заголовній частині програми потрібно написати:
#include <set>

Як описати змінну типу set

set <int> A;
set <string> B;

Множина A може містити цілі числа, множина B може містити рядки.

Якщо ми хочемо, щоб множина зберігала значення елементів за спаданням, то описувати множину потрібно додавши ключове слово greater. Наприклад,
set <int,greater<int>>C;

Як описати змінну типу multiset

multiset <int> A;
multiset <double> B;

Множина A може містити цілі числа, множина B може містити дійсні числа.

При описі цих контейнерів не вказується кількість елементів. Кількість може збільшуватись або зменшуватись у процесі виконання програми.

Як звертатися до елементів set та multiset

Всі елементи множини зберігатимуться у вузлах бінарного дерева:

Елементи перебираються послідовно. Під час обходу бінарного дерева за алгоритмом LNR (спочатку ліва гілка, потім вершина, далі права гілка) виходить впорядкована за зростанням послідовність значень. Звісно, саме дерево при цьому має формуватися за правилом: менші значення заносяться в ліве піддерево, а більші – в праве піддерево. Існують і інші алгоритми перебору.

Ці контейнери не надають доступу до елементів за індексом. Потрібно використовувати ітератори або діапазонний цикл перебору (for без індексів).

Вперед Зміст