标签:pre int math [] tco mat else style div
就是最基本的DP,先用了最基本的做法。
class Solution { public int maxSubArray(int[] nums) { int[] dp = new int[nums.length]; dp[0]=nums[0]; for(int i=1;i<nums.length;i++){ dp[i]=Math.max(nums[i],nums[i]+dp[i-1]); } int max=nums[0]; for(int i=1;i<dp.length;i++){ max=Math.max(max,dp[i]); } return max; } }
14ms,19.5%.
稍作改进,不用自带的Math.max。
class Solution { public int maxSubArray(int[] nums) { int[] dp = new int[nums.length]; dp[0]=nums[0]; int max=nums[0]; for(int i=1;i<nums.length;i++){ if(dp[i-1]>0) dp[i]=dp[i-1]+nums[i]; else dp[i]=nums[i]; if(dp[i]>max) max=dp[i]; } return max; } }
8ms,99.92%。
标签:pre int math [] tco mat else style div
原文地址:https://www.cnblogs.com/chason95/p/9951227.html