Liste des permutations d'un ensemble fini Voici une traduction en Python de l'algorithme de Heap.

def heap(n,A): if n == 1: print A else: heap(n-1,A) for i in range(0,n-1): if n%2 == 0: x = A[i] A[i] = A[n-1] A[n-1] = x else: x = A[0] A[0] = A[n-1] A[n-1] = x heap(n-1,A) heap(5,[1,2,3,4,5])