![]() |
|
![]() ![]() ![]() |
|
Helmet |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 27.2.2009 Где: Someone's hea d Репутация: нет Всего: 1 |
Здравствуйте. Стоит задача реализовать генерацию групп бинарных кодов заданной длины таких, что коды внутри группы будут различаться заданным количеством разрядов. Коды не должны повторяться.
Т.е. если например задана длина кода 4 и кол-во отличающихся разрядов 4, то должно быть сгенерировано 8 групп по 2 кода в каждой: 0000 0001 0011 0010 0101 0100 0110 1000 1111 1110 1100 1101 1010 1011 1001 0111 Может существуют какие-либо алгоритмы, способные помочь в решении данной задачи? Или хотя бы направление для поиска? |
|||
|
||||
dengalf |
|
|||
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 10.4.2009 Репутация: нет Всего: нет |
По-моему самым простым(хотя далеко не рациональным) способом будет перебор:
1) первый набор - всегда 000..00, находим ему все пары 2) затем увеличиваем следующий "первый" набор на единицу (те хх...х + 00...1) 3) смотрим, чтобы не было похожих наборов, если они есть переходим к (4) иначе находим ему все пары и снова (2) 4) повторяем (2) и (3), пока общее количество наборов не станет 2^n штук Если не ошибся и правильно понял задачу, то вроде так Это если совсем глупо, а так - думаю где-то в области комбинаторики порыть |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |