Remove last node of the linked list in vb.net


Vb program for Remove last node of the linked list. Here mentioned other language solution.
' Include namespace system
Imports System
' Vb.net program for
' Delete the last node of singly linked list
' Linked list node
Public Class LinkNode
Public data As Integer
Public [next] As LinkNode
Public Sub New(ByVal data As Integer)
Me.data = data
Me.next = Nothing
End Sub
End Class
public Class SingleLL
Public head As LinkNode
Public tail As LinkNode
Public Sub New()
Me.head = Nothing
Me.tail = Nothing
End Sub
' Add new node at the end of linked list
Public Sub addNode(ByVal value As Integer)
' Create a new node
Dim node As LinkNode = New LinkNode(value)
if (Me.head Is Nothing) Then
Me.head = node
Else
Me.tail.[next] = node
End IF
Me.tail = node
End Sub
' Display linked list element
Public Sub display()
if (Me.head Is Nothing) Then
Console.WriteLine("Empty Linked List")
Return
End If
Dim temp As LinkNode = Me.head
' iterating linked list elements
while (temp IsNot Nothing)
Console.Write(temp.data.ToString() + " → ")
' Visit to next node
temp = temp.[next]
End While
Console.WriteLine("NULL")
End Sub
' Delete last node of singly linked list
Public Sub deleteLastNode()
if (Me.head Is Nothing) Then
Console.WriteLine("Empty Linked List")
Return
Else
Dim temp As LinkNode = Me.head
Dim find As LinkNode = Nothing
' Find second last node
while (temp.[next] IsNot Nothing)
find = temp
temp = temp.[next]
End While
if (find Is Nothing) Then
' Delete head node of linked list
Me.head = Nothing
Me.tail = Nothing
Else
' Set new last node
Me.tail = find
find.[next] = Nothing
End IF
End IF
End Sub
Public Shared Sub Main(ByVal args As String())
Dim sll As SingleLL = New SingleLL()
' Linked list
' 1 → 2 → 3 → 4 → 5 → 6 → NULL
sll.addNode(1)
sll.addNode(2)
sll.addNode(3)
sll.addNode(4)
sll.addNode(5)
sll.addNode(6)
Console.WriteLine("Before Delete ")
sll.display()
sll.deleteLastNode()
Console.WriteLine("After Delete ")
sll.display()
End Sub
End Class
Output
Before Delete
1 → 2 → 3 → 4 → 5 → 6 → NULL
After Delete
1 → 2 → 3 → 4 → 5 → NULL
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