Imports System
Public Class Program
Public Shared 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 Shared Sub reorder(ByVal arr As Integer(), ByVal indexes As Integer(), ByVal i As Integer)
Dim size As Integer = arr.Length
If i < size Then
Dim data As Integer = arr(i)
reorder(arr, indexes, i + 1)
arr(indexes(i)) = data
End If
End Sub
Public Shared Sub Main()
Dim arr As Integer() = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
Dim indexes As Integer() = {1, 0, 4, 3, 2, 5, 9, 7, 8, 6}
print(arr)
print(indexes)
reorder(arr, indexes, 0)
print(arr)
End Sub
End Class
' run:
'
' 1 2 3 4 5 6 7 8 9 10
' 1 0 4 3 2 5 9 7 8 6
' 2 1 5 4 3 6 10 8 9 7
'