Python|Leetcode《334》|递增的三元子序列

简介: Python|Leetcode《334》|递增的三元子序列

一、题目描述

题目:递增的三元子序列

难度:中等

地址:《递增的三元子序列》

描述:给你一个整数数组 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

解释:不存在满足题意的三元组


示例3

输入:nums = [2,1,5,0,4,6]

输出:true

解释:三元组 (3, 4, 5) 满足题意,因为 nums[3] == 0 < nums[4] == 4 < nums[5] == 6


提示:image.png


image.pngimage.pngimage.png

二、题目解析

注:本题博主乍一看以为是连续的递增序列(如果是会简单许多),实则不然,这里要注意。


题中需要我们找到整个数组中是否含有递增的三元子序列,解题思想如下:


1.定义前两个数为极限(或者超过约束范围的数)

2.遍历数组中的所有数据使用三重判断进行三个数的判断(if…elif…else)

1.if: 如果遍历到的数字小于第一个数字,则替换第一个数字;

2.elif:如果遍历到的数字大于第一个数字且比第二个数字小,则替换第二个数字(任何一次替换都证明此时已经有了递增的2元子序列),否则第二个数永远为inf

3.else:如果遍历到的数字大于第一个和第二个数字,证明此时存在递增的3元子序列。


三、解题代码

解法(一)

class Solution:
    def increasingTriplet(self, nums: List[int]) -> bool:
        if len(nums) < 3:
            return False
        first = second = float('inf')
        for i in nums:
            if i <= first:
                first = i
            elif i <= second:
                second = i
            else:
                return True
        return False
目录
打赏
0
0
0
0
16
分享
相关文章
Python入门:6.深入解析Python中的序列
在 Python 中,**序列**是一种有序的数据结构,广泛应用于数据存储、操作和处理。序列的一个显著特点是支持通过**索引**访问数据。常见的序列类型包括字符串(`str`)、列表(`list`)和元组(`tuple`)。这些序列各有特点,既可以存储简单的字符,也可以存储复杂的对象。 为了帮助初学者掌握 Python 中的序列操作,本文将围绕**字符串**、**列表**和**元组**这三种序列类型,详细介绍其定义、常用方法和具体示例。
Python入门:6.深入解析Python中的序列
时间序列结构变化分析:Python实现时间序列变化点检测
在时间序列分析和预测中,准确检测结构变化至关重要。新出现的分布模式往往会导致历史数据失去代表性,进而影响基于这些数据训练的模型的有效性。
561 1
6种有效的时间序列数据特征工程技术(使用Python)
在本文中,我们将探讨使用日期时间列提取有用信息的各种特征工程技术。
232 1
|
4月前
|
Python 序列类型(1)
【10月更文挑战第8天】
66 1
Python 序列类型(2)
【10月更文挑战第8天】
42 0
Python 序列类型(2)
时间序列特征提取:从理论到Python代码实践
时间序列是一种特殊的存在。这意味着你对表格数据或图像进行的许多转换/操作/处理技术对于时间序列来说可能根本不起作用。
108 1
时间序列特征提取:从理论到Python代码实践
Python元组之不可变序列的奥秘与应用方式
Python 中的元组(Tuple)是一种有序的、不可变的数据结构,它是序列的一种特殊形式,就像一个固定大小的盒子,一旦放入物品就无法更换或移除。 元组可以包含任何类型的数据,如数字、字符串甚至是其他元组。 相比列表,元组在很多场景下提供了更高效、安全的选择。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等