Es werden aber nicht *alle* Permutationen gebildet, wenn ich das richtig sehe, zumindest nicht bei Deiner langsamen Variante.
Ich habe die mal gerade (in C) nachempfunden (siehe Attachment perms.c), wenn man da fuer alle Werte von 0..23 Dein permuteSlow() auf ein Array [0, 1, 2, 3] loslaesst...