How to check if a matrix columns contain numbers without repetition in VB.NET

1 Answer

0 votes
Imports System
Imports System.Collections.Generic

Class Program
    Private Shared Function ColumnsHaveUniqueNumbers(ByVal matrix As Integer(,)) As Boolean
        Dim rows As Integer = matrix.GetLength(0)
        Dim cols As Integer = matrix.GetLength(1)

        For j As Integer = 0 To cols - 1
            Dim columnSet As HashSet(Of Integer) = New HashSet(Of Integer)()

            For i As Integer = 0 To rows - 1
                If Not columnSet.Add(matrix(i, j)) Then
                    Return False
                End If
            Next
        Next

        Return True
    End Function

	Public Shared Sub Main()
        Dim matrix1 As Integer(,) = {
        {1, 4, 7},
        {2, 5, 8},
        {3, 6, 9}}

        Dim matrix2 As Integer(,) = {
        {1, 4, 7},
        {2, 4, 8},
        {3, 6, 9}}

        Console.WriteLine("Matrix 1 columns have unique numbers: " & ColumnsHaveUniqueNumbers(matrix1))
        Console.WriteLine("Matrix 2 columns have unique numbers: " & ColumnsHaveUniqueNumbers(matrix2))
    End Sub
End Class
	


' run
'
' Matrix 1 columns have unique numbers: True
' Matrix 2 columns have unique numbers: False
'

 



answered May 28, 2025 by avibootz
...