1【简单】判断矩阵是否是一个 X 矩阵

本文介绍了一种用于验证一个正方形矩阵是否为X矩阵的算法。X矩阵的特点是对角线元素不为0,其余元素全为0。文章通过双层循环遍历矩阵,检查其是否符合X矩阵的定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、题目描述

如果一个正方形矩阵满足下述 全部 条件,则称之为一个 X 矩阵 :

矩阵对角线上的所有元素都 不是 0
矩阵中所有其他元素都是 0
给你一个大小为 n x n 的二维整数数组 grid ,表示一个正方形矩阵。如果 grid 是一个 X 矩阵 ,返回 true ;否则,返回 false 。


二、解题思路过程

/**
 * @param {number[][]} grid
 * @return {boolean}
 */
var checkXMatrix = function(grid) {
    var flag = 1; // 创建旗帜变量
    var n = grid.length;
    for(var i=0;i<n;i++){
        for(var j=0;j<n;j++){ // 两层循环遍历二维数组
            if(i==j||i==n-j-1){ // 对角线:i与j相等或i与j和为n-1
                if(grid[i][j]==0){ // 进行反向判断
                    flag=0;
                }
            }else{
                if(grid[i][j]!=0){
                    flag=0;
                };
            };
        };
    };
    return flag;
};

三、复杂度分析

时间复杂度:O(n^{2}),其中 n为正方形矩阵 grid 的行列数。
空间复杂度:O(1),仅使用常量空间。


四、题目来源

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/check-if-matrix-is-x-matrix

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值