⑴ 計算機科學的「兩本聖經」是什麼
科曼的《演算法導論》和高德納的《計算機程序設計藝術》被稱為計算機科學的兩本經典著作,被業界戲稱為「兩本聖經」
科曼的《演算法導論》這本書深入淺出,全面地介紹了計算機演算法。對每一個演算法的分析既易於理解又十分有趣,並保持了數學嚴謹性。涵蓋的內容有:演算法在計算中的作用,概率分析和隨機演算法的介紹。
《演算法導論》書中專門討論了線性規劃,介紹了動態規劃的兩個應用,隨機化和線性規劃技術的近似演算法等,還有有關遞歸求解、快速排序中用到的劃分方法與期望線性時間順序統計演算法,以及對貪心演算法元素的討論。
高德納的《計算機程序設計藝術》這本書結合大量數學知識,分析不同應用領域中的各種演算法,研究演算法的復雜性,即演算法的時間、空間效率,探討各種適用演算法等,其理論和實踐價值得到了全世界計算機工作者的公認。
(1)介紹計算機演算法的文章擴展閱讀
《演算法導論》自第一版出版以來,已經成為世界范圍內廣泛使用的大學教材和專業人員的標准參考手冊。本書全面論述了演算法的內容,從一定深度上涵蓋了演算法的諸多方面,同時其講授和分析方法又兼顧了各個層次讀者的接受能力。
《演算法導論》所有演算法都是用英文和偽碼描述,使具備初步編程經驗的人也可讀懂。全書講解通俗易懂,且不失深度和數學上的嚴謹性。第二版增加了新的章節,如演算法作用、概率分析與隨機演算法、線性編程等,幾乎對第一版的各個部分都作了大量修訂。
《計算機程序設計藝術》書中引入的許多術語、得到的許多結論都變成了計算機領域的標准術語和被廣泛引用的結果。另外,作者對有關領域的科學發展史也有深入研究,因此本書介紹眾多研究成果的同時,也對其歷史淵源和發展過程做了很好的介紹,這種特色在全球科學著作中是不多見的。
參考資料網路--計算機科學
網路--計算機程序設計藝術
網路--演算法導論
⑵ 計算機演算法是什麼
問題一:什麼叫演算法?什麼叫計算機演算法? 演算法是一系列解決問題的清晰指令,也就是說,能夠對一定規范的輸入,在有限時間內獲得所要求的輸出。演算法常常含有重復的步驟和一些比較或邏輯判斷。如果一個演算法有缺陷,或不適合於某個問題,執行這個演算法將不會解決這個問題。�同的演算法可能用不同的時間、空間或效率來完成同樣的任務。一個演算法的優劣可以用空間復雜度與時間復雜度來衡量。
演算法的時間復雜度是指演算法需要消耗的時間資源。一般來說,計算機演算法是問題規模n 的函數f(n),演算法執行的時間的增長率與f(n) 的增長率正相關,稱作漸進時間復雜度(Asymptotic Time Complexity)。時間復雜度用「O(數量級)」來表示,稱為「階」。常見的時間復雜度有: O(1)常數階;O(log2n)對數階;O(n)線性階;O(n2)平方階。
演算法的空間復雜度是指演算法需要消耗的空間資源。其計算和表示方法與時間復雜度類似,一般都用復雜度的漸近性來表示。同時間復雜度相比,空間復雜度的分析要簡單得多。
[font class=Apple-style-span style=font-weight: bold; id=bks_etfhxykd]演算法 Algorithm [/font]
演算法是在有限步驟內求解某一問題所使用的一組定義明確的規則。通俗點說,就是計算機解題的過程。在這個過程中,無論是形成解題思路還是編寫程序,都是在實施某種演算法。前者是推理實現的演算法,後者是操作實現的演算法。
一個演算法應該具有以下五個重要的特徵:
1、有窮性: 一個演算法必須保證執行有限步之後結束;
2、確切性: 演算法的每一步驟必須有確切的定義;
3、輸入:一個演算法有0個或多個輸入,以刻畫運算對象的初始情況,所謂0個輸入是指演算法本身定除了初始條件;
4、輸出:一個演算法有一個或多個輸出,以反映對輸入數據加工後的結果。沒有輸出的演算法是毫無意義的;
5、可行性: 演算法原則上能夠精確地運行,而且人們用筆和紙做有限次運算後即可完成。
演算法的設計要求
問題二:計算機演算法是什麼? 在數學和計算機科學之中,演算法為一個計算的具體步驟,常用於計算、數據處理和自動推理。精確而言,演算法是一個表示為有限長列表的有效方法。
而程序演算法是指:
人們使用計算機,就是要利用計算機處理各種不同的問題,而要做到這一點,人們就必須事先對各類問題進行分析,確定解決問題的具體方法和步驟,再編制好一組讓計算機執行的指令即程序,交給計算機,讓計算機按人們指定的步驟有效地工作。這些具體的方法和步驟,其實就是解決一個問題的演算法。
例子:
如何用程序比較3個數字, 找出他們最大的那一個?
1) 輸入A、B、C。
2) A與B中大的一個放入M A X中。
3) 把C與M A X中大的一個放入M A X中。
4) 輸出M A X,M A X即為最大數。
這就是演算法.
int max = a > b ? a : b;max = max > c ? max : c;最終max 中就是a,b,c中最大的值.
問題三:計算機演算法是什麼 個人覺得演算法就是使用適合計算機計算的代碼,告訴計算機如何解決問題;
也就是一種給計算機設計的解決特定問題的方法有時候一個計算機演算法並不適合人類使用去解決同一個問題
問題四:計算機演算法要素是什麼 演算法是指完成一個任務准確而完整的描述.也就是說給定初始狀態或輸入數據,經過計算機程序的有限次運算,能夠得出所要求或期望的終止狀態或輸出數據.
問題五:計算機演算法指的是什麼 計算機演算法是以一步接一步的方式來詳細描述計算機如何將輸入轉化為所要求的輸出的過程,或者說,演算法是對計算機上執行的計算過程的具體描述。
�憂樂美 團隊---半緣修道半緣女�為您解答
=====滿意請採納為滿意答案吧====
問題六:計算機的演算法具有哪些特性? 一個演算法必須具備以下性質: (1)演算法首先必須是正確的,即對於任意的一組輸入,包括合理的輸入與不合理的輸入,總能得到預期的輸出。如果一個演算法只是對合理的輸入才能得到預期的輸出,而在異常情況下卻無法預料輸出的結果,那麼它就不是正確的。 (2)演算法必須是由一系列具體步驟組成的,並且每一步都能夠被計算機所理解和執行,而不是抽象和模糊的概念。 (3)每個步驟都有確定的執行順序,即上一步在哪裡,下一步是什麼,都必須明確,無二義性。 (4)無論演算法有多麼復雜,都必須在有限步之後結束並終止運行,即演算法的步驟必須是有限的。在任何情況下,演算法都不能陷入無限循環中。 一個問題的解決罰案可以有多種表達方式,但只有滿足以上4個條件的解才能稱之為演算法。
綜上所述,我選A、B、E,個人感覺C也選,但我不確定,希望不要誤導你。
最好根據上面的解釋或是演算法書自己看一下。
問題七:在計算機演算法中,它們有什麼區別 演算法就是一種解決問題的方法,我的理解就是,面對一個問題,我們讓計算機來解決這個問題,這種方法就是演算法.
問題八:研究計算機演算法對於編程有什麼作用? 讓我來告訴你,演算法通俗意義上來講――就是解決一個問題的方法。據此而論,編寫程序解決的任何一個問題都可以叫做演算法。狹義上來講研究演算法就是在使用相同的計算資源的並解決同一個問題的情況下怎麼樣可以更加的節約資源,也就是說使計算速度更快。
拿一個例子來講就是排序,我們現在了解到的演算法有:冒泡,快速,插入,堆排序等等很多,在不同的輸入數據規模的情況下採用不同的演算法,因為可以節約計算資源。
問題九:計算機編程的演算法是什麼意思 平時說的演算法就是數學上的計算方法,計算機中的演算法是:解決問題的方法,不一定用數學方法(但大多都是數學方法),只要能通過計算機語言表達出來,達到最終目的的步驟都叫演算法