Advertisement
Guest User

Untitled

a guest
Mar 25th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.57 KB | None | 0 0
  1. arr = ['a','b','c']
  2.  
  3. def initialize_counter(n):
  4. out = []
  5. for i in range(n):
  6. out.append(0)
  7. return out
  8.  
  9. def increment_counter(arr):
  10. n = len(arr)
  11. for i in range(n-1, -1, -1):
  12. arr[i] += 1
  13. if arr[i] % n == 0:
  14. arr[i] = 0
  15. else:
  16. break
  17.  
  18. def permutations(arr):
  19. out = []
  20. n = len(arr)**len(arr)
  21.  
  22. counter = initialize_counter(len(arr))
  23. for i in range(n):
  24. new_permutation = []
  25. for elem in counter:
  26. new_permutation.append(arr[elem])
  27. out.append(new_permutation)
  28. increment_counter(counter)
  29. return out
  30.  
  31. print(permutations(arr))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement