Поиск:

Ответ в темуСоздание новой темы Создание опроса
> алгоритмы поиска, нужно немного теории 
:(
    Опции темы
nadya_m
Дата 18.12.2005, 10:47 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











При каком числе элементов в массиве не эффективен линейный поиск, а эффективен бинарный?
Плиз, помогите кто знает)))) smile
  Вверх
b4
Дата 18.12.2005, 16:21 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Бинарный поиск надо использовать для упорядоченного массива.
Если так, то он вроде всегда эффективнее.
  Вверх
SoWa
Дата 18.12.2005, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Харекришна
****


Профиль
Группа: Комодератор
Сообщений: 2422
Регистрация: 18.10.2004

Репутация: 6
Всего: 74



Цитата(b4 @ 18.12.2005, 16:21)
Бинарный поиск надо использовать для упорядоченного массива.

Верно. А еще лучше- сортируешь, и ищешь параллельно.


--------------------
Всем добра smile
PM MAIL ICQ   Вверх
Earnest
Дата 22.12.2005, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 7
Всего: 183



Не думаю я, бинарный поиск в упорядоченном массиве, скажем, из 5 элементов, реально быстрее, чем линейный в нем же.
Время линейного поиска - A*N, бинарного B*log(N). Все дело в этих константах. Для линейного поиска - это стоимость сравнения, для бинарного - есть еще накладные расходы на деление, лишние переменные или поддержка рекурсии, etc.
Только при больших N увеличенные накладные расходы полностью нивелируются логарифмической зависимостью. А кто такой "большое N", нужно спрашивать у каждого конкретного компилятора отдельно.
Собственно, во всех книжках про алгоритмы поиска обычно приводят таблицы зависимостей времени поиска от N для разных алгоритмов и компиляторов.



--------------------
...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0396 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.