假设有一个未排序的数组。我们必须检查该数组中是否存在长度为3的递增子序列。
正式的功能应该-
如果存在i,j,k,则返回true
因此,如果0≤i <j <k≤n-1,则arr [i] <arr [j] <arr [k]否则返回false。
为了解决这个问题,我们将遵循以下步骤-
小:=无限,大:=无限
对于数组中的每个元素
如果i <=小,则小:= i,否则,当i <=大,则大:= i,否则返回true
返回假
让我们看下面的实现以更好地理解-
class Solution(object): def increasingTriplet(self, nums): small,big = 100000000000000000000,100000000000000000000 for i in nums: if i <= small: small = i elif i<=big: big = i else : return True return False ob1 = Solution()print(ob1.increasingTriplet([5,3,8,2,7,9,4]))
[5,3,8,2,7,9,4]
输出结果
True