求子数组的最大和要求O(n)
来源:互联网 发布:h3c vlan 添加端口 编辑:程序博客网 时间:2024/05/18 23:24
//求子数组的最大和
//输入一个整形数组,有整数也有负数,数组中连续一个或多个子数组,每个子数组都有一个和,求所有子数组的和的最大值,要求时间复杂度O(n)
#include<iostream>int GetMax( int * arr){int max = arr[0];for (int i = 1; i < 10; i++){if (max < arr[i]){max = arr[i];}}return max;}int getMaxSum(int * arr){int result = 0;int tmp = 0;for (int i = 0; i < 10; i++){if (tmp>0){tmp += arr[i];}else{tmp = arr[i];}if (tmp > result)result = tmp;}return result;}using namespace std;void main(){int arr[10] = { 1, -3, 8, -6, 2, -3,4, 8, -11, 12 };int max = GetMax( arr);if (max <= 0){cout << "最大子数组和为" << max;cin.get();return;}int result = getMaxSum(arr);cout << "最大子数组和为" << result;cin.get();}
4 0
- 求子数组的最大和要求O(n)
- 求数组的最大子段和(O(N^3)-->O(N^2)-->O(NlogN)-->O(N))
- 求子数组的最大和(O(n)和分治法O(nlogn))
- 求子数组的最大和(O(n)和分治法O(nlogn))
- 求所有子数组的和的最大值。要求时间复杂度为O(n)
- 求数组的子数组的最大和,时间为O(n)
- 求连续子数组的最大和O(n)解法之思路与Java实现
- 求数组的最大子段和,动态规划 时间复杂度O(n)
- 每天一道LeetCode-----找到给定数组的连续子数组,使这个子数组的和最大,要求复杂度为O(n)
- [java实现]找一个数组的最大和的连续子数组(时间复杂度 O(n))
- [java实现]找一个数组的最大和的连续子数组(时间复杂度 O(n))
- 求一个整型数组的最大和的子数列,要求时间复杂度为线性的
- 时间复杂度为O(N)的求最大子序列和的算法
- 求数组最大子数组的和
- 求最大子列和(时间复杂度分别为O(n3) O(n2) O(n))
- 求长度为n的数组中,加和最大的子数组
- <o(2n)最坏复杂度求数组的最大最小值
- 一个数组中找出连续子向量的最大和 分治算法 扫描算法O(n)
- ubuntu12.04中shell脚本无法使用source的原因及解决方法
- selenium处理多窗口
- step by step remoting
- 第10周 项目1 拓展题目1
- Google 的开源技术protobuf 简介与例子
- 求子数组的最大和要求O(n)
- 添加表格的右侧索引
- aptana的使用
- selenium抓取页面可用元素css
- java socket编程
- The Perfect Stall(最大二分匹配)
- 按钮 只响应一个
- 【2012noi国家队】Day 1 Day2 by sevenkplus
- 黑马程序员 java学习笔记 Day1:异常