How to merge two sorted arrays without duplicates in VB.NET

1 Answer

0 votes
Imports System
Imports System.Linq
Imports System.Collections.Generic

Public Class Program
    Public Shared Function Merge(ByVal arr1 As Integer(), ByVal arr2 As Integer()) As Integer()
        Dim mergedSet As ISet(Of Integer) = New SortedSet(Of Integer)()

        For Each num As Integer In arr1
            mergedSet.Add(num)
        Next

        For Each num As Integer In arr2
            mergedSet.Add(num)
        Next

        Dim mergedArray As Integer() = mergedSet.ToArray()
        
        Return mergedArray
    End Function

    Public Shared Sub Main(ByVal args As String())
        Dim arr1 As Integer() = New Integer() {1, 2, 2, 3, 7, 7, 7, 8, 9}
        Dim arr2 As Integer() = New Integer() {0, 0, 4, 4, 4, 5, 6, 7, 7, 8}
        
        Dim mergedArray As Integer() = Merge(arr1, arr2)
        
        Console.WriteLine(String.Join(", ", mergedArray))
    End Sub
End Class




' run:
'
' 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
' 

 



answered May 21, 2024 by avibootz

Related questions

2 answers 195 views
2 answers 158 views
1 answer 209 views
1 answer 154 views
1 answer 142 views
1 answer 196 views
1 answer 221 views
...