How to find an element that appears once in an array of elements that appears three times in VB.NET

1 Answer

0 votes
Imports System
Imports System.Collections.Generic

Public Class FindElementThatAppearsOnceInArray_VB
    Public Shared Function FindElementThatAppearsOnceInArray(ByVal arr As Integer()) As Integer
        Dim map As Dictionary(Of Integer, Integer) = New Dictionary(Of Integer, Integer)()

        For Each x As Integer In arr
            If map.ContainsKey(x) Then
                map(x) += 1
            Else
                map(x) = 1
            End If
        Next

        For Each entry As KeyValuePair(Of Integer, Integer) In map
            If entry.Value = 1 Then
                Return entry.Key
            End If
        Next

        Return -1
    End Function

    Public Shared Sub Main(ByVal args As String())
        Dim arr As Integer() = New Integer() {3, 5, 5, 2, 7, 3, 2, 8, 8, 3, 2, 5, 8}

        Console.WriteLine(FindElementThatAppearsOnceInArray(arr))
    End Sub
End Class



' run:
'
' 7
'

 



answered Jul 8, 2024 by avibootz
...