Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def permutations():
- sequence = [0,1,2,3,4,5,6]
- sequenceCopy2 = [0, 1, 2, 3, 4, 5, 6]
- sequenceCopy = [2,6,0,5,1,3,4]
- while len(sequence) > 1:
- chain = get_chain(sequence, sequenceCopy)
- sequence = diff(sequence, chain)
- print(chain)
- def diff(list1, list2):
- c = set(list1).union(set(list2)) # or c = set(list1) | set(list2)
- d = set(list1).intersection(set(list2)) # or d = set(list1) & set(list2)
- return list(c - d)
- def get_chain(sequence, permutation):
- chain = []
- index1 = permutation.index(sequence[0])
- chain.append(sequence[0])
- chain.append(index1)
- src = index1
- while True:
- chain.append(permutation.index(src))
- if chain[0] == chain[len(chain)-1]:
- return chain
- src = permutation.index(src)
- permutations()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement