棧 155. 最小棧 設計一個支持 push ,pop ,top 操作,並能在常數時間內檢索到最小元素的棧。 push(x) —— 將元素 x 推入棧中。 pop() —— ...
. 刪除排序鏈表中的重復元素 存在一個按升序排列的鏈表,給你這個鏈表的頭節點 head ,請你刪除所有重復的元素,使每個元素 只出現一次 。返回同樣按升序排列的結果鏈表。 . 刪除排序鏈表中的重復元素 II 給定一個排序鏈表,刪除所有含有重復數字的節點,只保留原始鏈表中 沒有重復出現 的數字。 . 反轉鏈表 反轉一個單鏈表。 思路一:迭代法: 思路二:遞歸 鍛煉遞歸思維 : 首先給出函數定義,如 ...
2021-08-08 15:40 0 139 推薦指數:
棧 155. 最小棧 設計一個支持 push ,pop ,top 操作,並能在常數時間內檢索到最小元素的棧。 push(x) —— 將元素 x 推入棧中。 pop() —— ...
二叉樹的遍歷 遞歸: 144. 二叉樹的前序遍歷 前序非遞歸: 94. 二叉樹的中序遍歷 中序非遞歸: 145. 二叉樹的后序遍歷 后序非遞歸: 注意:如果非遞歸解法難 ...
推薦學習labuladong大佬的動態規划系列文章:先弄明白什么是動態規划即可,不必一次看完。接着嘗試自己做,沒有思路了再回過頭看相應的文章。 動態規划一般可以由 遞歸 + 備忘錄 一步步轉換而來, ...
上圖表示常用的二分查找模板: 第一種是最基礎的,查找區間左右都為閉區間,比較后若不等,剩余區間都不會再包含mid;一般在不需要確定目標值的邊界時,用此法即可。 第二種查找區間為左閉右開,要確定 ...
對單鏈表進行反轉有迭代法和遞歸法兩種。 1. 迭代法 迭代法從前往后遍歷鏈表,定義三個指針分別指向相鄰的三個結點,反轉前兩個結點,即讓第二個結點指向第一個結點。然后依次往后移動指針,直到第二個結點為空結束,再處理鏈表頭尾即可。 2. 遞歸 ...
Medium! 題目描述: 給定一個鏈表和一個特定值 x,對鏈表進行分隔,使得所有小於 x 的節點都在大於或等於 x 的節點之前。 你應當保留兩個分區中每個節點的初始相對位置。 示例: 解題思路: 這道題要求我們划分鏈表,把所有小於給定值的節點都移到前面,大於該值的節點順序不變 ...
面試常考的一題,比較繁瑣。包含了鏈表中點,反轉鏈表,合並鏈表這三大常考的子問題。 代碼還不是最優的,后續會更新一個更清晰,簡練的版本。 End ...
鏈表 套路總結 1.多個指針 移動 2.虛假鏈表頭:凡是有可能刪除頭節點的都創建一個虛擬頭節點,代碼可以少一些判斷(需要用到首部前一個元素的時候就加虛擬頭指針) 3.快慢指針 如leetcode142 快慢指針找鏈表環的起點 19. 刪除鏈表的倒數第N個節點 題目要求:只掃描一遍 ...