class Solution {
public int numSpecial(int[][] mat) {
int n = mat.length, m = mat[0].length;
int[] row = new int[n];
int[] col = new int[m];
// 计算出行和列出现1的个数
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
row[i] += mat[i][j];
col[j] += mat[i][j];
}
}
int res = 0;
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
if (mat[i][j] == 1 && row[i] == 1 && col[j] == 1){
res++;
}
}
}
return res;
}
}
力扣:1582. 二进制矩阵中的特殊位置
二维数组处理:查找特殊单元格
最新推荐文章于 2025-11-25 14:21:24 发布
该代码实现了一个名为`numSpecial`的方法,用于计算矩阵中特殊单元格的数量。特殊单元格是指值为1且所在行和列只有一个1的单元格。方法首先计算每行和每列1的总数,然后遍历矩阵找出既是行内唯一1又是列内唯一1的单元格,返回这些单元格的数量。

523

被折叠的 条评论
为什么被折叠?



