1. 程式人生 > >資料結構與演算法(一)---重點複習知識

資料結構與演算法(一)---重點複習知識

吐槽

國慶假期第二天,去實驗室開門,給貓貓鏟醜醜,然後給她換貓糧,換水,喂這貨吃的emmmmmm,然後今天就把之前在極客時間上買的資料結構與演算法的專欄好好看下,然後總結下。

為什麼要學習資料結構和演算法?

之前自己大二時候把這個學校的課堂過了一遍,當時老師要求的是翻轉課堂,自己也那段時間把要掌握的都掌握了,基本的演算法和思想也大概瞭解,但是發現學長們他們去面試的時候,自己看下題,感覺又忘的差不多了,所以,我覺得自己每週花點時間把這塊重新複習下。
我覺得學習資料結構與演算法的原因有如下:

  • 面試,面試,面試,這個是短期的最最總要的原因,雖然這個理由很現實,但是確實是自己想去大的公司必備的技能點
  • 做個真正的程式猿,不想一輩子都是調介面啊,用框架,就算是用框架也要知道這個框架到底是底層用的演算法是什麼,知道應該用 ArrayList,還是 Linked List這些
  • 想最後自己寫出自己的框架給別人用//雖然現在還是達不到,但是還是想啊
  • 演算法,是一種解決問題的思路和方法,有機會應用到生活和事業的其他方面。
  • 這也是程式猿的內功了emmmmmmmmmmmm

資料結構與演算法的重點

之前沒學資料結構與演算法的時候,感覺各種演算法這輩子都學不完,但是大二上完這門課的時候,還是覺得其實重要的就幾類演算法思想,其他太偏僻的也遇不到。
在這裡插入圖片描述

覺得重點就這些
10 個數據結構:陣列、連結串列、棧、佇列、散列表、二叉樹、堆、跳錶、圖、Trie 樹
10個演算法:遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、動態規劃、字串匹配

總結

自己以後每週都會抽出時間去看資料結構與演算法的,並且寫總結,然後去刷題。