清華學生總結的算法學習方法
瀏覽:2147
一、事半功倍
二、經歷描述
-
教授理論知識(一),小作業,用于鞏固理論知識(一) -
教授理論知識(二),小作業,用于鞏固理論知識(二) -
大作業,編程實踐,需要用到理論知識(一)與(二) -
教授理論知識(三),小作業,用于鞏固理論知識(三) -
教授理論知識(四),小作業,用于鞏固理論知識(四) -
大作業,編程實踐,需要用到理論知識(三)與(四) -
項目作業,編程實踐,多人協作,需要用到理論知識(一)~(四)+ hits -
重復上述過程,一般重復4~6次,中間穿插期中考試,最后期末考試
-
理解待解決的問題 -
學習部分理論知識 -
動手實踐嘗試解決,無法解決,回到1或2 -
成功解決抓緊總結
三、經驗總結
-
越早適應“迭代”學習法對你越有利。 -
大多數時候你沒有足夠的時間來“學完再做”。 -
若你在“迭代”學習過程產生的焦慮、沮喪、挫敗感,請及時排解 -
排解后記得回來,堅持才能勝利!
四、個人建議
-
其實學習《數據結構》時你已經學了不少經典算法 -
帶著學到的算法設計策略回頭總結、歸納經典算法 -
可以在紙上畫畫設計策略與經典算法的關系圖,是一對一,一對多,還是多對多 -
這個階段的重點,在腦中建立常用算法設計策略與經典算法的對應關系 -
如果個人能力不錯,可考慮與《數據結構》第三次迭代同時進行
-
大量的解決問題,在此過程中總結出你個人解決問題的流程 -
可以針對某項設計策略進行專項訓練,但要考慮實際需求——工作、面試、競賽 -
此階段的重點就是解決《數據結構》第三次迭代中的隱藏關卡,同時培養解決問題的感覺、自覺 -
別忘了“迭代”學習方法 -
大量訓練、多與他人探討、擴展自己的思路并及時總結
-
這個階段要做的事本應該融入到前兩次迭代中的,甚至更早比如在離散數學課上 -
之所以單抽出來是因為有太多的人因這個“攔路虎”而徘徊在“算法設計”的大門前遲遲不敢踏入半步,更有甚者轉身離開了就再也沒回來...... -
如果你不擅長數學,或不打算從事科研及對數學要求較高的工作,可以跳過 -
對于打算從事科研及對數學要求較高的工作的人來說,這也可以算迂回策略 -
可以先從教材對經典算法的證明學習,然后重走第二次迭代實踐(這才是看CLRS的時機) -
這個階段的重點,有意識地運用數學來決定設計策略的選取
五、追求目標
技術鄰APP
工程師必備
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















