LeetCode 304. 二维区域和检索 - 矩阵不可变

解题思路

套模板

相关代码

class NumMatrix {
    int a[][] = new int[210][210];
    int s[][] = new int[210][210];
    int m,n;
    public NumMatrix(int[][] matrix) {
        for(int i=0;i<matrix.length;i++){
            for(int j=0;j<matrix[0].length;j++){
                a[i+1][j+1] = matrix[i][j];
            }
        }
        //m表示行,n表示列
        m = matrix.length;
        n = matrix[0].length;

        for(int i=1;i<=matrix.length;i++)
            for(int j=1;j<=matrix[0].length;j++)
                s[i][j] = s[i][j-1]+s[i-1][j]-s[i-1][j-1]+a[i][j];
    }
    
    public int sumRegion(int row1, int col1, int row2, int col2) {
return s[row2+1][col2+1]-s[row2+1][col1]-s[row1][col2+1]+s[row1][col1];
    }
}

/**
 * Your NumMatrix object will be instantiated and called as such:
 * NumMatrix obj = new NumMatrix(matrix);
 * int param_1 = obj.sumRegion(row1,col1,row2,col2);
 */
相关推荐
武昌库里写JAVA40 分钟前
Vue3常用API总结
数据结构·spring boot·算法·bootstrap·课程设计
C++忠实粉丝42 分钟前
位运算(7)_消失的两个数字
算法
卑微求AC42 分钟前
(C语言贪吃蛇)4.贪吃蛇地图优化及算法说明
c语言·算法
sjsjs1143 分钟前
【动态规划-最长公共子序列(LCS)】【hard】力扣1458. 两个子序列的最大点积
算法·leetcode·动态规划
qq_5352461444 分钟前
代码随想录 101. 孤岛的总面积
算法·深度优先·图论
sjsjs1144 分钟前
【动态规划-最长公共子序列(LCS)】力扣583. 两个字符串的删除操作
算法·leetcode·动态规划
陈序缘1 小时前
LeetCode讲解篇之79. 单词搜索
算法·leetcode·职场和发展
南石.1 小时前
JVM 基础、GC 算法与 JProfiler 监控工具详解
jvm·算法
哎呀呀嗯呀呀1 小时前
class 031 位运算的骚操作
java·算法·位运算
时清云2 小时前
【算法】合并两个有序链表
前端·算法·面试