Я пришел из довольно функционального программирования, и я не привык к (эффективным) структурам данных C ++.Мне нужна структура данных, которая содержит несколько элементов, как показано в struct element
.В коллекции идентификатор поля должен быть уникальным.
Я хочу выполнить очень быстрое сравнение множеств, как в теории множеств, например, при сравнении множеств {x1,x2,x3}
и {x4,x5}
Я хочу определить множество пересечений {x5}
(или {x2}
, которыеравным в данном случае) и вычитают наборы из других наборов, например, например {x1,x2,x3} \ {x5} = {x1,x3}
.
Существует ли ... "теоретическая" структура данных во вселенной C ++?
struct element {
int id;
float value;
};
struct element x1 = {1, 1.0};
struct element x2 = {2, 2.0};
struct element x3 = {3, 3.0};
struct element x4 = {3, 3.1};
struct element x5 = {2, 2.0};