每日三题-最大子数组和、不同路径、最小路径和

简介: 每日三题-最大子数组和、不同路径、最小路径和

最大子数组和


0acf4c2747c4407abb9ea907ab27079b.png解法一

dp

class Solution {
    public int maxSubArray(int[] nums) {
        int len = nums.length;
        if(len == 1)return nums[0];
        int res = nums[0];
        int dp[] = new int[len];
        dp[0] = nums[0];
        for(int i = 1;i < len;i++){
            dp[i] = Math.max(dp[i-1]+nums[i],nums[i]);
            res = Math.max(dp[i],res);
        }
        return res;
    }
}


不同路径



da0b8ae5039d418c83e9d223338620c7.png

class Solution {
    public int uniquePaths(int m, int n) {
        int dp[][] = new int[m][n];
        for(int i = 0;i < m;i++){
            dp[i][0] = 1;
        }
        for(int i = 0;i < n;i++){
            dp[0][i] = 1;
        }
        for(int i = 1;i < m;i++){
            for(int j = 1;j < n;j++){
                dp[i][j] = dp[i-1][j] + dp[i][j-1];
            }
        }
        return dp[m-1][n-1];
    }
}


最小路径和


c6fb02140183480383ab8b26bce2ec71.png

class Solution {
    public int minPathSum(int[][] grid) {
        int m = grid.length;
        int n = grid[0].length;
        int dp[][] = new int[m][n];
        for(int i = 0;i < m;i++){
            if(i == 0){
                dp[i][0] = grid[0][0];
                continue;
            }
            dp[i][0] = dp[i-1][0] + grid[i][0];
        }
        for(int i = 0;i < n;i++){
            if(i == 0) continue;
            dp[0][i] = dp[0][i-1] + grid[0][i];
        }
        for(int i = 1;i < m;i++){
            for(int j = 1;j < n;j++){
                dp[i][j] = Math.min(dp[i-1][j],dp[i][j-1])+grid[i][j];
            }
        }
        return dp[m-1][n-1];
    }
}


相关文章
|
8月前
|
机器学习/深度学习
【N皇后】
【N皇后】
|
3天前
代码随想录Day45 动态规划13 LeetCode T1143最长公共子序列 T1135 不相交的线 T53最大子数组和
代码随想录Day45 动态规划13 LeetCode T1143最长公共子序列 T1135 不相交的线 T53最大子数组和
40 0
|
8月前
|
算法 Java
【算法题目解析】杨氏矩阵数字查找
一道面试时可能遇到的算法问题,杨氏矩阵。可以重点关注思考方式,而不是死记硬背。
23 0
|
10月前
|
移动开发 算法
DFS深度优先算法 —— AcWing 842. 排列数字AcWing 843. n-皇后问题
DFS深度优先算法 —— AcWing 842. 排列数字AcWing 843. n-皇后问题
75 0
八皇后(dfs全排列)
八皇后(dfs全排列)
56 0
|
算法
LeetCode 周赛 340,质数 / 前缀和 / 极大化最小值 / 最短路 / 平衡二叉树
今天讲 LeetCode 单周赛第 340 场,今天状态不好,掉了一波大分。
61 0
【每日一题Day67】LC1739放置盒子 | 找规律+贪心 二分查找
有一个立方体房间,其长度、宽度和高度都等于 n 个单位。请你在房间里放置 n 个盒子,每个盒子都是一个单位边长的立方体。
88 0
【每日一题Day67】LC1739放置盒子 | 找规律+贪心 二分查找
|
机器学习/深度学习 算法
【递归与递推 4】AcWing95. 费解的开关 、AcWing 93. 递归实现组合型枚举、AcWing 1209. 带分数、AcWing 1208. 翻硬币
【递归与递推 4】AcWing95. 费解的开关 、AcWing 93. 递归实现组合型枚举、AcWing 1209. 带分数、AcWing 1208. 翻硬币
130 0
牛客-合并回文子串(区间DP)
牛客-合并回文子串(区间DP)
159 0
|
定位技术
深搜dfs 解决全排列,地图搜索最短距离
深搜dfs 解决全排列,地图搜索最短距离