Имплементирайте функцията permutations :: [Int] -> [[Int]]
, която приема списък от числа и връща всички възможни пермутации.
> permutations [1,2,3]
[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
Напишете функцията, като използвате най-много 200 символа (и без да сменяте името)!
Броят на всички възможни пермутации на лист с n
елемента е n!
. Знаем, че 0! = 1
, какво трябва да връщаме при permutations []
?