首页 > 其他 > 详细

求子数组的最大值

时间:2014-03-10 17:03:29      阅读:406      评论:0      收藏:0      [点我收藏+]

题目:给定一个数组,求出子数组的最大值。

分析:对数组的各子数组进行划分,对所有的情况进行比较,具体代码如下:

#include<stdio.h>
#define N 4

int main()
{
 int a[N];
 int i,j;
    int max=a[0];
printf("请输入%d个整数:",N);
for(i=0;i<N;i++)
 scanf("%d",&a[i]);
for(i=0;i<N;i++){
 int sum=0;
 for(j=i;j<N;j++)
 {
 sum=sum+a[j];
 if(sum>max)
  max=sum;
 }
}
printf("最大的子数组是:%d\n",max);
return 0;
}

此代码可基本完成题目的要求,而且代码的数目也比较少,比较清晰,各种情况均有测试。代码的复杂度为n^2,老师要求为线性的,所以代码还有待于完善。

求子数组的最大值,布布扣,bubuko.com

求子数组的最大值

原文:http://www.cnblogs.com/wuwei123/p/3591812.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!