Изменения

Перейти к: навигация, поиск

Получение следующего объекта

22 байта добавлено, 22:34, 16 декабря 2013
м
Специализация алгоритма для генерации следующей мультиперестановки
* Меняем его с минимальным элементом, большим нашего, стоящим правее.
* Переворачиваем правую часть.
'''procedurefunction''' nextMultiperm(var b:array[1..N] of integer):mutiperm;
'''var''' i , j : '''integer''';
'''begin'''
'''for''' j := i + 1 '''to''' (N + i) '''div''' 2 '''do'''
swap(b[j], b[N - j + i + 1]);
write(nextMultiperm:=b[1..N]);
'''end'''
'''else'''
'''begin'''
write('nextMultiperm:=null');
'''end;'''
'''end;'''
76
правок

Навигация