- Линейный поиск следует использовать, если количество элементов не большое (меньше 100) или же данные не отсортированы
- Бинарный поиск следует использовать, если количество элементов достаточно большое (больше 100) и данные отсортированы.
Пришла на ум аналогия с физикой:
- Если скорость маленькая (много меньше скорости света), то используем классическую механику.
- Если скорость очень высокая (соизмерима со скоростью света), то используем релятивистскую механику.
Правда аналогия не совсем корректная, так как в программировании, кроме бинарного поиска, есть есть поиск по хеш-функции и еще много чего другого.
(Число 100 я взял из экспериментов, когда-то сравнивал, что быстрее работает линейный поиск или бинарный поиск, оказалось, что примерно на 100 элементах, они работают одинаково по времени, на меньшем количестве элементов бинарный поиск работает дольше, чем линейный, а на большем количестве элементов - наоборот.)