트리의 모든 요소를 목록에 반환하는 함수를 작성하고 싶습니다. 글로벌 변수를 사용할 수 없다. 여기에 내가 시도 내용은 다음과 같습니다트리를 통해 탐색
def traverse(current node):
if no left child and no right child:
return current nodes data
else:
if both left child and right child exist:
return [current nodes data,left_child.traverse(),right_child._traverse()]
elif no left child: return [current node's data,right_child.traverse()]
elif no right child: return [current node's data,left_child.traverse()]
우리는이 예를 사용 : (루트는 2, 왼쪽 아이는 1, 바로 아이가 3과 오른쪽 아동의 권리 자녀 4입니다)
2
1 3
4
트래버스에 전화를 그래서 유일한 문제는 우리가 모두 하나 개의 목록에 맞도록 얻을 수 있다는 것입니다
[2, 1, [3, 4]]
:이 나무는이 돌아왔다.
편집 : node.data
, node.left
, node.right
당신이뿐만 아니라 노드에 대한 코드를 추가 할 수 있습니까? – Moshe