回覆列表
-
1 # 資料思維
-
2 # Timothy023
演算法會了,又忘了,這是一個很正常的現象。
我初中,高中是搞資訊學競賽的,每年省選之前把一些難一點的資料結構,數論定理什麼的過一遍,但是第二年省選的時候就又忘了。
我覺得最大的原因就是用得少了。一個東西如果不經常是用,很快就會忘記。
但是如果對這種演算法有深入的理解(注意識“理解”,而不是“瞭解”),那麼下次要用的時候,嘗試著自己就推出所需要的演算法。一而再,再而三,就能熟練掌握,並牢牢記住了。
-
3 # 大圓圓愛科研
本人教過《演算法設計與分析》這個課程,教完了以後就再也沒有忘記過。所以一些建議可以給到你。
首先你需要了解演算法的基本原理。
比如說分治策略,就是將原問題分為幾個相同的小問題,然後使用遞迴進行求解,這些小問題合併成整個大問題。
再比如最優選擇演算法,和分治法類似原問題分為幾個小問題,但是這結個小問題是相關的,每次計算都在前一步的最優解基礎上來獲取當前的最優解,最後獲取原問題的最優解。
貪心演算法又和最優選擇演算法不一樣,貪心演算法也是建立在前面步驟基礎之上,但是貪心演算法只看到當前最優解,因此不能回溯。
這只是我舉的幾個例子。自學演算法的時候首先不要過分拘泥於演算法的實現,而是要從宏觀的角度先分析演算法的核心思想,並且對比不同演算法的區別。這樣就不會忘記。至於具體實現方法需要靠你個人的程式設計能力和長時間的聯絡才能完成的。如果是準備面試可以考慮被相關程式碼。
熟練掌握工作中常用到的,不常用的知道原理即可,需要用的時候能很快上手。
而且現在都有成熟的演算法包,不需要自己去寫。