Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/23: Рейтинг темы: голосов - 23, средняя оценка - 4.87
3 / 3 / 0
Регистрация: 11.01.2011
Сообщений: 155
1

Бинарно-последовательный поиск

28.12.2011, 15:28. Показов 4680. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здраствуйте.Ктонить может написать алгоритм бинарно-последновательного поиска.Плз в инете искал несмог найти...

Добавлено через 29 минут
Или мне кажется что такого нет поиска??
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.12.2011, 15:28
Ответы с готовыми решениями:

Последовательный/быстрый последовательный поиск
Есть реализация двух методов поиска. По логике быстрый последовательный должен быть быстрее, но...

Индексно-последовательный поиск
вообщем задание такое: "Организовать индексно-последовательный поиск в файле, содержащем список...

Массивы и последовательный поиск
Помогите пожалуйста. Дан массив X.Определить, есть ли в массиве число Z, с использованием метода...

Поиск. Последовательный поиск
Через 2 дня сдавать лабу =-O , а я до сих пор ни могу с ней справиться :umnik: ... Препад, чесное...

13
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
28.12.2011, 15:46 2
Ватадот, не представляю, как бинарный (последовательный) поиск может в то же время быть последовательным (бинарным). Это два разных подхода, причём один универсальный, другой специальный.
1
3 / 3 / 0
Регистрация: 11.01.2011
Сообщений: 155
28.12.2011, 15:50  [ТС] 3
Тю блин,я ошибся мне надо Быстрого-последовательного поиска алгоритм
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
28.12.2011, 15:53 4
Ватадот, тоже не очень понятно... Последовательный - он и есть последовательный, ишет, пока не найдёт. Как его можно вот просто так взять и ускорить?
0
3 / 3 / 0
Регистрация: 11.01.2011
Сообщений: 155
28.12.2011, 16:13  [ТС] 5
Быстрый последовательный поиск он точно есть.Суть заключается в оптимизации циклов,то есть сокращение числа действий в них.
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
28.12.2011, 16:25 6
Ватадот, как можно оптимизировать один-единственный цикл, в котором последовательно сравниваются элементы некоторой последовательности на предмет совпадения с искомым, с учётом того, что элементы в последовательности расположены произвольно (т.е. мы ничего не знаем заранее об их порядке)? Бинарный поиск и есть оптимизация обычного, но с учётом того, что последовательность упорядочивается (т.е. в неё вносится некоторая закономерность, благодаря которой и становится возможным сократить число итераций).
По логике всё так, но вдруг я чего-то не знаю? Пруф в студию.
0
Эксперт С++
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
28.12.2011, 16:30 7
Может быть имеется ввиду это:
http://window.edu.ru/window/li... 0&p_page=8
тогда вот пример:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
 
int main() {
    int n, mas[100], i, k;
    printf("n= ");
    scanf("%d", &n);
    for(i=0; i<n; i++)
    {
        printf("[%d]= ", i);
        scanf("%d", &mas[i]);
    }
    printf("k= ");
    scanf("%d", &k);
    mas[n]=k;
    i=0; 
    while(mas[i]!=k)
    {
        i++;
    }
    if(i==n)
        printf("No\n");
    else
        printf("pos = %d\n", i);
        return 0;
}
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
28.12.2011, 16:34 8
valeriikozlov, а где "быстрый"?)) Это же обычный последовательный поиск.
0
Эксперт С++
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
28.12.2011, 16:36 9
Цитата оттуда:
6.1. Последовательный поиск
.....
.....
Оказывается, что данный алгоритм можно ускорить при помощи
вставки ключа поиска в конец массива ключей.
Быстрый последовательный поиск:
....
....
....
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
28.12.2011, 16:45 10
Мдя... Так-то оно может и так, но на сложность алгоритма-то не влияет...
0
Эксперт С++
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
28.12.2011, 16:46 11
Цитата Сообщение от silent_1991 Посмотреть сообщение
но на сложность алгоритма-то не влияет...
на сложность не влияет, только на скорость.
1
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
28.12.2011, 16:49 12
valeriikozlov, я всё-же привык, что алгоритм называют "быстрым", когда его сложность по отношению к базовому меняется. Ну да ладно, это всё лирика)) Главное, решение найдено.
0
3 / 3 / 0
Регистрация: 11.01.2011
Сообщений: 155
28.12.2011, 17:03  [ТС] 13
silent_1991, суть в том что в последовательном поиске например в цикле while производитьсся два сравнениеяi<=n) и (A[i]<>Key),в быстром-последовательном убираем 1но сравнение,поменяв на A[n+1]:=Key.Надо сказать, что хотя такой фрагмент кода будет работать быстрее, но его теоретическая сложность остается такой же.

Добавлено через 3 минуты
http://altim.narod.ru/Docs/Rus... inding.htm
Цитата отсуда
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
28.12.2011, 17:04 14
Цитата Сообщение от Ватадот Посмотреть сообщение
но его теоретическая сложность остается такой же
Вот я об этом и говорил))
0
28.12.2011, 17:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.12.2011, 17:04
Помогаю со студенческими работами здесь

Последовательный и быстрый последовательный поиски
Разработать программу для реализации алгоритма последовательного поиска. Написала программу для...

Поиск в бинарно-открытом файле
Друзья! очень нужна помощь! FILE *fin=fopen(def,&quot;ab+&quot;); Открываю файл, в нем база... 3...

Последовательный поиск
В векторе С найти элементы, значение которых считаем по формуле: C:=2*min.

Последовательный поиск
Нужно найти элемент = z Подскажите, пожалуйста, где ошибка, Почему-то выводится последний элемент...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru