How to check if a matrix columns contain numbers without repetition in JavaScript

1 Answer

0 votes
function columnsHaveUniqueNumbers(matrix) {
    if (!matrix.length || !matrix[0].length) {
        return true;
    }

    let numCols = matrix[0].length;
    for (let j = 0; j < numCols; j++) {
        let columnSet = new Set();

        for (let row of matrix) {
            if (columnSet.has(row[j])) {
                return false;
            }
            columnSet.add(row[j]);
        }
    }
    return true;
}

const matrix1 = [
    [1, 4, 7],
    [2, 5, 8],
    [3, 6, 9]
];

const matrix2 = [
    [1, 4, 7],
    [2, 4, 8],
    [3, 6, 9]
];

console.log("Matrix 1 columns have unique numbers:", columnsHaveUniqueNumbers(matrix1));
console.log("Matrix 2 columns have unique numbers:", columnsHaveUniqueNumbers(matrix2));

  
  
/*
run:
  
Matrix 1 columns have unique numbers: true
Matrix 2 columns have unique numbers: false
  
*/

 



answered May 28, 2025 by avibootz
...