How to split an array and add the first part to end in VB.NET

1 Answer

0 votes
Imports System
 
Public Class Program
    Public Sub print(ByVal arr As Integer())
        Dim size As Integer = arr.Length
 
        For i As Integer = 0 To size - 1
            Console.Write(arr(i) & " ")
        Next
 
        Console.WriteLine()
    End Sub
 
    Public Sub reverse(ByVal arr As Integer(), ByVal start As Integer, ByVal [end] As Integer)
        Dim temp As Integer = 0
        Dim i As Integer = start, j As Integer = [end]
 
        While i <= [end] AndAlso j > i
            temp = arr(i)
            arr(i) = arr(j)
            arr(j) = temp
            i += 1
            j -= 1
        End While
    End Sub
 
    Public Sub split(ByVal arr As Integer(), ByVal split_point As Integer)
        Dim size As Integer = arr.Length
 
        If size <= 1 AndAlso split_point < 1 AndAlso split_point >= size Then
            Return
        End If
 
        ' reverse first part
        reverse(arr, 0, split_point - 1)
         
        ' reverse second part
        reverse(arr, split_point, size - 1)
 
        ' reverse all array 
        reverse(arr, 0, size - 1)
    End Sub
 
    Public Shared Sub Main()
        Dim obj As Program = New Program()
 
        Dim arr As Integer() = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
 
        Dim split_point As Integer = 3
 
        obj.split(arr, split_point)
 
        obj.print(arr)
    End Sub
End Class
 
 
 
 
' run:
'
' 

 



answered Nov 29, 2021 by avibootz
edited Nov 29, 2021 by avibootz

Related questions

1 answer 196 views
1 answer 180 views
1 answer 149 views
1 answer 153 views
1 answer 113 views
...