Если кривая «линейного доступа» пересекает кривую «бинарного поиска», зависит от того, сколько времени потребуется для доступа / вставки одного элемента в зависимости от количества элементов. Это будет отличаться для каждой комбинации архитектуры компилятора, памяти и процессора, типа данных / узла в списке, распределения значений данных, используемых вами алгоритмов сортировки и вставки и т. Д. Но с «достаточно большим» набором времени работы можно описать, упомянув, как увеличивается его верхняя граница с увеличением количества элементов, даже если эта граница «Big-O» может точно не описывать какой-либо конкретный прогон.
Вы можете точно выяснить, знаете ли вы конкретный алгоритм, который вы будете вставлять или искать, и определять фактические инструкции, которые составляют доступ к вашему списку, а также узнавать, сколько тактов они выполняют для выполнения и т. Д. И т. Д. .
Тогда вы можете точно сказать, какой из них быстрее и в какой момент. И если вы знаете свои значения данных, вы можете смоделировать их. Но если вы не знаете, вы должны предположить (например, что, если введенные вами значения данных уже упорядочены? Как это влияет на вашу функцию сортировки или вставки?)
Например, поиск одного элемента может занять 1 единицу. Сравнение двух предметов может занять 0.5us. Выполнение вставки отсортированного списка со 100 элементами в списке может потребовать X количества поисков, Y количества сравнений и Z количества обновлений / записей .... В то время как для неупорядоченного списка может потребоваться больше или меньше, в зависимости от того, что уже есть и что вы вставляете.