Advertisement
Guest User

Untitled

a guest
Jan 28th, 2015
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.78 KB | None | 0 0
  1. class Wezel:
  2.     def __init__(self, key):
  3.         self.key = key
  4.         self.left = None
  5.         self.right = None
  6.  
  7.  
  8. class Drzewo:
  9.     def __init__(self):
  10.         self.me = None
  11.  
  12.     def insert(self, key):
  13.         if ( self.me == None ):
  14.             self.me = Wezel(key)
  15.         else:
  16.             done = False
  17.             target = self.me
  18.             while done != True:
  19.                 if (target.left == None and key < target.key):
  20.                     target.left = Wezel(key)
  21.                     done = True
  22.                 elif (target.left != None and key < target.key):
  23.                     target = target.left
  24.                 if (target.right == None and key > target.key):
  25.                     target.right = Wezel(key)
  26.                     done = True
  27.                 elif (target.right != None and key > target.key):
  28.                     target = target.right
  29.  
  30.     def find(self, key):
  31.         done = False
  32.         target = self.me
  33.         while done != True:
  34.             if (key == target.key):
  35.                 return target
  36.                 done = True
  37.             elif (key > target.key and target.right != None):
  38.                 temp = target.right
  39.                 target = temp
  40.             elif (key < target.key and target.left != None):
  41.                 temp = target.left
  42.                 target = target.left
  43.  
  44.     def tree_walk(self):
  45.         def tree_walk(wezel):
  46.             if (wezel != None):
  47.                 tree_walk(wezel.left)
  48.                 print(wezel.key)
  49.                 tree_walk(wezel.right)
  50.  
  51.         tree_walk(self.me)
  52.  
  53.  
  54.  
  55. asd = Drzewo()
  56.  
  57. asd.insert(5)
  58. asd.insert(3)
  59. asd.insert(8)
  60. asd.insert(2)
  61. asd.insert(6)
  62. asd.insert(4)
  63. asd.insert(9)
  64. asd.insert(1)
  65. asd.insert(7)
  66.  
  67. buff = asd.find(2)
  68.  
  69. asd.tree_walk()
  70. print("DONE")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement