how do i display all alternatives that can be matched using n different characters

eg:

a b c d
a b d c
a c b d
and so on...until all different unique combinations are made

a b c
b a c
b c a
c a b
c b a