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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2014, 14:48   #1
irene17
 
Регистрация: 17.04.2014
Сообщений: 5
По умолчанию Перечисление всех возможных сочетаний (комбинаторика) C#

Необходимо перечислить все возможные сочетания (комбинаторика). Например: n=6, k=3. Тогда сочетания будут следующие:
123 134 146 236 345
124 135 156 245 346
125 136 234 246 356
126 145 235 256 456
Число n задается в начале работы программы, а значение k внутри программы меняется. Здесь как-то можно применить рекурсию, но не пойму как. Пишу на шарпе. Помогите решить.
irene17 вне форума Ответить с цитированием
Старый 17.04.2014, 16:48   #2
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Самый простой способ: в цикле перебираешь все числа от 1 до (2^n)-1. Если количество единичных бит у числа равняется k - выводишь их номера, это и будет следующая комбинация.
Son Of Pain вне форума Ответить с цитированием
Старый 17.04.2014, 18:06   #3
irene17
 
Регистрация: 17.04.2014
Сообщений: 5
По умолчанию

Эта задача лишь часть программы. Значение n может быть достаточно большим, а в программе подобная процедура отыскания сочетаний выполняется приличное количество раз, нет ли метода требующего меньше времени выполнения?
irene17 вне форума Ответить с цитированием
Старый 17.04.2014, 19:55   #4
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Цитата:
Сообщение от irene17 Посмотреть сообщение
нет ли метода требующего меньше времени выполнения?
Есть, конечно ) тысячи их.
Выбирай в зависимости от дополнительных требований задания
Son Of Pain вне форума Ответить с цитированием
Старый 17.04.2014, 20:35   #5
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,899
По умолчанию

http://programmersforum.ru/showthread.php?t=138096
реализация метода с битами
phomm вне форума Ответить с цитированием
Старый 18.04.2014, 13:41   #6
irene17
 
Регистрация: 17.04.2014
Сообщений: 5
По умолчанию

Спасибо за помощь)
irene17 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Комбинаторика - нахождение всех возможных комбинаций chandrasecar Общие вопросы Delphi 20 15.03.2014 11:57
Генерация всех возможных вариантов NanaTich Помощь студентам 6 23.05.2011 07:00
Комбинаторика. Получение возможных вариантов. Alex Cones Общие вопросы Delphi 3 16.01.2011 13:52
Перебор всех возможных вариантов phenix Помощь студентам 3 03.12.2010 21:29