作者:小迅
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
题目
示例
思路
题意 -> 给定正方形矩阵,判断正方形对角线上的元素是否非0,非对角线上元素是否为 0
可以使用双指针对矩阵元素进行枚举,判断对应位置元素是否满足题目要求,最后返回即可
对于对应位置元素的判断,可以使用 i == j || gridColSize[i] - 1 - i == j两个条件来判断是否处于对角线,如果不在对角线则肯定是其他位置元素
代码注释超级详细
代码
bool checkXMatrix(int** grid, int gridSize, int* gridColSize){
for (int i = 0; i < gridSize; ++i) {//枚举行
for (int j = 0; j < gridColSize[i]; ++j) {//枚举列
if (i == j || gridColSize[i] - 1 - i == j) {//对角线元素
if (grid[i][j] == 0) {//判断是否为0
return false;
}
} else if (grid[i][j] != 0) {//其他位置元素,判断是否为0
return false;
}
}
}
}
return true;
}
作者:小迅
链接:https://leetcode.cn/problems/check-if-matrix-is-x-matrix/solutions/2084275/shu-xue-zhu-shi-chao-ji-xiang-xi-by-xun-dfgoy/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。