雙指針問題?so easy!

總綱

雙指針指在遍歷過程中使用兩個指針進行掃描達到目的。大致分爲快慢指針(相同方向)和左右指針(相向方向)。

值得一提的是,左右指針是很多算法的基礎和搭配,如 歸併排序、滑動窗口、字符匹配、單調棧等。

快慢指針

快慢指針一般解決鏈表問題。

指針初始化指向 head,前進時 fast 在前,slow 在後,具體的步幅根據題目決定。

題目舉例

題號 題目 難度
141 環形鏈表 簡單
142 環形鏈表II 中等
劍指14 倒數第k個節點 簡單

左右指針

左右指針主要解決數組/字符串問題。

兩個索引值,一個指向開頭 left = 0,一個指向末尾 right = nums.length - 1。

題目舉例

題號 題目 難度
704 二分查找 簡單
167 兩數之和II 簡單
633 平方數之和 簡單
653 兩數之和IV 簡單
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章