Приветствую! Пусть есть конечное множество с размерностью N типа A={0;1;2;...;N-1}. Меня интересует алгоритм, позволяющий перебрать все N! перестановок. В идеале мечтаю о функции типа
bool NextPermut(int *A, int N);
Подразумевается, что в момент вызова функции в A - текущая перестановка, а после возврата функции в А - уже новая перестановка. Если A = {N-1; N-2;N-3;...2;1;0} - функция возвращает true (перебор закончен), иначе - false.