重念一次早該補起來的「資料結構與演算法」。這篇筆記下 Pointer 指標的用法,並搭配幾個練習。
課程相關資訊
[連結]:https://hiskio.com/courses/572/lectures/29784
本篇範圍:Chapter 4
請注意:本系列文章為個人對應課程的消化吸收後,所整理出來的內容。換言之,並不一定會包含全部的課程內容,也有可能會添加其他資源來說明。
內容
Pointer
使用時,會需要是一個「有排序的陣列」。一般來說會有「兩個指標作用在同一個陣列上」,或是「兩個指標分別作用在個別的陣列」兩種組合。前者所提及的 Binary Search 就是一種運用 pointer 來取得結果的一種方式。
經由這樣的操作,可有效將時間複雜度由 O(n^2 以上) -> O(n)
Pointer 和 Counter 的區別
指針是用於「快速存取某個」值或「指向某個記憶體位置」。一般來說會用於 linked 資料或是樹狀資料
計數器則是「追蹤和計數特定事件或條件出現次數」。一般來說會在迴圈操作中出現。