![]() |
|
|
![]()
|
|
| distorti |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 25.7.2005 Репутация: нет Всего: нет |
Привет всем!
Такая задача: самым эффективным способом сгенерировать всевозможные комбинации из элементов массива. например: input: [1,3,5] output: [1,3,5] [1,5,3] [3,1,5] [3,5,1] [5,1,3] [5,3,1] |
|||
|
||||
| MBo |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 234 Регистрация: 10.6.2002 Репутация: 5 Всего: 18 |
Это называется перестановки (permutation)
Думаю, теперь найти труда не составит |
|||
|
||||
| Kuvaldis |
|
|||
![]() механик-вредитель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1189 Регистрация: 16.6.2006 Где: Минск Репутация: 1 Всего: 61 |
distorti,
Если у тебя не могут быть повторяющиеся элементы в массиве, то можно сделать рекурсивно, "по индукции": на каждой итерации цикла ставим на место первого элемента очередной элемент строки длины n и для остальных элементов справа генеририуем перестановки (n - 1) порядка. Думаю, будет не сложно преобразовать программу для работы с целочисленными массивами.
-------------------- Помни - когда ты спишь, враг не дремлет Спи чаще и дольше, изматывай врага бессоницей |
|||
|
||||
| distorti |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 25.7.2005 Репутация: нет Всего: нет |
Spasibo, ideja jasna
|
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |