[筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 2

重念一次早該補起來的「資料結構與演算法」。這篇筆記下 Linear Search 和 Binary Search。

notes-theideaofalgorithm-javascript-1


課程相關資訊

[連結]:https://hiskio.com/courses/572/lectures/29766

本篇範圍:Chapter 1 ~ Chapter 3

請注意:本系列文章為個人對應課程的消化吸收後,所整理出來的內容。換言之,並不一定會包含全部的課程內容,也有可能會添加其他資源來說明。


內容

1. 在 JavaScript 中,物件會轉換成 hashtable 的形式儲存。因此,Insert、Removal, Searching 和 Accessing 都是 O(1)
2. Array 的話,push-insert 會是 O(1)、unshift-insert 會是 O(n)、pop-removal 會是 O(1)、shift-removal 會是 O(n)、Searching 會是 O(n)、Accessing 會是 O(1)

Linear Search

Best – O(1)、Worst – O(n)、Avg – O(n/2)

Binary Search

Best – O(1)、Worst – O(log n)、Avg – O(log n)


程式碼

https://github.com/andy922200/hiskio-the-idea-of-algorithm/commit/e858e5a57ae1c515cddeb35e60fefc24d3f6bac6


系列文章

  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 9
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 8
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 7
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 6
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 5
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 4
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 3
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 15
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 14
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 13
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 12
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 11
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 10
  • [筆記] 程式必修課!資料結構與演算法|JavaScript 篇 – 1
  • 按讚加入粉絲團

    延伸閱讀