Вставить эффективность между множеством и неупорядоченным множеством? - PullRequest
0 голосов
/ 16 декабря 2018

Каковы различия в эффективности между вставкой тысяч случайных элементов в набор и в неупорядоченный набор?Как я могу их измерить?

1 Ответ

0 голосов
/ 16 декабря 2018

Если вы хотите измерить что-то, взгляните на profiler или просто измерьте время выполнения.

Для их сложности взгляните на документацию под пунктом "сложность". set unordered_set .

Копировать из комплекта документации:

Сложность

1-2) Логарифмический размер контейнера, O (log (size ())).

3-4) Амортизированная константа, если вставка происходит в позиции сразу после подсказки, в противном случае - логарифмический размер контейнера.(до C ++ 11)

3-4) Амортизированная константа, если вставка происходит в позиции непосредственно перед подсказкой, в противном случае - логарифмический размер контейнера.(начиная с C ++ 11)

5-6) O (N * log (size () + N)), где N - количество элементов для вставки.

7) Логарифмическийв размере контейнера, O (log (size ())).

8) Амортизированная константа, если вставка происходит в позиции непосредственно перед подсказкой, в противном случае - логарифмический размер контейнера.

Копирование из документации unordered_set

Сложность

1-4) Средний случай: O (1), худший случай O (size ())

5-6) Средний случай: O (N), где N - количество элементов для вставки.Худший случай: O (N * size () + N)

7-8) Средний случай: O (1), наихудший случай O (size ())

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...