演算法初階1 演算法概述

2022-07-20 16:57:09 字數 1271 閱讀 7035

-------------------------------天祿貔貅  王冬冬 技術部落格

-------------------------------

1.1什麼是演算法?

字面義:演算法就是用於計算的方法,通過這種方法可以達到預期的結果。

專業定義:演算法是模型分析的一組可行的、確定的和有窮的規則。

從程式設計角度:演算法由一系列求解問題的指令構成,能夠根據規則的輸入在有限的時間內獲得有效的輸出結果。

演算法的五個特徵:有窮性、確切性、輸入、輸出、可行性。

1.2 演算法的發展歷史

周髀算經——>9

世紀「演算法」——

>

歐幾里得演算法(碾轉相除法)

1.3 演算法的分類

按照應用來分類:基本演算法、資料結構相關的演算法、幾何演算法、圖論演算法、規劃演算法、數值分析演算法、加密/

解密演算法、排序演算法、查詢演算法、並行演算法和數論演算法等

按照結果的確定性分類:確定性演算法和非確定性演算法

按照演算法的思路分類:遞推演算法、遞迴演算法、窮舉演算法、貪婪演算法、分治演算法、動態規劃演算法和迭代演算法

1.4 演算法相關概念的區分

1.演算法與公式的關係:公式是一種演算法,但演算法絕不完全等於公式,演算法的形式可以更複雜,解決的問題更廣泛

2.演算法與程式的關係:學習一門程式語言很容易,正確合理的運用演算法來編寫卻是很難的

3.演算法與資料結構的關係:資料結構是資料的組織形式,可以用來表徵特定的物件資料,演算法往往依賴某種資料結構,資料結構+演算法+

程式語言=程式

1.5 演算法的表示

自然語言表示、流程圖表示、n-s

圖表示和偽**表示

1.6 演算法的效能評價

時間複雜度:演算法執行所需要耗費的時間,時間越短演算法越好。可以對演算法**進行評估,從而得到時間複雜度

空間複雜度:演算法程式在計算機中執行所需要消耗的儲存空間。可分為

(1)程式儲存所需要的儲存大小,也就是程式的大小

(2)程式在執行過程中所需要消耗的儲存空間資源,例如程式執行過程中中間變數資源

-------------------------------天祿貔貅

王冬冬 技術部落格

-------------------------------

1 演算法概述

1.演算法概述 演算法與程式 演算法複雜性分析 明天就要考試了,不知道是否能來得及,我在想反正都要研究演算法的,比如現在開始弄了,考試只是研究演算法路上的乙個小測試而已,廢話不說,開始吧 演算法與程式 演算法是什麼,很多人能大概feel到演算法是什麼,但是要很準確的說出來,有難以啟齒,書上是這麼概述...

演算法總結 1 演算法概述

演算法 演算法 algorithm 在thomas h.cormen書中的定義是求解良說明的計算問題的工具。這裡提到的良說明就是完全符合iso標準而不存在任何歧義的說明。一般來說,問題陳述說明了期望的輸入和輸出。演算法則是描述乙個特定的過程來實現該輸入 輸出的關係。進入例子 演算法好比是菜譜,我們的...

1演算法的概述

演算法 algorithm 是指解題方 而完整的描述,是一系列解決問題的清晰指令,演算法代表著用系統的方法描述解決問題的策略機制。也就是說,能夠對一定規範的輸入,在有限時間內獲得所要求的輸出。如果乙個演算法有缺陷,或不適合於某個問題,執行這個演算法將不會解決這個問題。不同的演算法可能用不同的時間 空...