Другое

Симметрическая разность: основы и базовые операции над множествами

Lorem ipsum dolor

Симметрическая разность множеств — это одна из распространенных операций над множествами. Это математическое явление, однако оно широко применяется и в программировании, особенно при работе с какой-то информацией, хранимой в словарях, списках, массивах и др.

Симметрическая разность — это множество, полученное при сравнении двух других множеств. В него входят элементы, которые присутствуют только в первом множестве и только во втором множестве. То есть из первого множества вычитают второе, а из второго первое, а остаток, полученный в обоих вычитаниях, и есть симметрическая разность этих двух множеств.

Симметрическая разность множеств и другие операции над множествами

Рассмотрим, как выглядит симметрическая разность множеств на деле. Представим, что у нас есть 2 множества стран, которые посетили Дормидонт и Платон. Давайте вычислим симметрическую разность этих множеств. Вот как это выглядит:

 

>>> visited_by_dormidont = {'Франция', 'Великобритания', 'Германия'}

>>> visited_by_platon = {'Россия', 'Франция', 'Германия'}

>>> visited_by_dormidont ^ visited_by_platon

 

Симметрическая разность этих множеств будет: {'Великобритания', 'Россия'}

Другие операции над множествами

Симметрическая разность множеств — это не единственная операция над множествами. Чуть ниже приведем еще несколько операций.

Пересечение множеств

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

>>> visited_by_dormidont = {'Франция', 'Великобритания', 'Германия'}

>>> visited_by_platon = {'Россия', 'Франция', 'Германия'}

>>> visited_by_dormidont & visited_by_platon

 

Результат пересечения будет следующим: {'Франция', 'Германия'}

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

При объединении множеств в программировании происходит создание нового множества. В новом множестве будут содержаться все оригинальные элементы от двух объединяемых множеств. Рассмотрим, как происходит объединение множеств, на нашем примере с Дормидонтом и Платоном:

>>> visited_by_dormidont = {'Франция', 'Великобритания', 'Германия'}

>>> visited_by_platon = {'Россия', 'Франция', 'Германия'}

>>> visited_by_dormidont | visited_by_platon

 

В результате объединения множеств получим следующий результат: {'Россия', 'Франция', 'Германия', 'Великобритания'}

Проверка на равенство

Очень часто множества проверяют на равенство. Проверка может быть строгой и нестрогой. Уровень и качество проверки очень сильно зависят от возможностей самого языка. Во многих языках можно реализовать проверку на равенство разных типов данных и структур данных. Например:

  • числа,

  • строки,

  • булевы значения,

  • кортежи,

  • списки,

  • массивы,

  • словари, 

  • и др.

В Python проверка множеств происходит очень лояльно. При проверкеневажен будет порядок элементов в множестве, а также операции, совершаемые над элементами. Важно их наличие. Причем в одном множестве могут сочетаться разные типы данных.

Заключение

Сегодня мы показали, что симметрическая разность множеств — это новое множество, которое получается из остатков вычитания двух множеств, где вычитают сначала одно множество из другого, а потом наоборот. Также мы показали, какие еще операции можно проводить над множествами. Сегодня в примерах мы использовали язык программирования Python. В следующих статьях мы покажем, как выглядят операции над множествами в других языках программирования.

Схожие статьи

Паттерн «Стратегия»: определение, назначение и шаблоны проектирования
Другое

Паттерн «Стратегия»: определение, назначение и шаблоны проектирования

Другое

Что такое сетевой нейтралитет и зачем он нужен

Другое

Системы хранения данных Dell EMC: краткое описание решений

Нейросеть Google — рисование по-новому: обзор
Другое

Нейросеть Google — рисование по-новому: обзор

×