Главная страница
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.019 c
6-1172469159
Newfrost
2007-02-26 08:52
2007.10.28
TServerSocket в TService


15-1190873947
F@T@L_Err0r
2007-09-27 10:19
2007.10.28
Ctrl+Alt+Del


2-1191824158
Quart
2007-10-08 10:15
2007.10.28
Текущая запись


9-1162107438
Alexseve
2006-10-29 10:37
2007.10.28
хочу повернуть бочку


1-1186729609
vamp_avp
2007-08-10 11:06
2007.10.28
Передача данных в Word