最大子序列的和算法分析一
2015-03-22 19:53
239 查看
//最大子序列和算法1,算法复杂度T=O(n^2)
#include<iostream>
using namespace std;
int find(int*a,int N);
clock_t start, stop;
int main()
{
int a[25]={1,4,-9,5,3,6,7,1,2,4,-8,-1,4,7,-5,7,1,-6,-1,4,3,55,8,-89,10};
cout<<find(a,15)<<endl;
return 0;
}
int find(int*a,int N)
{
int i,j,k,thissum,maxsum=a[0];
for(i=0;i<N;i++){//i为子序列的左端
thissum=0; //表示a[i]到a[j]的子序列和
for(j=i;j<N;j++){ //j为子序列的右端
thissum+=a[j];//对于相同的i不同的j,只要在j-1的基础上再加上a[j]就可以了
if(thissum>maxsum)
maxsum=thissum; //如果大就要更新结果
}
}
return maxsum;
}
#include<iostream>
using namespace std;
int find(int*a,int N);
clock_t start, stop;
int main()
{
int a[25]={1,4,-9,5,3,6,7,1,2,4,-8,-1,4,7,-5,7,1,-6,-1,4,3,55,8,-89,10};
cout<<find(a,15)<<endl;
return 0;
}
int find(int*a,int N)
{
int i,j,k,thissum,maxsum=a[0];
for(i=0;i<N;i++){//i为子序列的左端
thissum=0; //表示a[i]到a[j]的子序列和
for(j=i;j<N;j++){ //j为子序列的右端
thissum+=a[j];//对于相同的i不同的j,只要在j-1的基础上再加上a[j]就可以了
if(thissum>maxsum)
maxsum=thissum; //如果大就要更新结果
}
}
return maxsum;
}
相关文章推荐
- 最大子序列的和算法三分析
- 最大子序列和的算法分析
- 求最大子序列和的四种经典方法及其算法时间复杂度分析
- 算法分析之最大子序列
- 【数据结构和算法分析】最大子序列求和问题及联机算法
- 最大子序列和及其算法复杂度分析
- 转载自博客园不思蜀的转载文章:最大子序列和算法分析
- 算法分析学习日志(二):最大子序列和问题
- <数据结构与算法分析 C++描述>算法分析之最大子序列和问题
- HDU1003 Max Sum 最大子序列和的问题【四种算法分析+实现】
- 算法分析-最大子序列
- 最大子序列算法的JAVA实现
- 文本比较算法Ⅵ——用线性空间计算最大公共子序列(翻译贴)
- 算法的艺术--最大子序列和问题
- 求数组子序列最大和的算法
- 求最大子序列和的两种算法
- 4种序列模式挖掘算法的比较分析
- Longest Subqueuece最大升序子序列(算法实现)
- 求最大子序列和算法