算法的要素與簡介
算法的要素與簡介
算法是指解題方案的準確而完整的描述,是一系列解決問題的清晰指令,算法代表著用系統(tǒng)的方法描述解決問題的策略機制。以下是由學習啦小編整理關(guān)于什么是算法的內(nèi)容,希望大家喜歡!
算法的特征
一個算法應(yīng)該具有以下五個重要的特征:
有窮性(Finiteness)
算法的有窮性是指算法必須能在執(zhí)行有限個步驟之后終止;
確切性(Definiteness)
算法的每一步驟必須有確切的定義;
輸入項(Input)
一個算法有0個或多個輸入,以刻畫運算對象的初始情況,所謂0個輸入是指算法本身定出了初始條件;
輸出項(Output)
一個算法有一個或多個輸出,以反映對輸入數(shù)據(jù)加工后的結(jié)果。沒有輸出的算法是毫無意義的;
可行性Effectiveness)
算法中執(zhí)行的任何計算步驟都是可以被分解為基本的可執(zhí)行的操作步,即每個計算步都可以在有限時間內(nèi)完成(也稱之為有效性)。
算法的要素
一、數(shù)據(jù)對象的運算和操作:計算機可以執(zhí)行的基本操作是以指令的形式描述的。一個計算機系統(tǒng)能執(zhí)行的所有指令的集合,成為該計算機系統(tǒng)的指令系統(tǒng)。一個計算機的基本運算和操作有如下四類:
1,算術(shù)運算:加減乘除等運算
2,邏輯運算:或、且、非等運算
3,關(guān)系運算:大于、小于、等于、不等于等運算
4,數(shù)據(jù)傳輸:輸入、輸出、賦值等運算
二、算法的控制結(jié)構(gòu):一個算法的功能結(jié)構(gòu)不僅取決于所選用的操作,而且還與各操作之間的執(zhí)行順序有關(guān)。
算法的評定
同一問題可用不同算法解決,而一個算法的質(zhì)量優(yōu)劣將影響到算法乃至程序的效率。算法分析的目的在于選擇合適算法和改進算法。一個算法的評價主要從時間復雜度和空間復雜度來考慮。
時間復雜度
算法的時間復雜度是指執(zhí)行算法所需要的計算工作量。一般來說,計算機算法是問題規(guī)模n 的函數(shù)f(n),算法的時間復雜度也因此記做。
T(n)=Ο(f(n))
因此,問題的規(guī)模n 越大,算法執(zhí)行的時間的增長率與f(n) 的增長率正相關(guān),稱作漸進時間復雜度(Asymptotic Time Complexity)。
空間復雜度
算法的空間復雜度是指算法需要消耗的內(nèi)存空間。其計算和表示方法與時間復雜度類似,一般都用復雜度的漸近性來表示。同時間復雜度相比,空間復雜度的分析要簡單得多。
正確性
算法的正確性是評價一個算法優(yōu)劣的最重要的標準。
可讀性
算法的可讀性是指一個算法可供人們閱讀的容易程度。
健壯性
健壯性是指一個算法對不合理數(shù)據(jù)輸入的反應(yīng)能力和處理能力,也稱為容錯性。
看過“算法的要素”的人還看了:
4.2016工資算法