二叉树的遍历(前中后序)

前序遍历:root -> left -> right

中序遍历:left -> root -> right

后序遍历:  left -> right -> root

注意:二叉搜索树的 中序遍历,结果是一个 有序数组

代码:

前序遍历

class solution(object):

  traverse_path =[]

  def preOrder(self,root):

    if root:

      self.traverse_path.append(root.val)

      self.preOrder(root.left)

      self.preOrder(root.right)

中序遍历:

class solution(object):

  traverse_path =[]

  def preOrder(self,root):

    if root:

      self.preOrder(root.left)

      self.traverse_path.append(root.val)

      self.preOrder(root.right)

后序遍历:

class solution(object):

  traverse_path =[]

  def preOrder(self,root):

    if root:

      self.preOrder(root.left)      

      self.preOrder(root.right)

      self.traverse_path.append(root.val)

猜你喜欢

转载自www.cnblogs.com/wl413911/p/12938192.html