给你一个整数数组 nums ,判断这个数组中是否存在长度为 3 的递增子序列。

如果存在这样的三元组下标 (i, j, k) 且满足 i < j < k ,使得 nums[i] < nums[j] < nums[k] ,返回 true ;否则,返回 false 。

示例 1:

输入:nums = [1,2,3,4,5]
输出:true
解释:任何 i < j < k 的三元组都满足题意

示例 2:

输入:nums = [5,4,3,2,1]
输出:false
解释:不存在满足题意的三元组

方法1:(贪心)

class Solution {public boolean increasingTriplet(int[] nums) {int n = nums.length;if(n < 3) return false;int first = nums[0], second = Integer.MAX_VALUE;for(int i = 0; i < n; i++) {if(nums[i] > second) return true;else if(nums[i] > first) second = nums[i];else first = nums[i];}return false;}
}

贪心思想:为了找到递增的三元子序列,first 和 second 应该尽可能地小,此时找到递增的三元子序列的可能性更大。

理解:赋初始值的时候,已经满足second > first了,现在找第三个数third
(1) 如果third比second大,那就是找到了,直接返回true
(2) 如果third比second小,但是比first大,那就把second的值设为third,然后继续遍历找third
(3) 如果third比first还小,那就把first的值设为third,然后继续遍历找third(这样的话first会跑到second的后边,但是不要紧,因为在second的前边,老first还是满足的)

递增的三元子序列(来源力扣)相关推荐

  1. 最长递增子序列(力扣)图解

    最长递增子序列(力扣) 原题 题目描述 解题思路 代码 图解 原题 题目链接 题目描述 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度. 子序列 是由数组派生而来的序列,删除(或不删除 ...

  2. 334. 递增的三元子序列(中等 贪心 数组)

    334. 递增的三元子序列 给你一个整数数组 nums ,判断这个数组中是否存在长度为 3 的递增子序列. 如果存在这样的三元组下标 (i, j, k) 且满足 i < j < k ,使得 ...

  3. 334. 递增的三元子序列

    334. 递增的三元子序列 难度:中等 给你一个整数数组 nums ,判断这个数组中是否存在长度为 3 的递增子序列. 如果存在这样的三元组下标 (i, j, k) 且满足 i < j < ...

  4. LeetCode:递增的三元子序列【334】

    LeetCode:递增的三元子序列[334] 题目描述 给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列. 数学表达式如下: 如果存在这样的 i, j, k,  且满足 0 ≤ i ...

  5. 数组题目:递增的三元子序列

    文章目录 题目 标题和出处 难度 题目描述 要求 示例 数据范围 进阶 解法 思路和算法 代码 复杂度分析 题目 标题和出处 标题:递增的三元子序列 出处:334. 递增的三元子序列 难度 6 级 题 ...

  6. LeetCode 每日一题打卡:334.递增的三元子序列

    题目 334.递增的三元子序列 题目大意 给你一个整数数组numsnumsnums ,判断这个数组中是否存在长度为333的递增子序列. 如果存在这样的三元组下标(i,j,k)(i, j, k)(i,j ...

  7. Leetcode 334.递增的三元子序列

    原题链接: Leetcode 334.递增的三元子序列 Given an integer array nums, return true if there exists a triple of ind ...

  8. LeetCode-334. 递增的三元子序列 Python3版本

    334. 递增的三元子序列 给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列. 数学表达式如下: 如果存在这样的 i, j, k,  且满足 0 ≤ i < j < k ...

  9. 【LeetCode】334. 递增的三元子序列

    一.题目 给你一个整数数组 nums ,判断这个数组中是否存在长度为 3 的递增子序列. 如果存在这样的三元组下标 (i, j, k) 且满足 i < j < k ,使得 nums[i] ...

最新文章

  1. Ajax请求中的async:false/true的作用
  2. tableau可视化数据分析60讲(八)-tableau计算函数(重点知识)
  3. boost::multiprecision模块mpfr相关的测试程序
  4. SAP CAM - Cloud Access Manager
  5. 如何理性客观地看待人工智能热潮
  6. 边缘AI研发落地生态挑战调研报告发布
  7. Intellij IDEA 2019中Tomcat的部署
  8. 中国碳酸亚乙酯(EC)(CAS+96-49-1)行业市场供需与战略研究报告
  9. java autointeger_【Java多线程】线程安全的Integer,AutomicInteger
  10. python可执行文件 情人节快乐_各位情人节快乐, Python帮忙撒狗粮, 我连夜做了这个程序!...
  11. 基于视觉的移动平台运动目标检测
  12. Linux 开发应用离线安装
  13. android系统版本命名,安卓历代系统版本命名回顾 你吃过哪些甜点?
  14. Qt深入浅出(一) 从零开始写Qt应用
  15. Apache Log4j使用实例
  16. 更改netbios计算机名,修改你计算机的Netbios名
  17. JAVA我的世界给op_我的世界手机版op指令大全 op指令怎么用
  18. Java NIO(二)缓冲区Buffer
  19. IIS 7.5 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。
  20. 电磁场与电磁波(二、电磁场的基本规律)

热门文章

  1. 做公众号依然可以赚到钱
  2. 全球零碳产业园标准率先发布;黑芝麻智能与江汽集团战略合作 | 美通企业日报...
  3. 理解RabbitMQ中的AMQP模型,知乎上已获万赞
  4. 域名服务是什么意思?
  5. python龙虎榜数据_GitHub - TR678/stock: stock,股票系统。使用python进行开发。
  6. 索尼的hlg是什么_索尼HLG的拍摄使用方法
  7. FFMPEG录制以及推流
  8. 前端vue基于onlyoffice实现在线预览
  9. 基于CNN实现视频动作分类任务
  10. 深圳Java培训学习:Java8.0新特性之Lambda表达式--【千锋】