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

Вниз

Поиск минимумов-максимумов.   Найти похожие ветки 

 
wsv ©   (2007-08-17 13:11) [0]

Здравствуте все.

Вот есть массив int данных, например:

10,9,8,7,6,8,10,12,14,16,15,10,5,7,9,11,13...

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

[10,6,0,4],[6,16,4,9],[16,5,9,12],[5,13,12,16]
,
где в выражении
[10,6,0,4] 10 - максимум, 6-минимум, 0-индекс максимума, 4- индекс минимума.
[6,16,4,9] - 6 - минимум, 16-максимум, 4-индекс минимума, 9-индекс максимума.

Туплю как...
Спасибо.


 
wsv ©   (2007-08-17 13:19) [1]

ЗЫ. Уточнение. Разбивать на отрезки или нельзя или разбивать так, чтобы конец входного массива тоже обработался.


 
MBo ©   (2007-08-17 13:21) [2]

Не уточнено, если несколько одинаковых значений - что из них считать экстремумом?

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


 
wsv ©   (2007-08-17 13:38) [3]


> Не уточнено, если несколько одинаковых значений - что из
> них считать экстремумом?


Первое из одинаковых.


 
MBo ©   (2007-08-17 14:07) [4]

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



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

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

Наверх




Память: 0.47 MB
Время: 0.064 c
2-1191917927
Separator
2007-10-09 12:18
2007.10.28
StringGrid.Rows


5-1162213823
любитель
2006-10-30 16:10
2007.10.28
подскажите как победить


2-1191565058
vlad0
2007-10-05 10:17
2007.10.28
Счетчик ссылок.


1-1187095274
NKT
2007-08-14 16:41
2007.10.28
MainMenu - ActionList , замена свойства Caption


15-1190620175
Галинка
2007-09-24 11:49
2007.10.28
Редактировать под Windows, компилировать под Линуксом