이진 트리 파이썬 반전
2656 단어 pythonalgorithmscomputerscience
이진 트리가 주어지고 이를 반전시키거나 모든 왼쪽 노드를 해당하는 오른쪽 노드로 교체해야 합니다.
각 BinaryTree 노드에는 정수 Value, 왼쪽 자식 노드 및 오른쪽 자식 노드가 있습니다. 자식 노드는 BinaryTree 자체 또는 None/Null일 수 있습니다.
# Given class definition of a binary tree
# DO NOT TOUCH THIS
class BinaryTree:
def __init__(self, value):
self.value = value
self.left = None
self.right = None
def invertBinaryTree(tree):
if tree is None:
return
swapLeftAndRight(tree)
invertBinaryTree(tree.left)
invertBinaryTree(tree.right)
def swapLeftAndRight(tree):
tree.left, tree.right = tree.right, tree.left
swapLeftAndRight
함수는 왼쪽과 오른쪽 노드의 실제 스왑을 수행하는 가장 중요한 부분입니다. Python은 한 줄에 스왑을 넣을 수 있는 곳에서 정말 좋습니다.그런 다음 invertBinaryTree 함수를 재귀적으로 호출하여 다음 왼쪽 및 오른쪽 자식 노드를 계속 교환합니다.
Reference
이 문제에 관하여(이진 트리 파이썬 반전), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jabermudez11/invert-binary-tree-python-5dam텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)