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

1-1 計(jì)算機(jī)的算法

在科技時(shí)代,我們常使用計(jì)算機(jī)解決某些問(wèn)題。為了讓計(jì)算機(jī)可以了解人類(lèi)的思維,我們將解決問(wèn)題的方法用特定方式告訴計(jì)算機(jī),這個(gè)特定方式就是計(jì)算機(jī)可以理解的程序語(yǔ)言。計(jì)算機(jī)會(huì)依據(jù)程序語(yǔ)言的指令,一步一步完成工作。

當(dāng)使用程序語(yǔ)言解決工作上的問(wèn)題時(shí),我們需要知道應(yīng)該使用什么方法,可以更快速、有效地完成工作。

例如,有一系列數(shù)字,我們想要找到特定數(shù)字,是否有更好的方法?

假設(shè)我們要找的數(shù)字是3,如果我們從左到右找尋,需要找尋5次;如果我們從中間找尋,只要1次就可以找到。其實(shí)找尋的方法,就是算法

例如,有一系列數(shù)字,我們想將這一系列數(shù)字從小到大排序。

為了完成上述從小到大將數(shù)字排列,也有許多方法,這些方法也可以稱(chēng)為算法

目前世界公認(rèn)的第一個(gè)算法是歐幾里得算法,出現(xiàn)在歐幾里得(Euclid,公元前325—前265年)所著的《幾何原本》(古希臘語(yǔ):),這是一本數(shù)學(xué)著作,也是現(xiàn)代數(shù)學(xué)的基礎(chǔ)。著作共有13卷,在第8卷中就有討論歐幾里得算法,這個(gè)算法又稱(chēng)輾轉(zhuǎn)相除法歐幾里得古希臘數(shù)學(xué)家,又被稱(chēng)為幾何學(xué)之父

現(xiàn)代美國(guó)有一位非常著名的計(jì)算機(jī)科學(xué)家唐納德·歐文·克努特(Donald Ervin Knuth,1931—),他是美國(guó)斯坦福大學(xué)榮譽(yù)教授退休,1972年圖靈獎(jiǎng)(Turing Award)得主,在他所著的《計(jì)算機(jī)程序設(shè)計(jì)的藝術(shù)》(The Art of Computer Programming)中,對(duì)算法(algorithm)做了特征歸納:

(1)輸入:一個(gè)算法必須有0個(gè)或更多的輸入。

(2)有限性:一個(gè)算法的步驟必須是有限的。

(3)明確性:算法描述必須是明確的。

(4)有效性:算法的可行性可以獲得正確的執(zhí)行結(jié)果。

(5)輸出:輸出就是計(jì)算結(jié)果,一個(gè)算法必須要有1個(gè)或更多的輸出。

 唐納德的著作The Art of Computer Programming曾被《科學(xué)美國(guó)人》(Scientific American)雜志評(píng)估為與愛(ài)因斯坦的《相對(duì)論》并論的20世紀(jì)最重要的12本物理科學(xué)專(zhuān)論之一。

所以我們也可以將算法過(guò)程與結(jié)果歸納做下列的定義:

輸入 + 算法 = 輸出
主站蜘蛛池模板: 疏附县| 额济纳旗| 宝鸡市| 高阳县| 临海市| 石家庄市| 南投县| 黄大仙区| 陈巴尔虎旗| 会同县| 凤山市| 平塘县| 嘉鱼县| 桐庐县| 凤阳县| 闸北区| 长白| 岑巩县| 廊坊市| 天峻县| 蕲春县| 家居| 新和县| 嵊泗县| 勐海县| 台州市| 剑河县| 忻州市| 吉首市| 拉萨市| 额尔古纳市| 呼图壁县| 沈丘县| 利辛县| 米林县| 陇西县| 利津县| 府谷县| 德惠市| 瑞金市| 阳山县|