绪论迭代与递归:寻找整数序列大总区段.pdfVIP

  • 1
  • 0
  • 约2.89千字
  • 约 4页
  • 2026-07-15 发布于北京
  • 举报

绪论迭代与递归:寻找整数序列大总区段.pdf

table{border-collapse:collapse;}table,th,td{border:1pxsolid#000;}

绪论

迭代与递归:总和最大区段

deng@tsinghua.edu.cn

问题+蛮力算法

整数序列0, n),找出其中总和最大的区段//有多个时,短者优先

例:0, 19)  {1, −2, 7, 2, 6, −9, 5, 6, −12, −8, 13, 0, −3, 1, −2, 8, 0, −5, 3}

总和最大(17)的区间有三个,其中两

个更短(6)

intgs_BF(intA[],intn){//蛮力策略:O(n^3)

intgs=A[0];//当前已知的最大和

for(inti=0;in;i++)

for(intj=i;jn;j++){//枚举所有的O(n^2)个区段

ints=0;for(intk=i;k=j;k++)s+=A[k];//用o(n)时间求和

if(gss)gs=s;//择优、更新

}

returngs;

i

j

递增策略

文档评论(0)

1亿VIP精品文档

相关文档