官术网_书友最值得收藏!

2.7 算法:程序解決問題的處理步驟

編程是為了讓計算機幫助我們解決各種各樣的問題,任何問題的解決都有一定的方法和步驟,計算機解決問題的處理步驟我們稱之為算法

在計算機編程的過程中,提到“算法”總是讓人覺得很深奧,很難理解到底什么是算法?以及算法在程序設計過程中起到了什么作用?其實在現實生活中我們經常會用“算法”的思想在解決一些問題,最常見的就是根據菜譜做菜。

菜譜記錄了做出各色各樣美味菜品的方法步驟。比如制作紅燒肉的菜譜,會把制作紅燒肉所必需的材料及用量都標注清楚,并且把烹制的過程、每一步需要的時間等都詳細記錄下來。任何人只要完全按照菜譜的方法和步驟去做,就一定能烹制出美味的紅燒肉。而“算法”就是能讓程序員編寫出可靠、高效的計算機程序的“菜譜”(見圖2.5)。

圖2.5 算法就是計算機解決問題的具體步驟

編程是為了讓計算機解決特定的問題,編程之前首先需要明確計算機解決該問題的具體步驟,這個處理步驟就是編寫該程序所需要的“算法”。解決一個問題可以用不同的方法和步驟,因而針對同一問題的算法也有多種(見圖2.6)。而編寫程序就是通過某一種程序設計語言(比如C語言)對算法的具體實現。算法獨立于任何程序設計語言,同一算法可以用不同的程序設計語言來實現(見圖2.7)。

圖2.6 對于同一個問題,往往會有不同的算法

圖2.7 同一算法可以用不同的程序設計語言來編程實現

主站蜘蛛池模板: 宜兰县| 于田县| 信宜市| 桃源县| 疏勒县| 海城市| 安化县| 吴川市| 白山市| 昭平县| 二连浩特市| 仁寿县| 东安县| 五莲县| 喀喇| 布尔津县| 清镇市| 华安县| 师宗县| 金塔县| 明光市| 凌海市| 安泽县| 资兴市| 新安县| 金门县| 安图县| 昆明市| 永丰县| 新郑市| 浮梁县| 庄浪县| 阆中市| 晋江市| 耒阳市| 乌拉特中旗| 怀来县| 惠安县| 沂水县| 盈江县| 清徐县|