求解最大子序列和

【问题描述】
给定一个有n个整数的序列,要求求出其中最大子序列的和
【问题求解】
如果扫描遇到负数,当前子序列和 thisSum 将会减小,若 thisSum 为负数,表明前面已经扫描的那个子序列可以抛弃了,重新开始下一个子序列的分析,并置thisSum为0。若这个子序列和thisSum不断增加,那么最大子序列和maxSum也不断增加。
【代码】

//求解最大子序列和
//给定一个有n个整数的序列,要求求出其中最大子序列的和
#include<iostream>
using namespace std;int maxSubSum(int a[], int n)
{int maxSum = 0, thisSum = 0;for (int i = 0; i < n; i++){thisSum += a[i];if (thisSum < 0)thisSum = 0;if (maxSum < thisSum)maxSum = thisSum;}return maxSum;
}int main()
{int a[105], n;cout << "请输入序列中数字的个数:";cin >> n;cout << "请依次输入数字:";for (int i = 0; i < n; i++)cin >> a[i];cout << "最大子序列和为:" << maxSubSum(a, n) << endl;system("pause");return 0;
}

【算法分析】
显然该算法中仅扫描a一次,其算法的时间复杂度为O(n)。

算法 || 蛮力法【求解最大子序列和】#05相关推荐

  1. 关于算法--蛮力法篇--选择排序

    近日开始学习算法,所看课本为清华大学出版社的<算法设计与分析基础>,对简单的数据结构进行了复习,已经学习了算法效率分析基础. 本篇开始对所学算法的思想进行实际JS编码,看学习的进度,每日写 ...

  2. 使用蛮力法求解数字迷问题(类似ABCAB*A = DDDDDD)

    蛮力法概述 蛮力法是一种简单直接地解决问题的方法,常常直接基于问题的描述>和所涉及的概念定义.是基于计算机运算速度快这一特性,在解决问题时采用的一种"懒惰"的策略.把问题的所 ...

  3. 蛮力法求解百元买百鸡问题

    蛮力法(brute force methord,也称穷举法或者枚举法)是一种简单直接地解决问题的方法,常常直接基于问题的描述.所以,蛮力法也是最容易应用的方法. 蛮力法所依赖的基本技术是遍历(trav ...

  4. 蛮力法查找有序数列c语言,算法——蛮力法之选择排序和冒泡排序c++实现

    这次实现的是蛮力法中的两个例子,选择排序法和冒泡排序法,使用的编译环境是vs2013,下面对这两个算法做一个简单介绍,然后是两个算法的c++实现代码. 选择排序法比较的范围是整个列表,每次扫描结束找出 ...

  5. 蛮力法 —— 求解最大连续子序列和问题

    问题:求解最大连续子序列和问题 题目: 给定一个有n(n>=1)个整数的序列,求解其中最大连续子序列的和.规定一个序列的最大子序列和至少为0,若结果小于0,则其结果为0 例:序列(-2,11,- ...

  6. 蛮力法求解最大连续子序列和问题

    问题描述 给定一个有n(n≥1)个整数的序列,要求求出其中最大连续子序列的和. 例如: 序列(-2,11,-4,13,-5,-2)的最大子序列和为20 序列(-6,2,4,-7,5,3,2,-1,6, ...

  7. 蛮力法/最大连续子序列的和O(n^3)

    package xcrj.kchalgorithm.bruteForce;/* ** 最大连续子序列的和* 给定一个有n(n≥1)个整数的序列,要求求出其中最大连续子序列的和.* 蛮力法:子序列的上下 ...

  8. 蛮力法 —— 求解迷宫问题 —— DFS和BFS

    求解迷宫问题 问题描述: 有如图8×8的迷宫 OXXXXXXX OOOOOXXX XOXXOOOX XOXXOXXO XOXXXXXX XOOOOXOO XXXXXXXO 其中,O表示通路方块,X表示 ...

  9. 算法设计与分析-TSP六种方法-贪心算法(最近邻点、最短链接)、蛮力法、动态规划法、回溯法、分支限界法、模拟退火

    旅行商问题,即TSP问题(Travelling Salesman Problem)又译为旅行推销员问题.货郎担问题,是数学领域中著名问题之一.假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径, ...

最新文章

  1. 抽象工厂模式-与-工厂方法模式区别
  2. 大咖聊数据,视频抢先看
  3. abaqus单位_abaqus系列技巧3:关于有限元软件的单位制问题
  4. php iis ajax 无效,IIS7中Ajax.AjaxMethod无效的原因及解决方法
  5. 吴恩达神经网络和深度学习-学习笔记-16-超参数的系统的调整方法
  6. [转载]Qlist的用法
  7. Redis数据结构之——sds
  8. 连接mysql数据库error 2003_连接mysql数据库error 2003
  9. AV1时域滤波相关代码
  10. iframe标签控制视频大小及自动播放
  11. 关于音视频的一些知识(demux、filter等)
  12. 51信用卡到底安全吗?
  13. 解决 Idea 下 Tomcat 乱码(淇℃伅璀﹀憡)问题
  14. 【Python】字符串的创建与驻留机制
  15. 计算机专业智能安防,基于计算机视觉的智能安防监控系统研究
  16. 边缘计算网关有哪些优势特色?边缘计算网关和智能网关的区别?
  17. 从矩阵中提取对角线元素;将一维数组转换为对角线矩阵:np.diag()函数
  18. 【正则】正则匹配 QQ号, 邮箱email,手机号码新号段,生日
  19. 如何获取html页面的焦点,javascript如何判断是否获得焦点?
  20. React Native 源码分析(三)——Native View创建流程

热门文章

  1. FilterDispatcher
  2. 容易歧义的线程函数SuspendThread、ResumeThread 和如何获知线程是否还在运行
  3. 菜单栏隐藏 | CSDN创作打卡
  4. C++ const和constexpr详解
  5. apt-get和pkgsrc
  6. Java中打印对象内存地址
  7. 算法分析:芯片测试问题 非递归 JAVA 有n片芯片,已知好芯片比坏芯片至少多1片......
  8. BurpSuite安装插件教程:BurpCrypto: 万能网站密码爆破测试工具
  9. php soapclient 参数,如何使用SoapClient在PHP中将XML数据作为参数发送
  10. 数据结构实验报告(一)