Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Public Class Form1
- Structure LinkedList
- Dim Pointer As Integer
- Dim Data As String
- End Structure
- Dim NextFree As Integer = 5
- Dim StartPointer As Integer = 3
- Dim node(10) As LinkedList
- Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
- node(1).Data = "Cake"
- node(2).Data = "Biscuit"
- node(3).Data = "Apple"
- node(4).Data = "Bun"
- node(1).Pointer = 0
- node(2).Pointer = 4
- node(3).Pointer = 2
- node(4).Pointer = 1
- Call UpdateList()
- End Sub
- Sub UpdateList()
- If NextFree = 11 Then
- MsgBox("No space left")
- Else
- lstOutput.Items.Clear()
- For i = 1 To NextFree
- If Not String.IsNullOrEmpty(node(i).Data) Then
- lstOutput.Items.Add(node(i).Data)
- End If
- Next i
- End If
- End Sub
- Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click
- Me.Close()
- End
- End Sub
- Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click
- Dim item As String = InputBox("Please Insert data to add")
- node(NextFree).Data = item
- If item < node(StartPointer).Data Then
- Dim temp As String = NextFree
- NextFree = node(NextFree).Pointer
- node(temp).Pointer = StartPointer
- StartPointer = temp
- End If
- NextFree += 1
- Call UpdateList()
- End Sub
- Private Sub btnRemove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRemove.Click
- Dim item As String = lstOutput.SelectedItem
- Dim itemPointer, itemAddr As Integer
- For i = 1 To NextFree
- If item = node(i).Data Then
- itemPointer = node(i).Pointer
- itemAddr = i
- End If
- Next i
- Dim temp As String = NextFree
- NextFree = itemAddr
- node(itemAddr - 1).Pointer = node(itemAddr).Pointer
- node(itemAddr).Pointer = temp
- NextFree -= 1
- node(itemAddr).Data = Nothing
- node(itemAddr).Pointer = Nothing
- Call UpdateList()
- End Sub
- Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click
- Dim item As String = InputBox("Please specify your search query")
- Dim result As Integer
- Dim status As Boolean
- For i = 1 To NextFree
- If item = node(i).Data Then
- MsgBox("Item has been found with following addr " & node(i).Pointer)
- result = node(i).Pointer
- status = True
- End If
- Next
- If status = False And result = Nothing Then
- MsgBox("No data has been found please try again")
- End If
- End Sub
- End Class
Advertisement
Add Comment
Please, Sign In to add comment