演算法的學習步驟

2021-06-13 06:14:39 字數 564 閱讀 2779

對於程式設計的初學者,可以先通過簡單的排序演算法了解最簡單的adt(原生資料型別)線性表的常用操作;

然後要重點掌握遞迴技術,包括遞迴和遞推的相互轉換。遞迴技術非常重要,可以通過遞迴技術了解adt棧的操作;

接著學習搜尋法的初步——回溯法,研究經典問題八皇后問題和走迷宮問題,通過這些經典問題了解深度優先搜尋法(dfs)和寬度優先搜尋法(bfs)以及adt棧、adt佇列的操作,要學會利用人工設定堆疊模擬遞迴;

接著可以學習分治法、貪心法這兩種常用的策略,並應用到排序、搜尋等簡單的演算法中;這時再開始學習圖和樹這兩種抽象資料型別就應該沒有什麼難度了。在學習adt圖和adt樹時,要注意結合離散數學中的圖論理論知識和搜尋法中的dfs,bfs方法,要學會將實際問題轉化為圖論模型;

再下去可以學習各種搜尋法的優化演算法,啟發式搜尋、a演算法、a*演算法或界限剪枝法等;然後是網路流演算法,要注意模型的建立;

最後學習最優化問題的解法,包括線性規劃、動態規劃、非線性規劃等演算法策略,這部分內容主要側重模型的建立和分析,演算法本身並沒有難度。這樣基本的演算法就學習完了。

再深入一點可以學習問題的計算複雜性,計算模型,並行演算法,神經網路以及各個領域中的演算法

1 1 演算法學習步驟

學習的過程中首先要注重預習。基礎知識自己預習和檢視。課堂互動,跟著老師一起思考回答問題。課後作業,按照切題方法。異類 不一樣的成功啟示錄 想要精通乙個領域。1 chunk it up 切碎知識點。2 deliberate practicing 刻意練習。3 feedback 反饋,又分為主動反饋和被...

Canny演算法步驟

1.將灰度化 2.將進行高斯濾波 3.將計算梯度值和方向 4.非極大值抑制 5.雙閾值選取 6.邊緣檢測步驟1上來先濾波。理論上將影象梯度幅值的元素值越大,說明影象中該點的梯度值越大,但這不能說明該點就是邊緣。在canny演算法中,非極大值抑制 步驟3 是進行邊緣檢測的重要步驟,通俗意義上是指尋找畫...

LINUX的學習步驟

學習概要 linux的學習步驟 linux安裝 虛擬機器安裝 檔案系統掛載 基本命令使用 檔案操作,目錄管理,許可權管理,壓縮解壓,磁碟管理,系統管理,核心 一 linux的安裝注意 磁碟手工分割槽 可分三個分割槽 root swap linux可以很好的相容windows的檔案系統,上節中講到li...