Показать сообщение отдельно
Старый 19.12.2005, 13:14     # 6
Trotil
Advanced Member
 
Аватар для Trotil
 
Регистрация: 21.04.2005
Адрес: град Москва
Сообщения: 431

Trotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собой
Алгоритм может быть таким:

1. Идешь с конца массива, ищешь элемент, который меньше предыдущего
(если смотреть справа)
2. В оставшейся части справа ищешь такой элемент, который больше найденного, но, при этом меньше всех остальных.
3. Этот элемент меняешь местами с найденным элементом.
4. Сортируешь по неубыванию оставшуюся правую часть.

Исходники можно посмотреть тут (но не вчитывался в алгоритм, не знаю, какой там подход реализован):
http://algolist.manual.ru/maths/comb...rmutations.php

Последний раз редактировалось Trotil; 19.12.2005 в 13:17.
Trotil вне форума