How to generate all possible permutations of a list using recursion in Python

1 Answer

0 votes
def permutations(lst, result=[]):
    if len(lst) == 0:
        print(result)
    else:
        for i in range(len(lst)):
            permutations(lst[:i] + lst[i + 1:], result + lst[i:i + 1])
            
permutations([1, 2, 3])






'''
run:

[1, 2, 3]
[1, 3, 2]
[2, 1, 3]
[2, 3, 1]
[3, 1, 2]
[3, 2, 1]

'''

 



answered Apr 20, 2021 by avibootz
...