呵呵哒5

导航

python中 完全二叉树的实现

怎么实现呢?废话不多说,直接上代码

class Node:

  def __init__(self,item=None,l_child=None,r_child=None):

    self.data=item

    self.l_child=l_child

    self.r_child=r_child

 

class Tree:

  def __init__(self,root=None):

    self.root = root

  

  def add(self,item):

    node = Node(item)

    if self.root is None:

      self.root = None

    else:

      index_list=[]

      index_list.append(self.root)

      while True:

        cur_node = index_list.pop(0)

        if not cur_node.l_child:

          cur_node.l_child = node  

          return

        elif not cur_node.r_child:

          cur_node.r_child = node

          return 

        else:

          index_list.append(cur_node.l_child)

          index_list.append(cur_node.r_child) 

posted on 2020-07-23 09:40  呵呵哒5  阅读(156)  评论(0)    收藏  举报