Вступить в клуб →
лёгкаявопросSTL и контейнеры

Порядок обхода unordered_map

Тест сравнивает строку отчёта с эталоном. Отчёт строится обходом std::unordered_map<std::string, int>, ключи добавляются в фиксированном порядке. Локально тест зелёный, на другой машине сборки — красный: строки те же, порядок другой.

Как правильно поступить?

  • Отсортировать сам контейнер вызовом `std::sort` по его итераторам перед обходом
  • Задать свою хеш-функцию: при равномерном хеше элементы лягут по корзинам в порядке вставки, и обход станет стабильным
  • Не полагаться на порядок: собрать ключи в вектор и отсортировать либо взять `std::map`
  • Зафиксировать порядок вызовом `reserve` на нужное число корзин перед вставками

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела