程序
程序=數(shù)據(jù)機構(gòu)+算法
算法
- 算法是解一確定類問題的任意一種特殊的方法
- 算法是一組有窮的規(guī)則豆茫,它規(guī)定了解決某一特定類型
問題的一系列運算 - 算法包括數(shù)值計算和比較判斷
算法的基本特點
確定性腥放、能行性、輸入、輸出胰锌、有窮性
- 確定性: 算法的每種運算必須要有確切的定義治泥,不能有二
義性。 - 能行性:算法中有待實現(xiàn)的運算都是基本的運算筏勒,原理上
每種運算都能由人用紙和筆在有限的時間內(nèi)完成移迫。 - 輸入:每個算法有0個或多個輸入。這些輸入是在算法開
始之前給出的量管行,取自于特定的對象集合——定
義域(或值域) - 輸出:一個算法產(chǎn)生一個或多個輸出厨埋,這些輸出是同輸
入有某種特定關(guān)系的量。 -
有窮性:一個算法總是在執(zhí)行了有窮步的運算之后終止
算法復(fù)雜性分析
- 計算復(fù)雜性體現(xiàn)在算法占用機器空間資源和時間資源
的情況捐顷,是關(guān)于選定模型下輸入數(shù)據(jù)規(guī)模的函數(shù)揽咕。 - 能編制出能夠反映算法在最好悲酷、平均、最壞情況
下工作的數(shù)據(jù)配置亲善。 - 事前分析:通過對算法執(zhí)行性能的理論分析设易,試圖得出關(guān)于
算法執(zhí)行特性的一種形式描述,以“理論上”衡
量算法的“好壞” - 事后分析:將算法編制成程序后實際放到計算機上運行蛹头,收
集其執(zhí)行時間和空間占用等統(tǒng)計資料顿肺,進(jìn)行分析
判斷