Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.29;
Скачать: CL | DM;

Вниз

Массив   Найти похожие ветки 

 
Новик   (2004-01-19 12:29) [0]

Мастера Delphi!
Подскажите, PLS, как можно из массива забитого целыми, не отрицательными и не равными друг другу числовыми значениями,
вытащить без особого геммора, наименьшее значение?
Спасибо.


 
Романов Р.В.   (2004-01-19 12:31) [1]

А тут всего один вариант имеется...


 
Новик   (2004-01-19 12:36) [2]

> Романов Р.В.
Какой? Если не секрет...


 
TUser   (2004-01-19 12:39) [3]

перебрать и найти минимальный
i:=0; j:=Arr[0];
while not i=length(Arr) do begin
if Arr[i]<j then j:=Arr[i];
inc (i);
end;


 
Babay   (2004-01-19 12:40) [4]

Перебрать массив в цикле и найти наименьшее значение
:=)#

З.Ы. любой учебник по любому языку программирования.


 
Anatoly Podgoretsky   (2004-01-19 12:40) [5]

Два, в зависимости от наличия сортировки.


 
Семен Сорокин   (2004-01-19 12:40) [6]

последовательным перебором :)
я обычно использую TList, а у него метод есть Sort.


 
Романов Р.В.   (2004-01-19 12:40) [7]

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


 
Amoeba   (2004-01-19 12:44) [8]

А ты пораскинь мозгами. Нужно всего лишь написать цикл. Сперва за наименьшее значение принимаешь первый элемент массива. Затем в цикле с 2-го до последнего элемента массива сравниваешь их с этим условно минимальным и если находится меньшее, то берешь за минимум его. Код напишешь сам.


 
Новик   (2004-01-19 12:47) [9]

Спасибо, еще раз!
Я знаю, что это можно зделать перебором в цикле, но я думал, что есть и более простой метод.
> Семен Сорокин - спасибо, интересный вариант.


 
Amoeba   (2004-01-19 12:49) [10]

Если не требуется сортировка массива - то лучше всего перебор в цикле - это быстрее всего.


 
PVOzerski   (2004-01-19 12:50) [11]

"Более простой метод" означает одно из двух - либо это использование "более сложного метода", написанного кем-то другим и засунутого в библиотеку, либо то, что массив предварительно подготовлен к поиску (например, отсортирован в неком порядке).


 
chtr   (2004-01-19 12:50) [12]

Можно еще на sql :)


 
Amoeba   (2004-01-19 12:51) [13]


> Можно еще на sql :)

И гланды можно через ж... удалять.


 
chtr   (2004-01-19 12:58) [14]

Теоретически, то можно еще рекурсию написать


 
Amoeba   (2004-01-19 12:59) [15]

Ура! Вот уже и флейм начался.


 
Dima_dvp   (2004-01-19 13:18) [16]

А ещё можно алгоритм улучшить так:


min := a[0];
if min > 0 then
for i:=1 to 1000 do begin
if a[i] < min then begin
min := a[i];
if min = 0 then
break;
end;
end;


Теоретически, если среднее значение близко к 0 и кол-во элементов достаточно велико, то это может понизить затраты времени.



Страницы: 1 вся ветка

Текущий архив: 2004.01.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.007 c
1-93435
IronHawk
2004-01-16 15:13
2004.01.29
Приветствую Мастеров! Как сделать проверку, что в строке ДАТА?


1-93420
jiurajhgjhgty
2004-01-16 19:53
2004.01.29
OleContainer и excel


14-93697
Anatoly Podgoretsky
2003-12-29 14:54
2004.01.29
С Днем Рождения 29.12.2003


8-93589
Дмитрий В. Белькевич
2003-09-03 17:48
2004.01.29
Как из TBitmap вытащить plain data


1-93443
Интересующийся
2004-01-16 13:37
2004.01.29
Определить символ с цветом





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский