标签:动态规划 有一个 break 怎么 字符串匹配 也有 leetcode imu array
上学期转专业就没怎么学好数据结构,这学期正好看了算法导论第四章也有讲动态规划和,正好前不久做那个查找最长不重样字符串的题学了一个最短字符串匹配的动态图框法。用动态规划写了一下,分治还没写出来。
int maxSubArray(int* nums, int numsSize) { int maxsum; int sum,i; sum=0; maxsum=0; int condition=0; int minus=nums[0]; for(i=0;i<numsSize;i++)//处理全是负数的可能情况。 { if(nums[i]>0) { condition=1; break; } else if(nums[i]>=minus) minus=nums[i]; } for(i=0;i<numsSize;i++) { sum+=nums[i]; if(sum>maxsum) maxsum=sum; else if(sum<0) sum=0; } if(condition==1) return maxsum; else return minus; }
不止一次在if(x=1)这种问题上犯错了,要注意。有数组里只有一个数,和全是负数的情况要处理。
标签:动态规划 有一个 break 怎么 字符串匹配 也有 leetcode imu array
原文地址:https://www.cnblogs.com/yuhaowang/p/10166510.html