У меня есть несколько экземпляров из 4096 элементов. Мне нужно найти и найти элемент на основе повторного ввода, и я бы хотел его оптимизировать. Поскольку не все 4096 элементов могут быть использованы, я думал, подход к ускорению работы будет заключаться в использовании связанного списка вместо массива. И всякий раз, когда мне приходится искать элемент, как только я его найду, я поместил его в начало списка, чтобы в следующий раз, когда он появился, мне пришлось бы выполнить минимальное усилие поиска (цикла). Правильно ли это звучит?Оптимизация поиска по памяти
EDIT1 Я не думаю, что бинарное дерево поиска идея действительно то, что я могу использовать, как я упорядочивания данных, как массив, т.е. каждый узел следующий предыдущий один больше, который поражения цели, не Это?
Я пытался решить мою проблему с кэшированием и придумал что-то вроде этого:
pending edit
Но выход я получаю, говорит о том, что он не работает, как я хотел бы, чтобы это:
любые предложения о том, как я могу это улучшить?
Если ваши массивы или списки 4096 заказываются (в алфавитном порядке или что-то еще) двоичный поиск действительно очень быстрый. http://en.wikipedia.org/wiki/Binary_search_algorithm – BrettFromLA