algorithme de permutation