РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
294 of 815 menu

Класс set

Класс set - это ассоциативный контейнер, который хранит только уникальные элементы. Элементы внутри множества всегда автоматически сортируются по возрастанию. При добавлении элемента, который уже есть в множестве, он не будет добавлен повторно. При создании множества можно указать тип хранимых значений. Например, set<int> будет хранить целые числа.

Синтаксис

#include <set> set<тип> имя;

Пример

Давайте создадим множество целых чисел и добавим в него несколько элементов с помощью метода insert:

#include <iostream> #include <set> using namespace std; int main() { set<int> st; st.insert(3); st.insert(1); st.insert(2); st.insert(3); for (int elem : st) { cout << elem << " "; } cout << endl; return 0; }

Результат выполнения кода:

1 2 3

Как видите, элемент 3 был добавлен только один раз, а все элементы автоматически отсортировались по возрастанию.

Пример

Давайте проверим, содержит ли множество определённый элемент, с помощью метода count. Этот метод возвращает 1, если элемент есть, и 0, если его нет:

#include <iostream> #include <set> using namespace std; int main() { set<int> st = {1, 2, 3, 4, 5}; cout << st.count(3) << endl; cout << st.count(10) << endl; return 0; }

Результат выполнения кода:

1 0

Пример

Давайте удалим элемент из множества с помощью метода erase и посмотрим на результат:

#include <iostream> #include <set> using namespace std; int main() { set<int> st = {1, 2, 3, 4, 5}; st.erase(3); for (int elem : st) { cout << elem << " "; } cout << endl; return 0; }

Результат выполнения кода:

1 2 4 5

Смотрите также

  • класс set,
    который представляет множество уникальных элементов
  • метод insert,
    который добавляет элемент в множество
  • метод erase,
    который удаляет элемент из множества
  • метод find,
    который ищет элемент в множестве
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить