Tree class. : Your Tree : Collections PYTHON TUTORIALS


PYTHON TUTORIALS » Collections » Your Tree »

 

Tree class.


class Treenode:
   def __init__self, data ):
      self._left = None
      self._data = data
      self._right = None

   def __str__self ):
      return strself._data )      

class Tree:
   def __init__self ):
      self._rootNode = None
        
   def insertNodeself, value ):
      if self._rootNode is None:  
         self._rootNode = Treenodevalue )
      else
         self.insertNodeHelperself._rootNode, value )

   def insertNodeHelperself, node, value ):
      if value < node._data: 
         if node._left is None:
            node._left = Treenodevalue )
         else:
            self.insertNodeHelper node._left, value )
      elif value > node._data:
         if node._right is None: 
            node._right = Treenodevalue )
         else:
            self.insertNodeHelpernode._right, value )
      else
         print value, "duplicate"

   def preOrderTraversalself ):
      self.preOrderHelperself._rootNode )

   def preOrderHelperself, node ):
      if node is not None:
         print node,
         self.preOrderHelpernode._left )
         self.preOrderHelpernode._right )

   def inOrderTraversalself ):
      self.inOrderHelperself._rootNode )

   def inOrderHelperself, node ):
      if node is not None:
         self.inOrderHelpernode._left )
         print node,
         self.inOrderHelpernode._right )

   def postOrderTraversalself ):
      self.postOrderHelperself._rootNode )

   def postOrderHelperself, node ):
      if node is not None:
         self.postOrderHelpernode._left )
         self.postOrderHelpernode._right )
         print node,
         
tree = Tree()
values = "1 2 3 4 5 6 7 8 9 0 10"

for i in values.split():
   tree.insertNodeint) )

tree.preOrderTraversal()
print

tree.inOrderTraversal()
print

tree.postOrderTraversal()
print



Leave a Comment / Note


 
Verification is used to prevent unwanted posts (spam). .


PYTHON TUTORIALS

 Navioo Collections
» Your Tree