求最大子序列和及其位置(四种经典方法)

2023-11-19

算法部分

#include <iostream>
#include <vector>
using namespace std;
//http://blog.163.com/kevinlee_2010/blog/static/169820820201010495438247/
//http://www.cnblogs.com/mingzi/archive/2008/07/22/1248793.html
//http://www.richardma.org/blog/?p=167207
//http://blog.csdn.net/smallacmer/article/details/7188234

//s(tart)表示最大子序列的开始位置,e(nd)表示结束位置
//这里如果有多于一个的最大子序列的时候,只记录开始位置最低的那个
int s=0;
int e=0;

//穷举法,复杂度O(n^3)
long maxSubSum1(const vector<int> &a){
	long maxSum=0;
	for (int i=0; i<a.size();i++)
	{
		for (int j=i;j<a.size();j++)
		{
			long thisSum=0;
			for (int k=i; k<=j; k++)
			{
				thisSum+=a[k];
			}
			if (thisSum>maxSum){
				maxSum=thisSum;
				s=i;
				e=j;
			}
		}
	}
	return maxSum;
}

//也是穷举法,不过减去了上面的一些不必要操作O(n^2)  
long maxSubSum2(const vector<int> &a){
	long maxSum=0;
	for (int i=0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

求最大子序列和及其位置(四种经典方法) 的相关文章

  • type=”number” 的 html 标签输入和基于文化的小数点分隔符

    当我打开具有另一种文化和用户界面 即瑞典 的网站时 我需要的是在英语浏览器中查看正确的小数分隔符 怎么存档呢
  • 使用 jupyter 将标准输入替换为 python3 中的字符串

    我试图用先前定义的字符串替换标准输入 在浏览堆栈溢出后 我找到了几种解决方案 尽管主要针对 python2 例如 下面的解决方案在 ideone com 中进行了测试并且似乎有效 但是当我尝试将其添加到我的 jupyter 笔记本中的代码中
  • Javascript?:如何动态添加文本输入/表单字段到 HTML 表单?

    我正在构建一个网络表单 其中有一个输入列表 到目前为止 一切都很好 但是 如何添加链接 按钮以将另外 5 个字段添加到列表中 例如
  • HTML5 输入模式搜索报价

    我需要测试一个输入字段
  • 我无法获取数据列表中输入的值?

    我有一个如下所示的数据列表框 td td
  • Python:使用另一个命令的输入

    我想知道如何管理 python 脚本中另一个命令的输入 Example cat myfile txt my python script py 我的脚本如何管理来自 cat 命令的输入流 如何从此管道命令获取输入 多谢 实现此目的的一种简单且
  • 宽度为 100% 的 HTML 输入文本框溢出表格单元格

    有谁知道为什么宽度为 100 的输入元素会超出表格的单元格边框 在下面的简单示例中 输入框越过表格的单元格边框 结果非常糟糕 这已经过测试 并且在 Firefox IE7 和 Safari 上以相同的方式发生 这对你来说有意义吗 我错过了什
  • Java 输入问题 - 如何比较字符串[重复]

    这个问题在这里已经有答案了 这看起来很简单 但我已经被困在这里几个小时了 我有一个疑问 当你必须在Java中比较两个字符串时 如果我只是做这样的事情 String var1 hello String var2 hello 然后在另一个函数中
  • XNA 数字锁定影响输入

    我有一个中断 在键盘按键上给我协调键 当数字锁打开时 按键会显示为 Numpad1 Numpad2 等 当数字锁关闭时 数字键盘键会变成 End Left Right Up PageLock 我不能让这种情况发生 因为我需要将这些键 左 右
  • 保持java套接字打开?

    我正在制作一个会自动更新的程序 游戏 我有更新部分 但没有检查版本 我本以为这会很容易 这就是我所做的 我为游戏编写了一个更新程序 并且编写了一个服务器 每次客户端 更新程序连接时 服务器都会启动一个线程 线程处理一切 游戏更新程序读取一个
  • 通过类名 JQuery 获取 ID

    嗨 这是一个jquery问题 假设我有这个
  • HTML:光标显示在只读输入文本中?

    假设我们有一个只读的文本框 如下所示
  • Jquery:按下输入类型=提交时防止重新加载页面

    我在 MVC 3 Razor 项目中有以下代码 div class user info div
  • 检查是否有任何输入元素处于焦点

    我有一个 jquery 脚本 当按下键盘上的任意键时 它会显示一个 div 我想向脚本添加一个条件 仅当页面上没有其他输入区域 文本区域或文本字段 处于焦点时才运行脚本 这样您就可以在页面的其余部分实际键入内容 而无需显示 div docu
  • 如何避免 在选择文件后删除值?

    我正在开发一个网络上传器 但是 我发现了一些东西 我不知道这是否是一个问题 这是我发现的 当我选择文件时
  • 非数字输入导致死循环

    由于某种原因 如果用户输入了错误的数据类型 例如 j 或 循环将停止要求输入并继续显示 Enter an integer gt 一遍又一遍 如何让程序处理错误的输入 为什么输入非数字值会导致如此奇怪的行为 define SENTINEL 0
  • 如何测试具有多个输入调用的循环?

    我正在尝试测试一个依赖多个用户输入来返回某个值的函数 我已经在这里寻找了多个答案 但没有一个能够解决我的问题 我看到了参数化 模拟和猴子补丁的东西 但没有任何帮助 我认为很大程度上是因为我没有清楚地理解正在做的事情背后的概念 并且我无法适应
  • 如何循环用户输入直到输入整数?

    我想运行一个交互式程序 提示用户输入学生人数 如果用户输入除整数之外的字母或其他字符 则应再次询问他们 输入学生人数 我有以下代码 public int createArrays Scanner s int size System out
  • 将 javascript 变量作为 onsubmit href 链接传递到表单/输入字段

    id 喜欢有一个输入框 用户可以在其中输入搜索词 该搜索词可能会传递给一个 javascript 函数 然后该函数将一些 url 段与搜索词组合起来 创建一个完整的 url 到目前为止 它在没有表单的情况下工作正常 但我想向其中添加一个表单
  • Android 多点触控:ACTION_UP 并不总是被调用?

    我开发了一个在视图中处理多点触控的 Android 应用程序 我基本上跟踪可能发生的几个 MotionEvent 例如 ACTION UP ACTION MOVE 我在 View 类中覆盖的 onTouch 方法如下所示 public bo

随机推荐