2011-05-06 5 views
1

프로젝트의 일부로 minimax를 작성하고 있지만 올바르게 작동하는지 확인하기가 어렵습니다. 내가하는 일의 나무를 인쇄 할 수 있다면 매우 유용 할 것입니다.재귀 트리 인쇄

재귀 호출 트리를 인쇄하고 상황에 중요한 변수를 선택하는 쉬운 방법이 있습니까?

+0

Visitor를 사용하여 트리를 탐색하고 방문한 각 트리 노트를 인쇄하는 방법은 어떻습니까? 또는 각 노드에서 적절한 toString() 메서드를 사용합니까? – Dirk

+0

@Dirk : 미니 맥스 알고리즘에서는 실제로 메모리에 트리를 만들지 않습니다. 트리 구조는 재귀에서 암시 적입니다. –

답변

1

매개 변수를 사용하여 재귀 깊이를 추적하십시오 (최소값에서는 어쨌든 사용합니다). 그런 다음 인쇄 깊이 * 각 통화에서 재미있는 변수 뒤에 공간의 소수, 당신은 각 재귀 호출의 반환 값을 인쇄 할 수 있습니다

player=1, move=... 
    player=2, move=... 
    player=1, move=... 
    ... 
    player=2, move=... 

얻을 수있다.

나무의 절묘한 그림을 원한다면 위 출력물을 사후 처리하여 트리 그리기 패키지로 보내십시오.

+0

좋은 나무 그리기 패키지 (오픈 소스)는 무엇입니까? –

관련 문제