今天內容簡單不做記錄,分享乙個leetcode演算法題
給定乙個整數序列:a1, a2, …, an,乙個132模式的子串行 ai, aj, ak 被定義為:當 i < j < k 時,ai < ak < aj。設計乙個演算法,當給定有 n 個數字的序列時,驗證這個序列中是否含有132模式的子串行。
示例1:
輸入: [1, 2, 3, 4]
輸出: false
解釋: 序列中不存在132模式的子串行。
示例 2:
輸入: [3, 1, 4, 2]
輸出: true
解釋: 序列中有 1 個132模式的子串行: [1, 4, 2].
示例 3:
輸入: [-1, 3, 2, 0]
輸出: true
解釋: 序列中有 3 個132模式的的子串行: [-1, 3, 2], [-1, 3, 0] 和 [-1, 2, 0].
問題歸類:棧
解題**
class
solution
:def
find132pattern
(self, nums: list[
int])-
>
bool
: stack =
_min =
float
('-inf')if
len(nums)
<3:
return
false
# 保持stack中的元素一直是降序排列
for i in
range
(len
(nums)-1
,-1,
-1):
if nums[i]
< _min:
return
true
while stack and nums[i]
> stack[-1
]:_min = stack.pop())
return
false
python 閉包學習day1
函式的引數 閉包 建立閉包,實際上是得到了內部函式的引用,呼叫閉包,實際上是呼叫的內層函式。在閉包內部去修改使用到外部函式的變數,需要在內部函式中使用nonlocal關鍵字進行宣告 nonlocal var 裝飾器 定義裝飾器1 defcheck1 fn1 def inner1 print 登陸驗證...
資料結構 day1
資料結構往往跟演算法有很大關係 ep1 圖書館 ep2 遞迴函式很有可能導致記憶體溢位 因為每一次遞迴都在記憶體裡新建了乙個 程式 如果遞迴次數過多,那麼這個程式占用的空間會很恐怖 ep3 多項式 正常演算法和秦九韶演算法的比較。秦九韶演算法有效的減少了乘法的量級 clock 獲得從程式開始到呼叫這...
資料庫學習Day1
資料庫 mysql 首先確定在環境變數path裡是否有mysql路徑 開啟命令列cmd 輸入mysql u root p 密碼 輸入show databases 顯示資料庫 輸入 exit 退出資料庫 使用mysqladmin命令 mysqladmin u root p舊密碼 password 新密...