数组遍历

1.1 分析题意

  • 首先:我们求的是连续的1的个数,所以我们不能也没必要对数组进行排序;
  • 其次:只要求求出最大连续1的个数,并不要求具体的区间数目,所以我们只需要用一个值来记录这个结果;

1.2 思路分析:

一个for循环遍历数组里面的每一个元素,当前元素有两种情况:

1.3 复杂度分析

时间复杂度: O(n)

空间复杂度: O(1)

2.1 题意理解

我觉得这道题的关键点在:

如果提莫在中毒影响结束 再次攻击, 中毒状态计时器将会重置,在新的攻击之后,中毒影响将会在 duration秒后结束。

翻译成人话就是:中毒期间再次中毒,会按照新的中毒终止时间计算。

2.2 思路分析

2.3 复杂度分析

时间复杂度: O(n)

空间复杂度: O(1)

3.1 题意理解

找到一个无序数组中第三大的数字;如果这个是不存在第三大的数字,那就返回最大的数字。

3.2 思路分析

一个最简单的方法就是:将数字遍历,然后从后往前进行遍历,找到第三大的数字。

但是该方法的时间复杂度为: O(n*logn),空间复杂度为: O(logn)

另一种方法是:我们不需要排序,但是使用最传统的模拟方法:用三个值来记录所有数据中的最大的三个,具体来说:

在实现的过程中,有一个细节就是:使用 Integer类型的变量,根据是否为 null来标识是否进行了赋值操作,这样就可以进行统一操作,而不需要记录已经记录的数目。

  if(a == null || x > a){
    c = b;
    b = a;
    a = x;
  }else if(a > x && (b == null || x > b)){
    c = b;
    b = x;
  }else if((b != null && b > x) && (c == null || x > c)){
    c = x;
  }

3.3 复杂度分析

时间复杂度: O(n)

空间复杂度: O(1)

4.1 题意理解

从数组中任意选出三个数,同一个数不可以重复取,求出可以达到的最大乘积。

4.2 思路分析

4.3 复杂度分析

时间复杂度: O(n*logn)

空间复杂度: O(logn)

Original: https://www.cnblogs.com/404er/p/leetcode_array_traversal.html
Author: 睡觉不打呼
Title: 数组遍历

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/644396/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • SmartThings物联网平台简介

    SmartThings是一个智能设备控制系统,它包括:SmartThings Cloud(云平台)、SmartThings Hub(网关)、SmartThings Mobile(手…

    技术杂谈 2023年5月31日
    094
  • NO.2Windows桌面图标-间距参数调整

    遇到如下问题: 桌面图标自动排序后间隔过大,且如图二这种指向图标能看到图标之间的间隔虚框,此方法可调整虚框的水平和垂直距离,即调整图标之间的间距。 测试电脑: 华为 mateboo…

    技术杂谈 2023年7月24日
    069
  • 国运之争 功在当下

    国运之争 中华复兴 郭继承讲的好 国运之争 系于当代,下一代 树报国志 成栋梁材 十年累积 三年中考 三年高考 四年大学 道德在内修心思价值观念 仁爱在外制态度情绪言行 业果在平时…

    技术杂谈 2023年5月31日
    086
  • JS基础代码

    1 DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset=&q…

    技术杂谈 2023年7月24日
    076
  • 实战篇:断点续传?文件秒传?手撸大文件上传

    各位看官大家好,今天给大家分享的又是一篇实战文章,希望大家能够喜欢。 开味菜 最近接到一个新的需求,需要上传 2G左右的视频文件,用测试环境的 OSS试了一下,上传需要十几分钟,再…

    技术杂谈 2023年7月11日
    059
  • 2022.25 抽象思维

    有句话说的好,”比知识更重要的是思维方式”,作为技术人员,那种思维方式最重要呢? 首先想到的是抽象思维,它是高阶技术人的必备能力,工作越久职位越高越需要抽象…

    技术杂谈 2023年5月30日
    066
  • mysql(DQL)

    MYSQL(康老师-DQL ) 1:基本的SELECT语句 1.1:基本的SELECT语句的课后练习 2:运算符 2.1:运算符课后练习 3.1排序 3.2分页 4.多表查询 4….

    技术杂谈 2023年7月25日
    057
  • axios的兼容性问题

    1、axios在PC端浏览器的兼容性问题 axios支持IE8+,但原理是基于promise之上实现的,因此会存在不兼容IE的问题。 trident内核的浏览器下会报:vuex r…

    技术杂谈 2023年5月31日
    080
  • django 1.11 向 django2 django3 过渡的 注意点

    1 django 1.11.11 的路径 为 url开头,集合了字符串匹配及 正则匹配 2 django 1.11.11 需要使用pymysql ,需要在 项目的 init.py …

    技术杂谈 2023年7月10日
    057
  • 高企必备项目—SSM框架项目CRM客户管理系统

    首先我们来了解一下什么是CRM客户管理系统? CRM系统包括一些核心的客户关系管理业务功能,如:潜在客户、客户管理、拜访管理、商机管理、订单管理等模块,满足企业客户关系信息化的要求…

    技术杂谈 2023年7月25日
    082
  • 使用Supervisor监控mysql

    监控文件配置: [program:mysql] ; 管理的子程序名字,要和项目有关联,不能乱写command=/usr/local/mysql/bin/mysqld_safe &#…

    技术杂谈 2023年7月11日
    068
  • Random,ThreadLocalRandom,SecureRandom的几点思考

    Random,ThreadLocalRandom,SecureRandom是Java中的随机数生成器,其中ThreadLocalRandom是jdk7才出现的,是Random的增强…

    技术杂谈 2023年5月31日
    095
  • Prototype原型模式

    定义: prototype pattern是指原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。是一种创建模式。 角色 Prototype(抽象原型类):它是声明克隆方…

    技术杂谈 2023年5月31日
    0109
  • jvm的简介

    什么是jvm? java虚拟机就是二进制字节码的运行环境。我们可以把jvm看做是运行在不同系统上的一个软件应用的计算机,就比如说我们要打开图片,就得用看图软件,或者我们要对文件进行…

    技术杂谈 2023年7月11日
    096
  • python动态网站爬虫实战(requests+xpath+demjson+redis)

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年6月21日
    077
  • 2.数据及其预处理

    数据样本矩阵 一般数据集的构造形式: 一行一样本,一列一特征,以下为一个示例 姓名 年龄 性别 工作经验 月薪 A 22 男 2 5000 B 23 女 3 6000 C 25 男…

    技术杂谈 2023年7月10日
    062
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球