Здравствуйте, deniok, Вы писали:
D>Здравствуйте, Vladimir E., Вы писали:
VE>>Поискал в инете, не мог найти описание алгоритма такой распространённой комбинаторной задачи как перебор элементов массива. Единственное что есть это как вычислить количество вариантов перебора, либо уже готовый код без особых объяснений. Может кто-нибудь объяснить алгоритм решения задачи(есть массив из N элементов, нужно получить N! неповторяющихся массивов, состоящих из тех-же элементов), или дать ссылку где такая вещь грамотно и подробно расписана.
D>Ключевое слово для поиска Permutations
По-русски — перестановки.
Пара дополнений:
В C++ в STL есть алгоритм
template<class BidIt>
bool next_permutation(BidIt first, BidIt last);
осуществляющий над контейнером "следующую" (в лексикографическом порядке) перестановку; то есть последовательные вызовы будут давать
A B C -> A C B -> B A C -> ...
На Хаскелле
здесьАвтор:
Дата: 12.02.07
или
здесьАвтор: R.K.
Дата: 18.03.07
.