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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Составить 2 МАТРИЦЫ http://www.cyberforum.ru/cpp-beginners/thread55995.html
СОСТАВИТЬ: 1)положение точек А и В и также припятсвия 2)М Весов от точки B до А А = 1 B = 2 n = 3 своб = 0 --------------------------- Функции: 1)Проверка на возможность хода,и...
C++ Вычислить высоту треугольника Всем привет!Поступил на первый курс!У нас програмирование на Borland C++!Уже начали грузить!Кому не тяжело решите 4 программы!Но напишите так чтоб било выдно чо писал первокурсник а не програмист!... http://www.cyberforum.ru/cpp-beginners/thread55991.html
Утечка памяти C++
Доброго времени суток. Написал оконное приложение. Столкнулся с проблемой - утекает память. Какие есть средства, чтобы определить, где и как происходит утечка? Спасибо.
Область видимости в С++ C++
В книге С++ Бархатный путь. ( http://khpi-iip.mipk.kharkiv.edu/library/extent/prog/cppvw/cpp_047.html) сказано, что область действия имен объявленных в заголовке цикла попадает в общее пространство...
C++ С++ массив http://www.cyberforum.ru/cpp-beginners/thread55978.html
Эксперты помогиете с написание программы, первый год начил изучать С++, и пока очень плохо разбираюсь что да как((( Задание: В одномерном массиве, состоящем из n вещественных элементов,...
C++ Метод сортировки в файле Значит так,помогите сделать такое : есть файл(*.txt) в середине есть 1000 строчек (допустим цифри ,int) так вод надо не считивая все 1000 чисел в память (тоисть работать в середине в файле)... подробнее

Показать сообщение отдельно
Ketino
8 / 8 / 0
Регистрация: 21.09.2009
Сообщений: 84
12.10.2009, 19:43
Цитата Сообщение от 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
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru