Контейнер, проверяющий уникальность контента.
-
21-08-2019 - |
Вопрос
Существует ли какой-либо тип данных/контейнер на каком-либо языке, который перед вставкой элемента проверяет уникальность содержимого, а не значение или индекс?
Решение
Да, это называется набор.Большинство языков реализуют их в той или иной форме.
Другие советы
Конечно, на ум приходит класс NSSet из Cocoa.В C++ STL также есть класс set.
Конечно, вам нужен какой-то способ определения уникального объекта, помимо простого сравнения указателей или ссылок.Например, в Cocoa два объекта считаются одинаковыми для целей NSSet, если они отвечают на isEqual:
с YES
и иметь тот же хэш-код.
Проблема в том, что значение может быть чем угодно, так что это очень открыто и не всегда практично.
SQL с УНИКАЛЬНЫМ полем.наборы на Python.Имена файлов в файловых системах.Зависит от того, как вы определяете «контент».