0 / 0 / 1
Регистрация: 01.10.2014
Сообщений: 22
1

Поиск заданного элемента в упорядоченном массиве (бинарный поиск)

01.10.2014, 08:00. Показов 5164. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Заполнить одномерный массив из n элементов согласно таблицы. Размерность массива задать в виде именованной константы. Вывести массив на экран. Ввести с клавиатуры число. Используя метод половинного деления определить индекс первого элемента с таким значением и количеством таких элементов. Если элемент с таким значением в массиве отсутствует вывести соответствующее сообщение. Так же прикладываю пример решения

Индексы элементов1234567...
Значения элементов00224466
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.10.2014, 08:00
Ответы с готовыми решениями:

Быстрый поиск индекса заданного элемента в упорядоченном массиве
Пусть отсортированный по возрастанию массив из n элементов a. Требуется максимально быстро найти...

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

Поиск заданного элемента в упорядоченном массиве(бинарный поиск)
Заполнить одномерный массив из n элементов по формуле приведенной в картинке. Размерность массива...

Поиск элемента, меньшего заданного, в упорядоченном массиве
Добрый день. Мне необходимо найти в массиве первый элемент, который меньше заданного, и, очень...

2
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
01.10.2014, 11:20 2
Лучший ответ Сообщение было отмечено malinka_irinka как решение

Решение

заполнить массив и вывести можно так:
Pascal
1
2
3
4
  for i:=1 to n do begin
   if odd(i) then a[i]:=i-1 else a[i]:=i-2;
    write(a[i],' ');
  end;
Добавлено через 14 минут
для N=9 получился массив
1 2 3 4 5 6 7 8 9
0 0 2 2 4 4 6 6 8 - куда тут пришить метод половинного деления объясните пожалуйста
0
3 / 3 / 6
Регистрация: 16.12.2013
Сообщений: 44
01.10.2014, 19:03 3
Бинарный поиск(метод половинного деления) это что-то типа
Pascal
1
2
3
4
5
6
l:=1;
r:=n;
k:=Число что ищем
while l<>r do 
 If a[(l+r) div 2]>k then r:=(l+r) div 2-1 else l:=(l+r) div 2
If a[l]=k then writeln(k,' присутсвует') else writeln(k,' отсутсвует')
Код грубый
0
01.10.2014, 19:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.10.2014, 19:03
Помогаю со студенческими работами здесь

Поиск заданного элемента в упорядоченном по возрастанию массиве целых чисел
Осуществить поиск заданного элемента в упорядоченном по возрастанию (по убыванию) массиве целых...

Реализовать бинарный поиск заданного элемента в массиве
Помогите, напишите бинарный поиск элемента в массиве (особенно чтобы он работал, когда все элементы...

Реализовать бинарный поиск заданного элемента в массиве
Доброго времени суток, форумчане! Реализую алгоритмы поиска: линейный и бинарный. Нужно, чтоб они...

Бинарный поиск в упорядоченном массиве
Задали реализовать бинарный поиск в упорядоченном массиве.Уже пол дня творю,3 листа исписал и...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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