算出数组内最大自序之和

  • 题目要求
    • 示例
      • 代码

题目要求

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。

示例

示例一:
输入:nums = [-2,1,-3,4,-1,2,1,-5,4]
输出:6
解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。
示例二:
输入:nums = [1]
输出:1

代码

利用动态规划的思想,我们首先要确定的是我们所求的是0<i<n-1(因为数组从下标0开始,故减一)区间内最大的子序之和。则利用sum获取当前f(i)的f(i-1)的值,得出结论:sum = Max(f(i-1)+nums[i],nums[i]);
使得时间复杂度为O(n),空间复杂度为O(1)

int maxSubArray(int* nums, int numsSize){
//int nums = [-2,1,-3,4,-1,2,1,-5,4];
int sum = 0,max = nums[0];
for(int i = 0; i<numsSize; i++){sum = Max(sum+nums[i],nums[i]);max = Max(sum,max);}return max;
}
int Max(int var_1,int var_2){if(var_1 > var_2){return var_1;}else if(var_2 > var_1){return var_2;}else{return var_1;}
}

数据结构与算法每日一题——算出数组内最大自序之和相关推荐

  1. 横空出世,席卷互联网--评微软等公司数据结构和算法面试100题

    横空出世,席卷互联网                      ---评微软数据结构+算法面试100题 作者:July. 时间:2010年10月-11月.版权所有,侵权必究. 出处:http://bl ...

  2. 横空出世,席卷互联网--评微软等公司数据结构和算法面试100题 .

    入 编程这一行之初,便常听人说,要多动手写代码.可要怎么写列?写些什么列?做些什么列? c语言程序设计100例,太过基础,入门之后,挑战性不够.直接做项目,初学者则需花费大量的时间与精力.且得有一定能 ...

  3. 2022AcWing寒假算法每日一题之2058. 笨拙的手指

    2022AcWing寒假算法每日一题之2058. 笨拙的手指 题目链接:AcWing2058. 笨拙的手指 思路: 1.数据范围为0-1e9,则输入的时候按照字符串输入 2.将二进制和三进制各位数上的 ...

  4. 【备战蓝桥】 算法·每日一题(详解+多解)-- day1

    [备战蓝桥] 算法·每日一题(详解+多解)-- day1 ✨博主介绍 什么是蓝桥杯 第一题: 第二题 第三题 第四题 第五题 第六题 第七题

  5. 【备战蓝桥杯】 算法·每日一题(详解+多解)-- day11

    [备战蓝桥杯] 算法·每日一题(详解+多解)-- day11 ✨博主介绍 前言 Dijkstra 算法 流程 网络延迟时间 解题思路 Bellman-Ford 算法 流程 K 站内最便宜的航班 解题思 ...

  6. leetcode旋转数组 c语言,leetcode explore 初级算法第三题,旋转数组代码实现

    leetcode explore 初级算法第三题,旋转数组代码实现.原题链接: 题目分析 因为题目不是很长,这里把题目贴出来: 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. ...

  7. 数组合并假设有 n 个长度为 k 的已排好序(升序)的数组,请设计数据结构和算法,将这 n 个数组合并到一个数组,且各元素按升序排列。即实现函数-C-icoding-排序-数据结构

    数组合并 假设有 n 个长度为 k 的已排好序(升序)的数组,请设计数据结构和算法, 将这 n 个数组合并到一个数组,且各元素按升序排列.即实现函数: void merge_arrays(const ...

  8. 找出数组中两数之和为指定值的所有整数对

    一,问题描述 给定一个整型数组(数组中的元素可重复),以及一个指定的值.打印出数组中两数之和为指定值的 所有整数对 二,算法分析 一共有两种方法来求解.方法一借助排序,方法二采用HashSet 方法一 ...

  9. [珍藏版]微软等数据结构+算法面试100题全部出炉

    火爆出炉:微软等数据结构+算法面试100题首次完整亮相 ---100题V0.1版最终完成 ================ 作者:July2010年12月6日 微软等100题系列V0.1版终于结束了. ...

最新文章

  1. amoeba高可用mysql_amoeba for mysql 使用说明
  2. 装AJAX.NET 1.0的环境,我遇到个问题,进来解答下
  3. 笔记:基于DCNN的图像语义分割综述
  4. 【Linux系统编程学习】Linux系统IO函数(open、read、write、lseek)
  5. (75)信号发生器DDS锯齿波设计(一)(第15天)
  6. excel表中怎么插入visio_Excel工作表中的排序,你真的掌握吗?10张动图带你了解!...
  7. 【代码笔记】iOS-手机系统版本
  8. 【课程作业】学术英语写作:文献阅读报告1
  9. java+ElementUI前后端分离旅游项目第二天 旅游管理和自由行
  10. 90后程序员职场报告:月薪普遍过万 超七成有房有车 女性程序员不足一成
  11. [BZOJ4246]两个人的星座(计算几何)
  12. Spring Boot配置Tomcat容器、Jetty容器、Undertow容器
  13. 3.3 泰勒(Taylor)公式和麦克劳林(Maclaurin)公式
  14. Linux文件系统及文件储存方式
  15. JAVA默认永久代大小_jvm——metaspace代替永久代
  16. 计算机科学与技术专业考研方向
  17. 最大开源代码sourceforge 简介 及视音频方面常用的开源代码
  18. android go怎么安装,Android studio3.0安装教程-Go语言中文社区
  19. Docker学习笔记-volumes(一)
  20. AI2(App Inventor 2)离线版服务器网络版(AI伴侣2.47版)

热门文章

  1. 如何制作相册视频?简单3步做出好看的效果
  2. Eclipse改字体大小
  3. 如何用OBS直播?关键的步骤能不能简化一下
  4. 【重磅】2017中国互联网运营大会,你们想要的送票福利来啦!
  5. 自动控制系统的基本性能指标
  6. 【谷粒商城之订单服务-支付】
  7. Js中的多行注释与快捷键
  8. 浏览器控制台错误:Strict MIME type checking is enforced for module scripts per HTML spec.
  9. 渐变色在线工具,css 渐变色合成工具,挺好用的
  10. 虚拟机Ubuntu安装开发环境配置