原文网址

www.jiuzhang.com

问题详情

给定一个整数数组,找到一个具有最小和的子数组。返回其最小和。

在线评测本题:

http://www.lintcode.com/zh-cn/problem/minimum-subarray/

解答

这道题和max subarray很类似,我用local 和 global 的dp方式阔以解决这道

那么我们来看动态规划的四个要素分别是什么?

State:
localmin[i] 表示以当前第i个数最为结尾的最小连续子数组和。
globalmin[i] 表示以当i个数里面(可以不以第i个作为结尾)的最小连续子数组和。

Function:
localmin[i] = min(localmin[i - 1] + nums.get(i), nums.get(i));
globalmin[i] = min(globalmin[i - 1], localmin[i]);

initialize:
globalmin[0] = localmin[0] = nums.get(0);

answer:
globalmin[n-1]/

优化:

由于这道题第i个状态只跟i-1的状态有关,所以这道题还可以用滚动数组

参考代码:

http://www.jiuzhang.com/solutions/minimum-subarray/

九章算法面试题87 最小子数组相关推荐

  1. 九章算法面试题86 合并排序数组

    原文网址 www.jiuzhang.com 问题详情 合并两个排序的整数数组A和B变成一个新的数组. 在线评测本题: http://www.lintcode.com/zh-cn/problem/mer ...

  2. 九章算法面试题27 最大连续子集

    九章算法官网-原文网址 http://www.jiuzhang.com/problem/27/ 题目 给一个整数集合S,定义S的子集D为连续子集当且仅当D中的整数构成连续的整数序列.求S的最大连续子集 ...

  3. 九章算法面试题72 翻转链表I

    九章算法官网-原文网址 http://www.jiuzhang.com/problem/73/ 题目 给一个链表,然后我们要把这个链表进行翻转. 在线测试本题 http://www.lintcode. ...

  4. 九章算法面试题13 随机数生成器

    九章算法官网-原文网址 http://www.jiuzhang.com/problem/13/ 题目 有一个随机数生成器,每次等概率的返回1到5中的一个整数.现在需要你利用这个随机数生成器来设计一个新 ...

  5. 九章算法面试题54 带重复元素的全排列

    九章算法官网-原文网址 http://www.jiuzhang.com/problem/54/ 题目 给定一个带重复元素的整数集合,求出这个集合中所有元素的全排列.对于集合[1,1,2],其本质不同的 ...

  6. 九章算法面试题2 抄书问题

    九章算法官网-原文网址: http://www.jiuzhang.com/problem/2/ 题目 有n本书和k个抄写员.要求n本书必须连续地分配给这k个抄写员抄写.也就是说前a1本书分给第一个抄写 ...

  7. 九章算法面试题81 岛屿的个数

    原文网址: www.jiuzhang.com 问题详情 给一个01矩阵,求不同的岛屿的个数. 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛.我们只考虑上下左右为相邻. 在线评测本题: ...

  8. 何海涛算法面试题感悟之三:子数组…

    题目:输入一个整形数组,数组里有正数也有负数.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和.求所有子数组的和的最大值.要求时间复杂度为O(n). 例如输入的数组为1, -2, 3, ...

  9. 一周刷爆LeetCode,算法da神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记

    一周刷爆LeetCode,算法大神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记 教程与代码地址 P1 出圈了!讲课之外我们来聊聊 ...

最新文章

  1. 解决Debian-7.1下Chrome浏览器字体难看的问题
  2. Redis集群两种配置方式
  3. 题目1178:复数集合
  4. 三角形中惊现叛徒!自己胖的像个球,却能成就世界上最快的赛车引擎......
  5. silverligh的数据访问
  6. linux服务器程序开发,怎样搭建一个linux开发服务器
  7. CAN笔记(18) 对象字典
  8. 获取经纬度之间距离的Java工具类
  9. 医院计算机科学与技术笔试试题,医院信息科招收计算机科学与技术专业的笔试试题...
  10. ARM资源免费下载——超级全面,力荐
  11. PHP连接MySQL 8.0报错的解决办法
  12. 联通一直显示无法连接服务器是怎么回事,联通宽带无法连接服务器1404
  13. 方文山------周杰伦御用作词
  14. 创建套接字socket函数的详解(sock_stream和sock_dgram的分析)
  15. 自恢复保险丝选型说明
  16. App 抓包提示网络异常怎么破?
  17. 170929 逆向-Reversing.kr(Ransomware)
  18. 系统总裁SC系统封装WIN7
  19. 如何快速的自建 DoH ( DNS over HTTPS) 服务
  20. 『原创』统计建模与R软件-第四章 参数估计

热门文章

  1. python替换指定位置word图片_用Python在word的指定位置插入图片(使用Python-docx包)...
  2. selenium获取某网站工作岗位信息(含火狐浏览器的驱动下载安装步骤)
  3. 如何免费添加QQ空间的音乐
  4. iscsi实现网络磁盘共享以及LVM方式共享拓展
  5. TDOA 定位技术和实际应用简介
  6. iPad新5.0笔刷
  7. winfrom ListBox 控件拖动滚动条闪烁
  8. 中科大计算机考研英语,中科大计算机考研复试英语.doc
  9. 博图region用法_TIA博途软件-STEP 编程指南
  10. jira--研发管理-敏捷。