ADVERTISEMENT

ADVERTISEMENT

ADVERTISEMENT

VB.Net program to sort an integer array using Radix sort

Here, we are going to learn how to sort an integer array using Radix sort in VB.Net?
Submitted by Nidhi, on December 10, 2020

Here, we will create an array of integers and then read elements from the user. After we sort the array element using radix sort and then print sorted array on the console screen.

Program/Source Code:

The source code to sort an integer array using Radix sort is given below. The given program is compiled and executed successfully.

'VB.Net program to sort an integer array using Radix sort.

Module Module1
    Function GetMax(ByVal arr() As Integer, ByVal n As Integer) As Integer
        Dim max As Integer = arr(0)

        For i = 1 To n - 1 Step 1
            If (arr(i) > max) Then
                max = arr(i)
            End If
        Next
        GetMax = max
    End Function

    Sub countSort(ByVal arr() As Integer, ByVal n As Integer, ByVal exp As Integer)

        Dim output As Integer() = New Integer(n) {}
        Dim count As Integer() = New Integer(10) {}
        Dim t As Integer = 0


        For i = 0 To n - 1 Step 1

            t = (arr(i) \ exp) Mod 10
            count(t) = count(t) + 1
        Next

        For i = 1 To 9 Step 1
            count(i) = count(i) + count(i - 1)
        Next

        For i = (n - 1) To 0 Step -1
            output(count((arr(i) / exp) Mod 10) - 1) = arr(i)
            t = (arr(i) \ exp) Mod 10
            count(t) = count(t) - 1
        Next

        For i = 0 To n - 1 Step 1
            arr(i) = output(i)
        Next

    End Sub


    Sub RadixSort(ByVal arr() As Integer, ByVal n As Integer)
        Dim m As Integer = GetMax(arr, n)
        Dim exp As Integer = 1
        Dim val As Integer = 0

        val = m \ exp
        While (val > 0)
            countSort(arr, n, exp)
            exp = exp * 10
            val = m \ exp
        End While
    End Sub
    Sub Main()
        Dim arr As Integer() = New Integer(5) {}

        Console.WriteLine("Enter array elements: ")
        For i = 0 To 4 Step 1
            Console.Write("Element[{0}]: ", i)
            arr(i) = Integer.Parse(Console.ReadLine())
        Next

        RadixSort(arr, 5)

        Console.WriteLine("Array element after sorting: ")
        For i = 0 To 4 Step 1
            Console.Write("{0} ", arr(i))
        Next
        Console.WriteLine()
    End Sub
End Module

Output:

Enter array elements:
Element[0]: 32
Element[1]: 43
Element[2]: 12
Element[3]: 65
Element[4]: 87
Array element after sorting:
12 32 43 65 87
Press any key to continue . . .

Explanation:

In the above program, we created a module Module1 that contains a function Main(). In the Main() we created an array arr of five elements and we created three functions GetMax(), CountSort(), and RadixSort() to sort array elements using Radix Sort technique.

VB.Net Array Programs »

ADVERTISEMENT
ADVERTISEMENT




Comments and Discussions

ADVERTISEMENT

ADVERTISEMENT

ADVERTISEMENT

Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.