![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Серийный упорядоченный поиск в массиве [D7, WinXP]
X © (2004-11-05 20:11:00)подскажите как сделать серийный упорядоченный поиск.
Искомые числа предварительно упорядочиваются по возрастанию их величины Первое число ищется последовательным просмотром списка чисел, хранящихся в машине, а поиск каждого нового числа производится на участке, левой границей которого является адрес последнего найденного числа Правая граница списка чисел остается неизменной, а левая постепенно приближается к правой.
Среднее количество циклов поиска одного числа определяется величиной:
Iсреднее=i/n
l - объем списка чисел, находящихся в ОЗУ;
n - количество искомых чисел.
X (2004-11-05 21:47:00) [1]неподскажешь вот эта и есть упорядачивание как мне нужно
procedure TForm1.Button3Click(Sender: TObject);
var
buf,j,min:integer;
begin
for i:=1 to 5 - 1 do
begin
min:=i;
for j:=i+1 to 5 do
if m[j] < m[min] then min:=j;
buf:=m[i];
m[i]:=m[min];
m[min]:=buf;
X (2004-11-05 20:50:00) [2]мне надо вначале этот масив упорядочить а потом сделать в нем поиск
uny (2004-11-05 20:47:00) [3]попробуйте в яндексе, я там попробовал прежде чем предлагать - что бы не запозориться
X (2004-11-05 20:46:00) [4]мне надо вначале этот масив упорядочить а потом сделать в нем поиск
X (2004-11-05 20:45:00) [5]мне надо вначале этот масив упорядочить а потом сделать в нем поиск
X (2004-11-05 20:44:00) [6]я искал там нету нифига
uny (2004-11-05 20:36:00) [7]"поиск в упорядоченном массиве" в поисковике накраяйняк..
X (2004-11-05 20:30:00) [8]а как это програмно реализовать на дельфях
uny (2004-11-05 20:17:00) [9]деление пополам - как Вы описали, только не последовательный просмотр, а участки эти пополам делить - если там меньше чем искомое, то нет смысла просматривать все числа до половины участка, можно сразу следующую половину смотреть.