Re: [перестановка]

From
Valentin Davydov ()
To
Iwan Kroot
Date
2002-05-16T20:02:35Z
Area
RU.ALGORITHMS
From: Valentin Davydov <val@sqdp.trc-net.co.jp>

>   From: Iwan Kroot <Iwan.Kroot@p81.f156.n464.z2.fidonet.org>
>   Date: Mon, 13 May 2002 20:49:12 +0400
>
>        Дано n чисел, необходимо вывести все возможные варианты перестановки.
>Мне нужен самый простой алгоритм.

Довольно прост рекурсивный алгоритм: при n=0 перестановка пуста, при n>0
все перестановки получаются вставлением n-го числа во все возможные
n мест (начиная с "перед началом" и кончая "после конца") каждой 
перестановки из первых n-1 чисел. При реализации следует помнить, что
счётчик от 1 до n локален для данного уровня рекурсии, то есть память
под него надо отводить в n экземплярах.

Вал. Дав.
--- ifmail v.2.15dev5
 * Origin: St. Petersburg State University (2:5020/400)