LeetCode 53. Maximum Subarray 最大连续字段和问题

2023-10-27

 考察:最大连续字段和问题。

 解决问题时间复杂度:O(n)

问题隐含条件如果给出的数集都是负数,那么最大连续字段和就是,最大的那个负数。

eg:{-2,-1}  结果应该输出 -1 而不是 0

int maxSubArray(int* nums, int numsSize) {
    int maxSum = 0;       //维护最大连续字段和
    int currentMaxSum = 0;//当前最大和
    int nextNum = 0;
    int singleSum = nums[0]; //存在全是负数,则singleSum 代表最大的那个
    int j = 0;
    for (int i = 0; i < numsSize; i ++) {
        nextNum = nums[i];
        currentMaxSum += nextNum;
        if (currentMaxSum > 0) {
            maxSum = maxSum <= currentMaxSum  ?  currentMaxSum: maxSum;
        } else {
            currentMaxSum = 0;
            j ++;
            singleSum = singleSum < nextNum ? nextNum : singleSum;
        }
    }
    maxSum = (j == numsSize) ? singleSum : maxSum;
    return maxSum;
}

 

转载于:https://www.cnblogs.com/someonelikeyou/p/9611102.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LeetCode 53. Maximum Subarray 最大连续字段和问题 的相关文章

  • 报文摘要算法

    1 报文摘要算法 报文摘要算法是一种将任意长度报文转换成固定长度的报文摘要算法 它具有以下六个特点 能够作用于任意长度的报文 产生有限位数的标识信息 易于实现 具有单向性 具有抗碰撞性 具有高灵敏性 1 1 MD5 1 1 1 添加填充位
  • Pytorch —— nn.Module类(nn.sequential)

    对于前面的线性回归模型 Logistic回归模型和神经网络 我们在构建的时候定义了需要的参数 这对于比较小的模型是可行的 但是对于大的模型 比如100 层的神经网络 这个时候再去手动定义参数就显得非常麻烦 所以 PyTorch 提供了两个模
  • STM32CubeMX+Keil5+Proteus实现按键控制LED灯(入门篇)

    嵌入式HAL库实战项目 本文说明 STM32CubeMX安装和使用 Keil实现按键控制LED亮灭 Proteus仿真 补 Proteus连线问题 总结 本文说明 学生党 之前学习过嵌入式的课程 跟着正点原子的视频一步一步地构建项目的工程
  • nodejs日志管理 log4js使用详解

    一 首先是在项目中安装 log4js npm install log4js save 注 log4js日志级别 分别为 lt 权值从小到大 gt all lt trace lt debug lt info lt warn lt error
  • 数据分析 数据规约

    一 概念 数据规约 Data Reduction 是指在尽可能保持数据原貌的前提下 最大限度地精简数据集 数据规约又分为2类 属性规约 和 数值规约 二 属性规约 1 概念 属性规约 Attributes Reduction 是指通过减少数
  • Vue.js

    Vue js 简介 Vue 读音 vju 类似于 view 是一套用于构建用户界面的渐进式框架 JavaScript框架 相比于库 框架更为强大 但是用框架必须遵守其规则 简化DOM操作 对Vue对DOM元素有特殊语法修饰 直接用就完了 响
  • 寻找数字数组的中位数算法详解

    寻找数字数组的中位数算法详解 在编程中 经常需要对数字数组进行各种操作和计算 其中一个常见的需求是找到这个数组的中位数 中位数是指在一组数据中处于中间位置的数值 将数组按照从小到大的顺序排列 中位数即为位于中间位置的数字 本文将详细介绍如何
  • 浪潮服务器u盘安装系统_教你u盘安装iso镜像系统

    原标题 教你u盘安装iso镜像系统 我们喜欢使用ISO的系统镜像文件安装电脑的系统 但是很多用户下载iOS后 却又不知道该怎么操作安装 以前 我们会用光盘进行安装 而现在 我们却很少使用光盘安装了 下面小编就来跟大家解说U盘怎么安装iso系
  • svn的branch/tag

    http www cnblogs com mingyongcheng archive 2011 05 21 2053139 html 本节主要讲解一下在SVN中Branch和tag的比较 SVN中Branch和tag在一个功能选项中 在使用
  • ubuntu20.04安装libraw,并测试libraw

    1 下载安装包并解压到目录 https www libraw org download 2 编译安装 autoreconf install cd LibRaw X YY configure with optional args make s
  • 稳压二极管1N4733A使用方法

    一 工作原理 1 1定义 稳压二极管 英文名称Zener diode 又叫齐纳二极管 利用PN结反向击穿状态 其电流可在很大范围内变化而电压基本不变的现象 制成的起稳压作用的二极管 1 2原理 稳压二极管工作在反向击穿区 当管子两端所加的反
  • [Python语言程序设计-第11期] 测验1: Python基本语法元素 (第1周)

    1 Guido van Rossum正式对外发布Python版本的年份是 1991年 2 以下关于Python语言中 缩进 说法正确的是 缩进在程序中长度统一且强制使用 3 以下不属于IPO模型的是 Program 4 字符串是一个字符序列
  • Cadence virtuoso error

    No convergence achieved with the minimum time step specified Last acceptable solution computed at 1 48938 ps The values
  • halcon计算仿射矩阵的函数参数中的x和y

    最近opencv和halcon混用 Row Column x y显然已经快乱套了 正常来说 x对应Column y对应Row 是符合自然规律的 但在halcon计算仿射矩阵的函数中参数含义是如下的 hom mat2d translate T
  • pycharm不能识别zsh环境变量

    pycharm不能识别mac zsh环境变量 原因 在macOS上 一个由GUI启动器 Finder Dock Spotlight等 启动的应用程序会继承一个相对空的环境 没有明智的方法来改变它 这种情况引起了抱怨 当从IDE启动时 在终端
  • 联通5g接入点设置参数_手机网速慢可以这样设置,网速瞬间飙升,还不知道真是可惜了...

    不管是在家或者出门 相信大家都会遇倒网速突然变慢的问题 可能有些小伙伴会以为是5G出来了 所以4G给限速了 其实不是的 在过去一年 4G用户就提升了近一倍 但是基站并没有提升这么多呀 就像是一个WiFi你一个人用跟一大家子人用一样 总会慢下
  • 接收IOS所谓的二进制流图片问题

    最近在对接APP方面的图片上传问题 在沟通的过程中 产生了一系列的误会 在IOS方面用了form data的方式进行图片的提交 指定了传入的参数名 图片名称 图片格式等等 对于后台来说其实就是处理接收并处理文件 还是和处理h5文件一样 在s
  • VS2013编译64位OpenSSL

    安装ActivePerl 这个没什么好说的 直接运行msi即可 编译OpenSSL 1 使用Visual Studio Tool中的 VS2013 x64 本机工具命令提示 来打开控制台 也可以打开一个控制台 然后进到 安装路径 Micro
  • 尚硅谷第四课0722班 java-特殊流程控制 -数组元素的默认初始化-数组操作常见问题-Java内存的结构

    特殊流程控制 Braek public class Text1 public static void main String args for int i 0 i lt 10 i if i 3 break System out printl
  • Spring Boot 引入 easyexcel 最新版本 3.3.2,实现读写 Excel

    EasyExcel是一个基于Java的 快速 简洁 解决大文件内存溢出的Excel处理工具 他能让你在不用考虑性能 内存的等因素的情况下 快速完成Excel的读 写等功能 在 Spring Boot 环境中使用 easyexcel 需要完成

随机推荐

  • Collection -> 集合的同步执行

    using System using System Collections using System Collections Specialized namespace 集合和同步
  • 2023华为OD机试真题Java实现【密室逃生游戏】

    题目描述 小强正在参加 密室逃生 游戏 当前关卡要求找到符合给定密码K 升序的不重复小写字母组成 的箱子 并给出箱子编号 箱子编号为1 N 每个箱子中都有一个字符串s 字符串由大写字母 小写字母 数字 标点符号 空格组成 需要在这些字符串中
  • 计算机网络的类别

    1 英特威 互联网 internet是同一个概念 在平时使用中有不同的说法 网络不等于internet 2 不管网络怎么分类 最后都要连接到internet 3 网络的分类 一般来说是按照网络的覆盖范围或作用范围来进行划分的 1 第一种类型
  • 【Python爬虫】requests+Beautifulsoup存入数据库

    本次记录使用requests Beautiful pymysql的方法将大学排名的数据存入本地MySQL数据库 这是一篇学习性文章 希望能够分享在学习过程中遇到的坑与学到的新技术 试图用最简单的话来阐述我所记录的Python爬虫笔记 一 爬
  • 操作系统第九讲——线程的实现方式和多线程模型

    用户级线程 1 用户级线程由应用程序通过线程库实现 所有的线程管理工作都由应用程序负责 包括线程切换 2 用户级线程中 线程切换可以在用户态下即可完成 无需操作系统干预 3 在用户看来 是有多个线程 但是在操作系统内核看来 并意识不到线程的
  • Spring Cloud Alibaba微服务第25章之Jenkins

    目录 一 前言 1 领头羊 2 特点 二 Docker安装Jenkins 1 docker search jenkins查询镜像
  • Whitted-Style 光线追踪

    Whitted Style 光线追踪 生成相机光线 定义光线 每条光线相当于一条射线 具有两个固定属性 起点o以及方向d 此外参数t表示光线的长度 本节中所学习的光线类型为摄影机光线或主光线 对图像中的每一个像素 我们需要构造一条相机射线
  • Eggjs笔记:关系型数据库表之间的关系

    关系数据库中表与表的 3 种关系 1 一对一的关系 一个人对应一个唯一的身份证号 一个人对应一个唯一的驾驶证 一篇文章对应一个文章详情 如上图 一篇文章对应一个文章详情 本来可以是一张表 拆分成2张表 文章表用于存储一些通用的字段信息 文章
  • 教妹学Java(二十一):一文带你了解面向对象编程的所有概念

    你好呀 我是沉默王二 是 Web 全栈开发进阶之路 的作者 CSDN 的博客之星 教妹学 Java 是一套非常有趣的付费专栏 除了继续保持幽默风趣的行风风格 我还力求把每一个知识点讲得透彻明白 保证你可以从中受益 成为一名优秀的 Java
  • Request 详解

    1 Request对象 在Servlet中用来处理客户端请求需要用doGet或doPost方法的request对象 2 get和post请求区别 get请求 get提交的数据会放在URL之后 以 分割URL和传输数据 参数之间以 相连 ge
  • 简单易懂的 flex 布局技巧:前面盒子左对齐,后面盒子右对齐

    前言 页面布局的灵活性和效果直接影响着用户的使用体验 而在实现页面布局时 我们通常会使用 css 的布局方式来进行设计 其中 flex 布局作为一种比较新的布局方式 其灵活性和效果备受开发者的青睐 在这里 我将为大家介绍如何使用 flex
  • matlab学习:regress函数、stepwise函数、lasso函数

    做数据量化推理的大作业 考虑了几种回归模型 由于网上的资料并不多 只能借鉴部分信息 再加上自己的尝试 算是学会了matlab中regress stepwise lasso三个函数的一些用法 分享出来 先分享下有关regress函数的内容 g
  • C++模板基础(九)

    完美转发与 lambda 表达式模板 void f int input std cout lt lt void f int input t lt lt input lt lt n void f int input std cout lt l
  • springboot注入第三方jar包的类

    原文链接 https blog csdn net qq 22855003 article details 89843640 比如我们要注入第三方jar包里的CrawlerTask1 CrawlerTask2这个两个类 因为这两个类上没有被
  • JUC并发编程设计模式

    一 保护性暂停 1 1 定义 即Guarded Suspension 用在一个线程等待另一 个线程的执行结果 要点 有一个结果需要从一个线程传递到另一 个线程 让他们关联同一一个GuardedObject 如果有结果不断从一个线程到另一个线
  • Hadoop集群搭建【web端不显示从节点问题】

    系统 CentOS7 环境 jdk8 版本 hadoop 2 7 7 结构 hadoop01 namedata nodedata hadoop02 nodedata hadoop03 nodedata 配置 hadoop 2 7 7 etc
  • 数仓模型理论

    1 数仓介绍 2 建模理论 建模的目标 性能 成本 效率 数据质量中找到平衡点 2 0 三范式 123要求逐渐严格 每一列不可分割 属性要完全依赖于主键 不可以只依赖一部分 数据重复很多 案例中主键是学生id和课程 所属系和系主任只依赖学生
  • qt的QListwiget设置横向的排列

    cpp view plain copy contentsWidget new QListWidget contentsWidget gt setViewMode QListView IconMode contentsWidget gt se
  • MyBatis映射文件与核心配置文件

    目录 1 Mapper 映射文件 2 POJO类 3 Junit测试代码 4 MyBatis 配置文件详解 5 mapper 映射配置文件详解 1 Mapper 映射文件 在 MyBatis 中 推荐使用 mapper 作为包名 我们只需要
  • LeetCode 53. Maximum Subarray 最大连续字段和问题

    考察 最大连续字段和问题 解决问题时间复杂度 O n 问题隐含条件 如果给出的数集都是负数 那么最大连续字段和就是 最大的那个负数 eg 2 1 结果应该输出 1 而不是 0 int maxSubArray int nums int num