这道题实在是很经典的面试题。
题目主要是要求尽可能的减少时间复杂度。
个人也写了一下,方便以后回头温习。
题目主要是要求尽可能的减少时间复杂度。
个人也写了一下,方便以后回头温习。
int getMaxVal(int a[],int n)
{
int max=a[0]; //用来记录已经计算过的子数组的最大和
int result=a[0]; //返回最终的子数组最大和
for(int i=1;i<n;++i)
{
if(max>0)
{
max+=a[i];
}
else max=a[i];
if(max>result)
{result=max;}
}
return result;
}
本文介绍了一道经典的面试题目,旨在寻找一个数组中连续子数组的最大和,并提供了一个简洁高效的解决方案。该算法通过迭代更新当前子数组的最大值,并判断是否大于已知的最大子数组和。
420

被折叠的 条评论
为什么被折叠?



