コード例 #1
0
ファイル: binary_tree.py プロジェクト: skynet3214/cdp
 def add_node_to_tree(
         self,
         data):  #if given a list, how to add all the elements in the list
     if self.root == None:
         self.root = TreeNode(data)
         self.no_of_nodes += 1
         #print "root: ",self.root.data
     else:
         q = Queue()
         node = self.root
         q.enqueue([node])
         while not q.IsQueueEmpty():
             node = q.dequeue()
             if node.left is None:
                 node.left = TreeNode(data)
                 self.no_of_nodes += 1
                 #print node.left.data
                 q.clear()
             elif node.right is None:
                 node.right = TreeNode(data)
                 self.no_of_nodes += 1
                 #print node.right.data
                 q.clear()
             else:
                 q.enqueue([node.left, node.right])