Я ищу наиболее быстрое решение для поиска целого значения. Значение с использованием сортированного целочисленного массива.Быстрый поиск значения целочисленного индекса с использованием массива отсортированного целочисленного массива
Ключи представляют собой целые массивы и имеют фиксированную длину 3 и каждый массив сортируется.
Значение представляет собой целое число.
Мои данные гарантируют, что есть только один ИЛИ два отсортированных массива, которые имеют одинаковый контент. Каждый массив имеет уникальный индекс.
Я пытаюсь найти соответствующие пары массивов.
Моя мысль использовать словарь (я прототипирования в C# и перейти на C++)
Для каждого массива, я буду смотреть в словаре и посмотреть, если он уже есть. Если это так, я удаляю его из словаря. Если я не найду его в словаре, это либо синглтон, либо первый из пары совпадений, поэтому я добавлю его в словарь.
Мой вопрос заключается в том, чтобы дать конкретные гарантии на данные, какой лучший контейнер - учитывая, что скорость является моей главной задачей? Кроме того, будут оценены любые рекомендации относительно соответствующих (быстрых) хэширующих функций или функций сравнения для отсортированных целых массивов.
Если ваш код в конечном итоге должен быть C++, не тратьте время на C#. то, что вы нашли, работающее быстро в C#, не означает, что вы получите тот же результат в C++. – Kelmen
CRC32 - это быстрая хеширующая функция без криптографических гарантий. Кроме того, если вы не ожидаете получить много массивов, имеющих одни и те же первые записи X, вы можете использовать только первые X-записи, чтобы сэкономить время. – Patashu