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

重念一次早該補起來的「資料結構與演算法」。這篇筆記下演算法設計的基本,並實際寫一個簡易的判斷兩個 Array 是否存在交集 Intersection 當做練習。

notes-theideaofalgorithm-javascript-1


課程相關資訊

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

本篇範圍:Chapter 4

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


內容

先用「人腦思考的觀點想一下」再來設計你的演算法。不要因為電腦辦的到一些暴力運算,所以你就這樣做。

Implement some human thinkings in algorithms. Do not make the computer do dumb calculations or stupid things just because computer can do it.

Counter

主要用於「記錄出現次數」。它是藉由創造一個 Hashtable 來記錄 ( key -> 出現次數 )。這是一個有效將 O(N^2) 變成 O(N) 的方法。


程式碼

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


系列文章

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

    延伸閱讀