Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- > function permgen (a, n)
- >> if n == 0 then
- >> printResult(a)
- >> else
- >> for i=1,n do
- >>
- >> -- put i-th element as the last one
- >> a[n], a[i] = a[i], a[n]
- >>
- >> -- generate all permutations of the other elements
- >> permgen(a, n - 1)
- >>
- >> -- restore i-th element
- >> a[n], a[i] = a[i], a[n]
- >>
- >> end
- >> end
- >> end
- > function printResult (a)
- >> for i,v in ipairs(a) do
- >> io.write(v, " ")
- >> end
- >> io.write("\n")
- >> end
- > permgen ({1,2,3,4}, 4)
- 2 3 4 1
- 3 2 4 1
- 3 4 2 1
- 4 3 2 1
- 2 4 3 1
- 4 2 3 1
- 4 3 1 2
- 3 4 1 2
- 3 1 4 2
- 1 3 4 2
- 4 1 3 2
- 1 4 3 2
- 2 4 1 3
- 4 2 1 3
- 4 1 2 3
- 1 4 2 3
- 2 1 4 3
- 1 2 4 3
- 2 3 1 4
- 3 2 1 4
- 3 1 2 4
- 1 3 2 4
- 2 1 3 4
- 1 2 3 4
- >
Add Comment
Please, Sign In to add comment