def hanoi(n,src,dsc,aux):
if n == 1:
print_move(src,dsc)
else:
hanoi(n-1,src,aux,dsc)
print_move(src,dsc)
hanoi(n-1,aux,dsc,src)
def print_move(src,dsc):
print("Move the top disk from",src,"to",dsc)
I가 순차적으로 실행될 때, 상기 보조 전극을 통해 목적지 극 소스 극 모든 디스크를 이동하는 것이 움직임 출력 튜플 하노이 코드의 상기 탑을 변경하고자 . 디스크 이동은 소스 폴과 대상 폴의 두 숫자로 정의됩니다. 예를 들어, (1, 3)
은 디스크를 첫 번째 폴에서 세 번째 폴로 이동하는 것을 나타냅니다. 따라서, hanoi(2,1,3,2)
출력됩니다 ((1,2),(1,3),(2,3))
타워 - 움직임의 튜플
내 접근 방식은 tup
, 빈 튜플이라는 글로벌 변수를 만드는 것입니다. 새로운 튜플 이동이 생성 될 때마다 tup
에 추가됩니다. 내 문제는 언제 tup
의 값을 반환해야하는지 모르겠다. hanoi
함수 내부에 return
행을 넣을 수있는 함수가 어디에 있는지.
당신은 튜플에 물건을 추가 할 수 있지만, 대신에리스트를 반환 할 수 있고, 원한다면'tuple (result)'를 사용하여 그것을 튜플로 변환 할 수 있습니다.하지만 원하는 것은 목록 일 것입니다. – justhalf