二叉树:添加练习

题目

二叉树:树状结构,从根节点root 开始,左小右大。
二叉树 实体类:

class Tree:
  def __init__(self,data):
        # 数据
        self.data = data
        # 左指针
        self.left = None
        # 右指针
        self.right = None

编写一个类:输入一个二叉树数据,完成数据初始化,存在方法:add_node(num):往这个已存在的二叉树中添加数据。

class M:
   def __init__(self,tree:Tree):
        # 初始化二叉树
        self.root_tree = tree
  
  def add_node(self,num):
      实现逻辑 
      return self

  def show_tree(self):
      list = [self.root_tree.data]
      def find_node(tree:Tree):
            if tree.left !=None:
                   list.append(tree.left.data)
                   find_node(tree.left)
            if tree.right !=None:
                   list.append(tree.right.data)
                   find_node(tree.right)
     find_node(self.root_tree)
     print(list)
     return list 

image

image


Btree = M(tree)
Btree.add(20).add(12).show_tree()