How to find all common elements in given three sorted arrays with VB.NET

1 Answer

0 votes
Imports System

Public Class Program
	Public Shared Sub PrintCommonElementsInThreeArrays(ByVal arr1 As Integer(), ByVal arr2 As Integer(), ByVal arr3 As Integer())
        Dim size1 As Integer = arr1.Length
        Dim size2 As Integer = arr2.Length
        Dim size3 As Integer = arr3.Length

        Dim i As Integer = 0, j As Integer = 0, k As Integer = 0

        While i < size1 AndAlso j < size2 AndAlso k < size3
            If arr1(i) = arr2(j) AndAlso arr3(k) = arr1(i) Then
                Console.Write(arr1(i) & " ")
                i += 1
                j += 1
                k += 1
            ElseIf arr1(i) < arr2(j) Then
                i += 1
            ElseIf arr2(j) < arr3(k) Then
                j += 1
            Else
                k += 1
            End If
        End While
    End Sub

    Public Shared Sub Main(ByVal args As String())
        Dim arr1 As Integer() = New Integer() {2, 5, 6, 7, 9, 12, 20, 25, 30, 31}
        Dim arr2 As Integer() = New Integer() {4, 7, 10, 11, 20, 21, 30, 31, 37}
        Dim arr3 As Integer() = New Integer() {1, 2, 5, 7, 9, 18, 19, 20, 31, 32, 38, 39, 40, 50}
		
        PrintCommonElementsInThreeArrays(arr1, arr2, arr3)
    End Sub
End Class





' run:
' 
' 7 20 31
'

 



answered Sep 21, 2022 by avibootz

Related questions

...