您的位置:首页 > 其它

最大子段 ,最大子矩阵 算法

2010-04-22 19:57 204 查看
最大子段算法//n数组b的元素个数
int max_arr(int n,int*b)
{
int i,s=-10000000,sum=0;
for(i=0;i<n;++i)
{
if(s>0)s+=b[i];
else s=b[i];
if(s>sum)sum=s;
}

return sum;
}

最大子矩阵的算法

int max_matrix(int n)
{
int i,j,k,b[200];int sum,max=-1000000 ;
for(i=0;i<n;++i)
{
memset(b,0,sizeof(b));
for(j=i;j<n;++j)
{
for(k=0;k<n;++k)
b[k]+=a[j][k];
sum=max_arr(n,b);
if(sum>max)max=sum;
}
}

return max;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: