오늘 배운 것: 순열
3775 단어 pythonalgorithmswebdevbeginners
문제 설명
고유한 정수 배열을 받은 다음 순서가 지정되지 않은 모든 순열의 배열을 반환하는 함수를 작성하십시오.
샘플 입력
array = [1, 2, 3]
샘플 결과
[
[1, 2, 3],
[1, 3, 2],
[2, 1, 3],
[2, 3, 1],
[3, 1, 2],
[3, 2, 1]
]
코드 #1
def get_permutations(array):
permutations = []
helper(0, array, permutations)
return permutations
def helper(i, array, permutations):
if i == len(array) - 1:
permutations.append(list(array))
else:
for j in range(i, len(array)):
swap(array, i, j)
helper(i + 1, array, permutations)
swap(array, i, j)
def swap(array, i, j):
array[i], array[j] = array[j], array[i]
메모
array = [1, 2, 3]
샘플 결과
[
[1, 2, 3],
[1, 3, 2],
[2, 1, 3],
[2, 3, 1],
[3, 1, 2],
[3, 2, 1]
]
코드 #1
def get_permutations(array):
permutations = []
helper(0, array, permutations)
return permutations
def helper(i, array, permutations):
if i == len(array) - 1:
permutations.append(list(array))
else:
for j in range(i, len(array)):
swap(array, i, j)
helper(i + 1, array, permutations)
swap(array, i, j)
def swap(array, i, j):
array[i], array[j] = array[j], array[i]
메모
[
[1, 2, 3],
[1, 3, 2],
[2, 1, 3],
[2, 3, 1],
[3, 1, 2],
[3, 2, 1]
]
def get_permutations(array):
permutations = []
helper(0, array, permutations)
return permutations
def helper(i, array, permutations):
if i == len(array) - 1:
permutations.append(list(array))
else:
for j in range(i, len(array)):
swap(array, i, j)
helper(i + 1, array, permutations)
swap(array, i, j)
def swap(array, i, j):
array[i], array[j] = array[j], array[i]
메모
크레딧
Reference
이 문제에 관하여(오늘 배운 것: 순열), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/anzhari/today-i-learned-permutations-i1e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)