Python 中的遞增三元子序列
假設有一個無序陣列。我們必須檢查該陣列中是否存在長度為 3 的遞增子序列。
形式上,函式應該 −
- 如果存在 i、j、k
- 使得 arr[i] < arr[j] < arr[k],且 0 ≤ i < j < k ≤ n-1,則返回 true,否則返回 false。
為了解決此問題,我們將按照以下步驟操作 −
- small := 無窮大,big := 無窮大
- 對於陣列中的每個元素 i
- 如果 i <= small,則 small := i,否則當 i <= big 時,則 big := i,否則返回 true
- 返回 false
讓我們看看以下實現以獲得更好的理解 −
示例
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
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP