面试题17
来源:互联网 发布:linux 设置代理服务器 编辑:程序博客网 时间:2024/05/17 03:08
求子数组的最大和
输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为 O(n)。
例如输入的数组为 1, -2, 3, 10, -4, 7, 2, -5,
和最大的子组为 3, 10, -4, 7, 2,
因此输出为该子数组的和 18。
#include<stdio.h>#define n 8int summax(int *A, int len){ int i; int sum=A[0]; //记录最大和 int b=0; //记录加上后一个数后的值,如果值小于0,则前面的元素全部放弃 for (i = 0; i < len ; i++) { if (b > 0) { b = b + A[i]; } else { b = A[i]; } if (b > sum) { sum = b; } } return sum;}int main() { int A[n] = { 1,-2,3,10,-4,7,2,-5 }; int sum; sum = summax(A, n); printf("%d\n", sum); return 0;}
0 0
- .net面试题17
- 面试题 17
- 面试题17
- 2011.10.17百度面试题
- 2011.10.17百度面试题 .
- 2011.10.17百度面试题
- 2011.10.17百度面试题
- 2011.10.17百度面试题
- 2011.10.17百度面试题
- 2011.10.17百度面试题
- 2011.10.17百度面试题
- 剑指offer面试题17
- 【面试题】剑指offer 17
- 【java面试题】2017.11.17
- 面试题....
- 面试题
- 面试题
- 面试题
- C++ Primer 学习笔记_107_特殊工具与技术 --固有的不可移植的特征[上]
- 我们平时是怎么写html和css的?
- Responsive web design
- 飛飛(三十)求5个长方柱的体积和表面积
- 搜索算法集锦
- 面试题17
- 主机重启,redis无法启动(./redis-check-aof --fix <filename>)
- 寻找第一个缺失的整数
- C++ Primer 学习笔记_108(大结局!!!)_特殊工具与技术 --固有的不可移植的特征[下]
- Hadoop2.5.2 HA高可靠性集群搭建(Hadoop+Zookeeper)
- HDU 3853 LOOPS (概率DP)
- UVa_OJ 755 487-3279
- chromium启动流程
- Git提交代码常用命令