Я нахожу, что оба набора и карты реализованы как дерево. set - это двоичное дерево поиска, карта - это самобалансирующееся двоичное дерево поиска, такое как красно-черное дерево? Я смущен насчет разницы в реализации. Разница может быть следующей:set map implementation in C++
1) элемент в наборе имеет только одно значение (ключ), элемент на карте имеет два значения. 2) набор используется для хранения и извлечения элементов отдельно. map используется для хранения и извлечения элементов с помощью ключа.
Что еще важно?
Спасибо!
Если true/false/not-present - это разные состояния. :) Карта применяется, когда часть значения может меняться (например, std :: map :: mapped_type), не изменяя идентификатор значения, а не просто «эффективный набор». – 2010-02-11 22:28:41