Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2011, 01:23   #1
juky88
 
Регистрация: 17.04.2011
Сообщений: 4
Вопрос Перебор последовательности динамической длины. (важно)

Подскажите пожалуйста!!!
Есть массив чисел размером n. Из этого массива нужно перебрать возможные последовательности длиной k.
Длина последовательности может быть различной.
Например, миссив {0,1,2,3,4,5,6,7,8,9}. Устанавливаем длину последовательности k=2. Должны получить: 0,1; 0,2; 0,3;...0,9; 1,2; 1,3; 1,4;...1,9
и т.д. А если пользователь ввёл длину последовательности k=3, то получим: 0,1,2; 0,1,3; 0,1,4;...0,1,9; 0,2,3; 0,2,4;...0,2,9; 0,3,4; 0,3,5;...0,3,9; и т.д
Последовательность 0,1,2 = 0,2,1, поэтому учитываем только 0,1,2.

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

Заранее спасибо большое за помощь!!!

Последний раз редактировалось juky88; 17.04.2011 в 02:42.
juky88 вне форума Ответить с цитированием
Старый 17.04.2011, 10:45   #2
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

можно попробовать рекурсией
типа вызываем поиск всех последовательной без текущего элемента и с количеством k-1
например, массив {0,1,2,3,4,5} ищем последовательности начинающиеся с 0 и k=3
тогда ко всем последовательностям в {1,2,3,4,5} с k=2 нужно слева прилепить нолик
еще, например при поиске последовательностей начинающихся с какого-то элемента, предыдущие элементы мы не трогаем, чтобы выполнялось
Цитата:
Последовательность 0,1,2 = 0,2,1, поэтому учитываем только 0,1,2.
Форматируйте код, будьте людьми.
Granus вне форума Ответить с цитированием
Старый 17.04.2011, 12:21   #3
Vago
Форумчанин
 
Регистрация: 15.01.2010
Сообщений: 948
По умолчанию

http://programmersforum.ru/showthread.php?t=142280
Vago вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определить:формат последовательности параметров & способ размещения последовательности переменных DenSyntax Помощь студентам 0 22.06.2010 17:26
Получить все последовательности длины N из чисел 1,2,...,M Simbad Microsoft Office Excel 6 25.03.2010 14:28
Поиск в последовательности чисел упорядоченной подпоследовательности макс длины Rusl92 Помощь студентам 6 27.02.2010 00:02
Сортировка динамической структуры Lemo Помощь студентам 7 13.10.2009 18:58
Определить k-ую цифру последовательности Фибоначчи и последовательности натуральных чисел. Med Помощь студентам 1 20.03.2009 11:40