# -*- coding:utf-8 -*-
from typing import List
class TreeNode:
# Definition for a binary tree node.
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
class BinaryTreeTraversal:
"""
二叉树遍历
前序遍历 (preorderTraversal):根 - 左 - 右
中序遍历 (inorderTraversal) :左 - 根 - 右
后序遍历(postorderTraversal):左 - 右 - 根
"""
def preorderTraversal(self, root: TreeNode) -> List[int]:
"""
前序遍历 (preorderTraversal):根 - 左 - 右
"""
# 迭代法
if root is None:
return []
else:
result = [root.val]
stack = [root.right, root.left]
while len(stack) > 0:
node = stack.pop()
if node is not None:
result.append(node.val)
sta
二叉树的前中后序遍历
最新推荐文章于 2024-04-19 13:27:40 发布