Print all odd nodes of Binary Search Tree in vb.net

Vb program for Print all odd nodes of Binary Search Tree. Here more solutions.
' Include namespace system
Imports System
' Vb.net program for
' Detect and print all leaf nodes in binary search tree
' Binary Search Tree Node
Public Class TreeNode
' Data value
Public data As Integer
' Indicates left and right subtree
Public left As TreeNode
Public right As TreeNode
Public Sub New(ByVal data As Integer)
Me.data = data
Me.left = Nothing
Me.right = Nothing
End Sub
End Class
Public Class BinarySearchTree
Public root As TreeNode
Public Sub New()
Me.root = Nothing
End Sub
' Insert a node in BST
Public Sub addNode(ByVal value As Integer)
' Create new node of binary search tree
Dim node As TreeNode = New TreeNode(value)
if (node IsNot Nothing) Then
if (Me.root Is Nothing) Then
' When adds a first node in binary tree
Me.root = node
Else
Dim find As TreeNode = Me.root
' Add new node to proper position
while (find IsNot Nothing)
if (find.data >= value) Then
if (find.left Is Nothing) Then
find.left = node
Return
Else
' Visit left sub-tree
find = find.left
End IF
Else
if (find.right Is Nothing) Then
find.right = node
Return
Else
' Visit right sub-tree
find = find.right
End IF
End IF
End While
End IF
Else
Console.WriteLine( vbLf &"Memory Overflow")
End IF
End Sub
' Display the value of odd nodes in binary search tree
Public Sub printOddNode(ByVal node As TreeNode)
if (node IsNot Nothing) Then
' Visit to left child
Me.printOddNode(node.left)
if (node.data Mod 2 <> 0) Then
' When node contain odd value
Console.Write(" {0}", node.data)
End If
' Visit to right child
Me.printOddNode(node.right)
End If
End Sub
Public Shared Sub Main(ByVal args As String())
Dim tree As BinarySearchTree = New BinarySearchTree()
' Add nodes in binary search tree
' 5
' / \
' / \
' / \
' 3 9
' / \ / \
' 1 4 8 11
' / \ / \
' -3 2 6 12
tree.addNode(5)
tree.addNode(3)
tree.addNode(9)
tree.addNode(1)
tree.addNode(4)
tree.addNode(8)
tree.addNode(11)
tree.addNode(-3)
tree.addNode(2)
tree.addNode(6)
tree.addNode(12)
' Test
tree.printOddNode(tree.root)
End Sub
End Class
Output
-3 1 3 5 9 11
Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.
New Comment