leetcode 1572.矩阵对角线元素的和

题目描述:

给你一个正方形矩阵 mat,请你返回矩阵对角线元素的和。

请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。

leetcode 1572.矩阵对角线元素的和_第1张图片

leetcode 1572.矩阵对角线元素的和_第2张图片

题目不难,可以使用暴力法,二维数组需要使用两层循环, 我的方法使用单层循环来实现

java代码实现:

class Solution {
    public int diagonalSum(int[][] mat) {
        int sum = 0;
        for(int i = 0;i < mat.length/2;i++){
            sum += mat[i][i];
            sum += mat[mat.length-1-i][mat.length-1-i];
            sum += mat[i][mat.length-1-i];
            sum += mat[mat.length-1-i][i];
        }
        if(mat.length%2 == 1){
            sum += mat[mat.length/2][mat.length/2];
        }
        return sum;
    }
}

leetcode 1572.矩阵对角线元素的和_第3张图片

你可能感兴趣的:(数据结构和算法,leetcode,算法,java)