How to traverse an array from both sides at the same time in VB.NET

1 Answer

0 votes
Imports System

Module TraverseBothSides

    '
    '   Demonstration of traversing an array from both ends at the same time
    '   in idiomatic VB.NET.
    '
    '   We use the classic "two‑index" technique:
    '       - left  starts at index 0
    '       - right starts at index array.Length - 1
    '   Both move toward the center.
    '
    '   This approach is efficient (O(n)), simple, and widely used in
    '   algorithms such as palindrome checks, partitioning, and pair searching.
    '

    ' ------------------------------------------------------------
    ' Function: TraverseFromBothSides
    ' Purpose:  Traverse an array from both ends simultaneously.
    ' ------------------------------------------------------------
    Sub TraverseFromBothSides(arr As Integer())
        Dim left As Integer = 0
        Dim right As Integer = arr.Length - 1

        ' Move inward until the indices cross
        While left <= right
            Console.WriteLine($"Left: {arr(left)}, Right: {arr(right)}")
            left += 1
            right -= 1
        End While
    End Sub

    ' ------------------------------------------------------------
    ' Main program
    ' ------------------------------------------------------------
    Sub Main()
        Dim array As Integer() = {10, 20, 30, 40, 50, 60, 70, 80, 90}

        Console.WriteLine("Traversing from both sides:")
        TraverseFromBothSides(array)
    End Sub

End Module


'
' run:
'
' Traversing from both sides:
' Left: 10, Right: 90
' Left: 20, Right: 80
' Left: 30, Right: 70
' Left: 40, Right: 60
' Left: 50, Right: 50
'

 



answered Jul 30 by avibootz
...