1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
1

Поиск элемента в упорядоченном массиве

04.12.2009, 22:43. Показов 6234. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Никак не могу разобраться с поиском элемента в упорядоченном массиве , напишите пожалуйста для примера какое-то любое уравнение , главное чтобы не сложное было дабы легче было понять каким образом происходит этот поиск .
Вот задание для примера :Напишите программу , которая организует хранение в массиве 15 различных введённых с клавиатуры разных целых чисел .Содержание массива сортируется по возрастанию .После этого с клавиатуры запрашивается контрольное число ,наличие которого в массиве необходимо проверить .Номер элемента в положительном случае выводиться на экран монитора .
Если кто-то напишет как решать например это же задание но не только когда массив отсортирован по возрастанию , а когда он отсортирован по убыванию то будет вообще гуд .
P.S Если у вас есть другой решённый пример с поиском элемента в упорядоченном массиве то напишите его сюда , главное чтобы там всё не сильно запутанно было .Заранее благодарен за ответы по теме .
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.12.2009, 22:43
Ответы с готовыми решениями:

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

Поиск элемента в упорядоченном массиве
Напишите программу, которая организует хранение в массиве 15 различных введённых с клавиатуры...

В одномерном массиве состоящем из n вещественных элементов сделать бинарный поиск числа А в упорядоченном массиве
Всем привет помогите решить задачи 1) В одномерном массиве состоящем из n вещественных элементов:...

Поиск заданного числа в упорядоченном массиве целых чисел
Написать рекурсивную функцию, которая осуществляет поиск заданного числа в упорядоченном массиве...

3
28 / 28 / 7
Регистрация: 03.10.2009
Сообщений: 122
04.12.2009, 23:16 2
Delphi
1
2
3
4
5
for i:=1 to n do
for j:=i downto 1 do begin
if a[j]>a[j-1] then r:=a[i]; a[i]:=a[i-1]; a[i-1]:=r; end;{сортировка по убыванию}
for I:=1 to n do
if A[i]=M {число которое нужно найти} then writeln(i);
0
Платежеспособный зверь
8930 / 4358 / 1642
Регистрация: 28.10.2009
Сообщений: 11,578
05.12.2009, 01:55 3
Цитата Сообщение от flambo Посмотреть сообщение
Delphi
1
2
3
4
5
for i:=1 to n do
for j:=i downto 1 do begin
if a[j]>a[j-1] then r:=a[i]; a[i]:=a[i-1]; a[i-1]:=r; end;{сортировка по убыванию}
for I:=1 to n do
if A[i]=M {число которое нужно найти} then writeln(i);
Если кто-то попытается это запустить, сломает голову от кучи ошибок.
Вот рабочая программа, массив отсортирован по убыванию, чтобы отсортировать по возрастанию, надо только поменять знак > на <
Pascal
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
26
27
28
29
30
31
var
a:array[1..100]of integer;
n,i,j,m,r,f:integer;
begin
writeln('vvedite kol-vo elementov');
readln(n);
randomize;
for i:=1 to n do
begin
a[i]:=random(10);
write(a[i],' ');
end;
writeln;
for i:=1 to n do
for j:=i downto 2 do
if a[j]>a[j-1] then begin r:=a[j]; a[j]:=a[j-1]; a[j-1]:=r; end;
writeln('posle sortirovki');
for i:=1 to n do
write(a[i],' ');
writeln;
writeln('vvedite chislo');
readln(m);
for I:=1 to n do
if A[i]=M then
begin
writeln('nomer=',i);
f:=1;
end;
if f=0 then writeln('takogo chisla net');
readln;
end.
0
1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
05.12.2009, 12:44  [ТС] 4
Извините , но это не совсем то что нужно так как это не поиск в упорядоченном массиве , а просто поиск элемента в массиве , которому пофиг на то что массив отсортирован и если например ищем число 5 и массив отсортирован и и уже идёт число 6 то поиск всё равно будет идти до конца , а я бы хотел научиться именно поиску в отсортированном массиве .Его принцип мне пытался обьяснить друг :
Имеем массив: |0|1|2|3|4|<тута_центр>|5|6|7|8|9|
Надобно найти например 7;
q = 0; p = 9;
0+9 = 9;
(9 / 2) ≈ 4;
4 < 7 по этому берем другую половину, т.е. |5|6|7|8|9| q = 5, p = 9, и повторяем.
Вот только код он не написал ответив что лень , но скорее всего он наверное полностью уже не помнит как этот поиск осуществляется .Вся фишка в том что этот поиск занимает меньше времени ...
0
05.12.2009, 12:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.12.2009, 12:44
Помогаю со студенческими работами здесь

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

Бинарный поиск в упорядоченном по возрастанию массиве
9 лаб.работа Бинарный поиск в упорядоченном по возрастанию массиве

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

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


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

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

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