《資料結構與演算法之美》為什麼要學習資料結構和演算法 (讀後感)

JeffreyBool發表於2019-04-20

一、資料結構和演算法是什麼

  1. 資料結構是指一組資料的儲存結構
  2. 演算法就是運算元據的方法
  3. 資料結構和演算法是相輔相成的,資料結構是為演算法服務的,而演算法要作用在特定的資料結構之上

二、學習的重點在什麼地方

資料結構和演算法解決的是如何更省、更快地儲存和處理資料的問題,因此,我們就需要一個考量效率和資源消耗的方法,這就是複雜度分析方法。在學習資料結構和演算法的過程中,要學習它的「來歷」、「自身的特點」、「適合解決的問題」以及「實際的應用場景」。

  1. 資料結構和演算法學習的精髓-複雜度分析
  2. 最常用的、最基礎的資料結構:陣列、連結串列、棧、佇列、雜湊表、二叉樹、堆、跳錶、圖、Trie 樹
  3. 最常用的演算法:遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、回溯演算法、動態規劃、字串匹配演算法.

三、為什麼要學習

  1. 作為一名程式設計師,我覺得這個是基本功,就好比建房子一樣,地基一定要牢固
  2. 現在有如此多的開源專案,人們往往開發中只是照搬,除錯,整合,然後很少會去注意效能和優化方面,慢慢的也就成了CRUD boy
  3. 演算法提供的是一種思想,這個思想真的可以讓你超神,讓你對待問題有著獨特的見解,我覺得這個才是最重要的。不再是原來的,沒有思考
  4. 資料結構作為cs的基本專業,並且貫穿整個cs學習生涯,在cs方面的研究還是有很大的實用價值。
    資料結構與演算法的意義?
  5. 根據我個人多年的開發經驗總結: 演算法和資料結構其實就是程式碼和機器的互動,怎麼才能寫出機器執行效率更快丶更省的程式碼就是我們學習的主要目的.
本作品採用《CC 協議》,轉載必須註明作者和本文連結

by JeffreyBool blog :point_right: link

相關文章