Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.015 c
2-1191237092
абв
2007-10-01 15:11
2007.10.28
blob и jpg


15-1190773341
Slider007
2007-09-26 06:22
2007.10.28
С днем рождения ! 26 сентября 2007 среда


15-1190704588
Некто
2007-09-25 11:16
2007.10.28
Сообщение: "Автономные файлы - Автономная работа"


2-1191862496
DeadLord
2007-10-08 20:54
2007.10.28
ламерский вопрос:(


3-1182328308
Dust
2007-06-20 12:31
2007.10.28
fast report 2.5 проблема со строковой переменной




   Наверх