Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Krios
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 10
#1

Поиск самой длинной неубывающей подпоследовательности - C++

12.10.2009, 19:25. Просмотров 1184. Ответов 5
Метки нет (Все метки)

Формулировка задачи: Реализовать на языке C или C++ алгоритм поиска для заданной числовой последовательности самой длинной неубывающей подпоследовательности.

Хотелось бы увидеть код или хотя бы фрагменты, но если объясните алгоритм на словах, буду тоже благодарен!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2009, 19:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поиск самой длинной неубывающей подпоследовательности (C++):

Функция нахождения самой длинной неубывающей подпоследовательности - C++
Помогите найти ошибку //Функция находит самую длинную неубывающую подпоследовательность void Search(List *head, List*tail) { ...

Функция нахождения самой длинной неубывающей подпослед-ти - C++
void Search(List *head, List*tail) { List *p = head->next; while (p != tail) { if (p->info < p->next->info) ...

Найти длину самой длинной возрастающей подпоследовательности в массиве - C++
Вводится массив. Найти в нем длину самой длинной возрастающей подпоследовательности.

Нужно найти длину самой длинной подпоследовательности, в которой равное количество 0 и 1. - C++
Здравствуйте. Задана последовательность из 0 и 1. Нужно найти длину самой длинной подпоследовательности, в которой равное количество 0 и...

Поиск максимальной по длине монотонно неубывающей подпоследовательности вещественных чисел - C++
Напишите на языке C / C++ программу поиска максимальной по длине монотонно неубывающей подпоследовательности во входной последовательности...

Поиск самой длинной строки в файле - C++
дана такая задача: Дан текстовый файл f. Вывести самую длинную строку файла. Если в файле имеется несколько строк с наибольшей длиной, то...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ketino
8 / 8 / 0
Регистрация: 21.09.2009
Сообщений: 84
12.10.2009, 19:43 #2
Цитата Сообщение от Krios Посмотреть сообщение
Формулировка задачи: Реализовать на языке C или C++ алгоритм поиска для заданной числовой последовательности самой длинной неубывающей подпоследовательности.

Хотелось бы увидеть код или хотя бы фрагменты, но если объясните алгоритм на словах, буду тоже благодарен!
На словах:
Пусть есть массив М длинной D чисел.
Переменная Н будет хранить индекс первого числа искомой последовательности, К - последний индекс.
Переменная НВР и КВР - начало и конец текущей последовательности
Алгоритм:
C++
1
2
3
4
5
6
7
8
9
H=K=HBP=KBP=1;
for (i=2;i<= D;i++) {
  if M[i-1]<=M[i] {
     KBP++;
  } else {
     if (KBP-HBP) > (K-H) {H=HBP; K=KBP;};
     HBP=KBP=i; 
  };
}
1
Krios
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 10
15.10.2009, 12:05  [ТС] #3
Ketino написал алгоритм поиска самой длинной неубывающей подряд идущей подпоследовательности. А требуется найти просто самую длинную неубывающую подпоследовательность. Например, для 1 0 2 1 3 2 4 3 5 это будет 1 2 3 4 5 или 0 2 3 4 5...
0
Ketino
8 / 8 / 0
Регистрация: 21.09.2009
Сообщений: 84
15.10.2009, 12:13 #4
Цитата Сообщение от Krios Посмотреть сообщение
Ketino написал алгоритм поиска самой длинной неубывающей подряд идущей подпоследовательности. А требуется найти просто самую длинную неубывающую подпоследовательность. Например, для 1 0 2 1 3 2 4 3 5 это будет 1 2 3 4 5 или 0 2 3 4 5...
Тогда эта задача для ветки "Алгоритмы", а не для начинающих С++
0
Krios
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 10
15.10.2009, 12:50  [ТС] #5
Цитата Сообщение от Ketino Посмотреть сообщение
Тогда эта задача для ветки "Алгоритмы", а не для начинающих С++
Я сомневался куда отнести эту задачу, поэтому написал в "любые вопросы", а администрация форума определила её сюда.
0
Krios
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 10
15.10.2009, 13:18  [ТС] #6
Цитата Сообщение от TanT Посмотреть сообщение
1. администрация форума всегда права
2. если администрация форума не права см. пункт 1. (с)
TanT, я не выражал недовольство по отношению к администрации. И уже создал эту тему в разделе "алгоритмы", так что вопрос исчерпан.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2009, 13:18
Привет! Вот еще темы с ответами:

Поиск самой длинной строки в const char** - C++
Здравствуйте. Вот функция: template &lt;&gt; char* maxn&lt;char*&gt;(char** const ar, const int* limit) { int curmax = 0, absmax = 0, max_ind...

Поиск самой длинной цепочки из подряд идущих одинаковых элементов в массиве - C++
Помогите пожалуйста решить программу. Если можно как можно проще используя только циклы, ветвления , массивы и переменные. Сам не...

Переделать функцию поиска самой длинной строки так, чтобы она правильно печатала размер произвольно длинной входной строки и воспроизводила ее - C++
Переделать головную функцию поиска самой длинной строки так, чтобы она правильно печатала размер произвольно длинной входной строки...

Определить количество чисел в наиболее длинной подпоследовательности из нулей - C++
Дана последовательность из 100 целых чисел. Определить количество чисел в наиболее длинной подпоследовательности из подряд идущих нулей


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.10.2009, 13:18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru