Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 Triplet Subsequence 증가

<시간/>

정렬되지 않은 배열이 있다고 가정합니다. 그 배열에 길이 3의 증가하는 부분수열이 존재하는지 여부를 확인해야 합니다.

공식적으로 함수는 -

  • i, j, k가 있으면 true를 반환
  • arr[i]

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 작은 :=무한대, 큰 :=무한대
  • 배열
      의 각 요소 i에 대해
    • i <=작으면 small :=i, 그렇지 않으면 i <=크면 big :=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