Judie 发表于 2023-6-4 13:28:05

【朱迪的LeetCode刷题笔记】】334. Increasing Triplet Subsequence #Medium #Python

本帖最后由 Judie 于 2023-6-4 11:24 编辑

Given an integer array nums, return true if there exists a triple of indices (i, j, k) such that i < j < k and nums<i> < nums < nums. If no such indices exists, return false.

Example 1:
Input: nums =
Output: true
Explanation: Any triplet where i < j < k is valid.

Example 2:
Input: nums =
Output: false
Explanation: No triplet exists.

Example 3:
Input: nums =
Output: true
Explanation: The triplet (3, 4, 5) is valid because nums == 0 < nums == 4 < nums == 6.

Constraints:
1 <= nums.length <= 5 * 105
-231 <= nums<i> <= 231 - 1

Follow up:
Could you implement a solution that runs in O(n) time complexity and O(1) space complexity?

Judy
Python taught by Mike

class Solution(object):
    def increasingTriplet(self, nums):
      """
      :type nums: List
      :rtype: bool
      """
      i = None
      j = None
      for n in nums:
            if i == None or n < i:
                i = n
            elif j == None:
                if n > i:
                  j = n   
                else:
                  continue
            elif n > j:
                return True   
            elif i < n < j:
                j = n
      return False


Sol1
Python
https://leetcode.com/problems/increasing-triplet-subsequence/solutions/78995/python-easy-o-n-solution/?envType=study-plan-v2&envId=leetcode-75
def increasingTriplet(nums):
    first = second = float('inf')
    for n in nums:
      if n <= first:
            first = n
      elif n <= second:
            second = n
      else:
            return True
    return False

sfqxx 发表于 2023-6-4 13:30:58

{:10_275:}
页: [1]
查看完整版本: 【朱迪的LeetCode刷题笔记】】334. Increasing Triplet Subsequence #Medium #Python