leetcode 最大子序和
2019-01-21 12:00
99 查看
给定一个整数数组
nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
示例:
输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。
进阶:
如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。
解题思路:
分治法
每次计算一个局部最优,拿局部最优和全局最优进行对比,更新全局最优
[code]class Solution { public int maxSubArray(int[] nums) { //定义两个变量,局部最优和全局最优 if(nums.length==0||nums==null)return 0; int local = nums[0]; int global = nums[0]; for (int i = 1;i<nums.length;i++){ local = Math.max(nums[i],local+nums[i]); System.out.print(local+"+"); if(local>global){ global = local; } System.out.println(global); } return global; } }
相关文章推荐
- [LeetCode] Maximum Subarray 最大子序和
- LeetCode53最大子序和
- LeetCode - 53. 最大子序和
- LeetCode-初级=动态规划-最大子序和
- Leetcode 53:最大子序和(Maximum Subarray)
- leetcode-最大子序和(动态规划讲解)
- Leetcode(53) 最大子序和
- LeetCode52. 最大子序和(动态规划)
- Leetcode 53. 最大子序和
- Leetcode 053 最大子序和 python 分治+动态规划
- 最大子序和 - LeetCode
- leetcode的python实现 刷题笔记53:最大子序和(多种解法)
- LeetCode题库解答与分析——#53.最大子序和MaximumSubarray
- LeetCode 32 Longest Valid Parentheses 最大合法括号匹配长度计算 动态规划算法有待学习
- leetcode 104. Maximum Depth of Binary Tree (求二叉树的最大深度,DFS,BFS)
- tyvj1305 最大子序和 【单调队列优化dp】
- [LeetCode] Maximum Product Subarray 求最大子数组乘积
- [LeetCode] Max Consecutive Ones II 最大连续1的个数之二
- [LeetCode] Maximum Product Subarray 连续数列最大积
- [LeetCode]:动态规划+回溯 Largest Divisible Subset 最大可整除的子集合