search element in binary tree python

Solutions on MaxInterview for search element in binary tree python by the best coders in the world

showing results for - "search element in binary tree python"
Tim
01 Jun 2018
1class Binarytree:
2    def __init__(self,data):
3        self.data = data
4        self.left = None
5        self.right = None
6    
7    def addChild(self, data):
8        if data == self.data:
9            return
10        
11        if data < self.data:
12            if self.left:
13                self.left.addChild(data)
14            else:
15                self.left = Binarytree(data)
16        else:
17            if self.right:
18                self.right.addChild(data)
19            else:
20                self.right = Binarytree(data)
21    
22    # This functions find element in binary tree
23    def search(self,val):
24        if val == self.data:
25            return True
26        if val < self.data:
27            if self.left:
28                return self.left.search(val)
29            else:
30                return False
31        else:
32            if self.right:
33                return self.right.search(val)
34            else:
35                return False
36
37def buildtree(element):
38    root = Binarytree(element[0])
39    for i in range(1,len(element)):
40        root.addChild(element[i])
41    return root
42    
43if __name__ == '__main__':
44    element = [39, 87, 21, 42, 95, 52, 12]
45    tree = buildtree(element)
46    print(tree.search(38))
Maylis
27 Apr 2016
1#Complete Binary Search Tree Using Python 3
2
3class node:
4    def  __init__(self,data):
5        self.data=data
6        self.left=None
7        self.right=None
8
9class binarytree:
10    def __init__(self):
11        self.root=None
12
13#INSERT
14
15    def insert(self,data):
16        if self.root==None:				
17            self.root=node(data)
18        else:
19            self._insert(data,self.root)
20    def _insert(self,data,cur_node):
21        if data<cur_node.data:
22            if cur_node.left==None:			
23                cur_node.left=node(data)
24            else:
25                self._insert(data,cur_node.left) 
26        elif data>cur_node.data:			
27            if cur_node.right==None:
28                cur_node.right=node(data)
29            else:
30                self._insert(data,cur_node.right)
31        else:
32            print('Data In Treee Already')
33
34#REMOVE
35
36    def remove(self,data):
37        if self.root!=None:
38            self._remove(data,self.root)
39    def _remove(self,data,cur_node):
40        if cur_node == None:
41            return cur_node
42        if data<cur_node.data:
43            cur_node.left=self._remove(data,cur_node.left)
44        elif data>cur_node.data:
45            cur_node.right=self._remove(data,cur_node.right)
46        else:
47            if cur_node.left is None and cur_node.right is None:
48                print('Removing Leaf Node')
49                if cur_node==self.root:
50                    self.root=None
51                del cur_node
52                return None
53            if cur_node.left is None:
54                print('Removing None with Right Child')
55                if cur_node==self.root:
56                    self.root=cur_node.right
57                tempnode=cur_node.right
58                del cur_node
59                return tempnode
60            elif cur_node.right is None:
61                print('Removing None with Left Child')
62                if cur_node==self.root:
63                    self.root=cur_node.left
64                tempnode=cur_node.left
65                del cur_node
66                return tempnode
67            print('Removing Node with 2 Children')
68            tempnode=self.getpred(cur_node.left)
69            cur_node.data=tempnode.data
70            cur_node.left=self._remove(cur_node.data,cur_node.left)
71        return cur_node
72    def getpred(self,cur_node):
73        if cur_node.right!=None:
74            return self.getpred(cur_node.right)
75        return cur_node
76
77#INORDER TRAVERSAL
78
79    def inorder(self):
80        if self.root!=None:
81            self._inorder(self.root)
82    def _inorder(self,cur_node):
83        if cur_node!=None:
84            self._inorder(cur_node.left)
85            print(cur_node.data)
86            self._inorder(cur_node.right)
87
88#PREORDER TRAVERSAL
89
90    def preorder(self):
91        if self.root!=None:
92            self._preorder(self.root)
93    def _preorder(self,cur_node):
94        if cur_node!=None:
95            print(cur_node.data)
96            self._preorder(cur_node.left)
97            self._preorder(cur_node.right)
98
99#POSTORDER TRAVERSAL
100
101    def postorder(self):
102        if self.root!=None:
103            self._postorder(self.root)
104    def _postorder(self,cur_node):
105        if cur_node!=None:
106            self._postorder(cur_node.left)
107            self._postorder(cur_node.right)
108            print(cur_node.data)
109
110#MINIMUM VALUE
111
112    def minval(self):
113        if self.root!=None:
114            return self._minval(self.root)
115    def _minval(self,cur_node):
116        if cur_node.left!=None:
117            return self._minval(cur_node.left)
118        return cur_node.data
119
120#MAXIMUM VALUE
121
122    def maxval(self):
123        if self.root!=None:
124            return self._maxval(self.root)
125    def _maxval(self,cur_node):
126        if cur_node.right!=None:
127            return self._maxval(cur_node.right)
128        return cur_node.data
129
130tree=binarytree()
131
132tree.insert(100)
133tree.insert(90)					#			 100
134tree.insert(110)				#			/	\
135tree.insert(95)					#          90   110
136tree.insert(30)					#		  /  \
137								#		30    95 
138tree.remove(110)
139tree.remove(90)
140
141tree.inorder()
142#tree.preorder()
143#tree.postorder()
144
145print(tree.minval())
146print(tree.maxval())
Louisa
28 Apr 2020
1Binary Search Tree at this link:
2  
3https://github.com/shreyasvedpathak/Data-Structure-Python/tree/master/BinaryTrees
queries leading to this page
develop a menu driven program to implement binary tree 2fbinary search tree to perform the following operations i 29insertion ii 29 traversing in different order 28depth first traversal 29 iii 29 search and display the node and its parent node iv 29 to find heightcreate a binary search tree pythonsearch for an element in bsthow to create a binary search tree in pythonhow to create binary search tree in pythonbinary tree code example pythoninsert node tree pythonbinary search tree data structure in cbinary tree in pythonssbinary search algorithm pythonbinary search tree implementation pythonsearch in a virtually complete binary tree pythonbst in pythonpython binary tree search for nodewhat is binary search tree in pythonpython program for inserting data in bst and also add functions for preorder 2cpostorder and inorder traversalbinary search tree in pythonbinary tree implementation in pythoninsertion bst pythonimplement bst pythonpython how to print a binary search treejava bstbinary search trees in pythonbinary tree search pythonfind element in binary search tree in python python program for binary search treewhat is a binary tree in pythonsearch operation in binary search tree pythonbst data structure pythonsearch in bst in cbs tree implementationbst insertion pythonbinary tree 2fbinary search tree in pythoncreation of binary search tree in coptimal binary search tree in pythonbinary search tree implementation in pythonpython search tree implementationhow to do a binary tree in pythonbinary tree in pythonsbinasy search tree in pythonbinary tree pythombinary search tree search operation in pythonfull binary search tree implementation pythoncode for binary tree in pythonpython code for searching node from bstc 2b 2b binary search treespython binary search tree implementationbinary tree in pythonpython tree searchbinary serach tree pyhtonsearch elements in binary tree with pythonsssearch element in binary tree with pythonspython bst codingbst pythonpython binary search treessearch tree in pythonbinary search tree c 2b 2b implementation search tree in python binary tree data structure in pythonbinary search tree using python 3binary search tree python implementationsearch a node in binary tree in pythonbinary tree library pythonis this a binary search tree pythonsearch element in binary tree in pythonbinary tree insertion and deletionbinary search tree class pythonbinary tree python implementationbinary tree python librarypython binary search tree librarybinary search tree python searchsearch an elements in binary tree with pythonssbinary search tree using pythonhow to make a binary search tree with an array pythonbinary search tree inplementation in pythontree search in pythonbst insert cpppython binary search treepython binary treesearch an element in binary tree with pythonssbst tree in pythonprint binary search tree pythonsearch element in binary tree pythonpython binary tree searchproblems related to binary search tree in pythonbinary search tree definition pythonbinary tree with pythonbinary tree data structure implementation pythoninsert into binary search treebinary search tree 28bst 29 implementation in pythonsearching in binary search tree pythonhow to create binary search trees in pythonhow to use built in binary search tree pythonprogram construct all possible binary search tree for keys 1 to n and display the post order traversal of each treeinsert node bst pythonppython program to implement binary search tree binary search tree pythonbinary search tree isnert ptyhonpython code for search in binary search treebinary search tree search pythonbinary search tree array implementation pythontree search pythonbinary tree in pytonbinary tree python codebst tree code pythondoes python have a binary search treebinary tree search in data structure pythonsearch binary tree pythonhow to construct a adt binary search tree using a list of namespython binary serch treepython program for binary searchbinary search tree insertion pythonsearch in a tree pythonsearch element in binary tree with pythonssis there a built in binary search tree in python 3fbinsary search tree python 5cbst tree pythoninsert bstsearch tree algorithm pythonpthon binary treebinary search tree program in pythonbinary search tree array pythonpython sample binary search treesdesign a binary search treeenter value in bstconstruct all possible binary search tree for keys 1 to n and display the post order traversal of each treebinary tree pythonbinary tree using pythonsearch element in binary tree by pythonsearch element in binary tree using pythonprogram for data insert into bst into pythonpython search method binary treepython binary search tree infobinary search tree implementation with pythonhow values are inserter in a binary treehow to handle binary tree in pythonbinary search tree python usesbinary search tree 28bst 29 pythonbst classbinary search tree c 2b 2bbinary tree search algorithm pythonsearch element in binary tree with pythonbinary search tree in python programzpython binary tree implementationbinary search tree search function pythonbinary search tree python codebinary tree in data structure program pythonbinary tree implementation pythoninsertion in bst pypython bst how to search a binary tree pythonpython code for binary search treepython binary searchhow elements are inserted in bstimplementing binary search tree in pythonmake binary search tree pythonbst insert recursive javabinary search tree python uses in gamessearch element in binary tree python