File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ class Node:
2+
3+ def __init__(self, data):
4+ self.data=data
5+ self.left=None
6+ self.right=None
7+
8+ def findSecondMinimumValue( root):
9+ if root is None:
10+ return -1
11+ if root.left == None and root.right == None:
12+ return -1
13+ left = root.left.data
14+ right = root.right.data
15+
16+ if root.data == root.left.data:
17+ left = findSecondMinimumValue(root.left)
18+ if root.data == root.right.data:
19+ right = findSecondMinimumValue(root.right)
20+
21+ if left != -1 and right != -1:
22+ return min(left, right)
23+ elif left != -1:
24+ return left
25+ else:
26+ return right
27+
28+ root = Node(2)
29+ root.left = Node(3)
30+ root.right = Node(2)
31+ root.right.left = Node(8)
32+ root.right.right = Node(2)
33+ root.left.left = Node(3)
34+ root.left.right = Node(6)
35+ root.left.left.left = Node(3)
36+ root.left.left.right = Node(5)
37+ root.left.right.left = Node(6)
38+ root.left.right.right = Node(7)
39+ root.right.left.left = Node(20)
40+ root.right.left.right = Node(8)
41+ root.right.right.right = Node(9)
42+ root.right.right.left = Node(2)
43+
44+ print(findSecondMinimumValue( root))
45+
46+
You can’t perform that action at this time.
0 commit comments