算法看懂了,不一定能夠寫出了
算法能夠寫出來,不一定能夠講出來
算法能夠講出來,并且寫出來,并且舉一反三,說明是真的懂了。
看別人的算法寫出來的代碼,永遠不是自己的代碼,只能算抄襲。。。。
Step1.
沒有算法基礎的同學,尤其連數組、堆棧、二叉樹的遍歷,幾個基本排序算法代碼都寫不出來的同學,別看《算法導論》,等于小學數學沒學好,看大學數學。
Step1-Step2:在這期間推薦的書有《算法》,可以通過讀書、做題、刷OJ來提高
Step2
瀏覽《算法導論》目錄發現一半以上完全沒見過,在上面的基礎上去OJ練一兩個月,把網絡流基本算法步驟、凸包、并查集、線段樹、貪心動態規劃、雙指針思想,掃描線思想,Trie樹,逆序數以及基本數論算法知識補上再說
Step3
如果能夠過算法面試關,并且有興趣,有時間,再啃《算法導論》,當然最基本的高等數學、矩陣、離散數學知識要有。
補充step2的步驟,在step2這個階段是打基礎最關鍵的時期,分為算法入門區和算法進階區。。。。。
算法入門區的標準,鏈表reverse以及數組的原地reverse無腦寫出,快速排序和歸并排序無腦寫出,熟練運用快速排序和歸并排序的思想。二分法問題熟練寫出,BFS和DFS熟練寫出,熟練使用隊列,哈希表,堆等數據結構,最后達到Leetcode上medium題無壓力寫出。
補充:做算法題一定要歸類,歸的類要具有一般性。另外程序寫出來,一定要先自己檢查一遍,就像交卷子之前檢查下數學試卷一樣,另外推薦Leetcode這種OJ,給出函數讓你寫,可以把主要精力放在設計算法上,而不用去處理IO之類的問題。
但是IO之類的問題可以在杭電等OJ上練熟,因為部分公司筆試還有打比賽是需要掌握這個的。
Tips:學習算法可以提高邏輯思維能力,對任何人都是有益的。而學習基礎算法肯定對學習相關領域特點算法是有促進作用的。
-
算法
+關注
關注
23文章
4636瀏覽量
93521
發布評論請先 登錄
相關推薦
華為云 Flexus X 實例部署安裝 Jupyter Notebook,學習 AI,機器學習算法

NPU與機器學習算法的關系
AIGC算法解析及其發展趨勢
人工智能、機器學習和深度學習存在什么區別

LIBS結合機器學習算法的江西名優春茶采收期鑒別

評論