算法與程序的區(qū)別關系
算法是解決問題的步驟;程序是算法的代碼實現(xiàn)算法要依靠程序來完成功能;程序需要算法作為靈魂
程序是結果,算法是手段(為編寫出好程序所使用的運算方法)。同樣編寫一個功能的程序,使用不同的算法可以讓程序的體積、效率差很多。所以算法是編程的精華所在。
算法+數(shù)據(jù)結構=應用程序。
算法是程序設計的核心,算法的好壞很大程度上決定了一個程序的效率。一個好的算法可以降低程序運行的時間復雜度和空間復雜度。先選出一個好的算法,再配合以一種適宜的數(shù)據(jù)結構,這樣程序的效率會大大提高。
算法和程序都是指令的有限序列 ,但是:程序是算法,而算法不一定是 程序。
區(qū)別主要在于:
(1) 在語言描述上,程序必須是用規(guī)定的程序設計語言來寫,而算法很隨意;
(2) 在執(zhí)行時間上,算法所描述的步驟一定是有限的,而程序可以無限地執(zhí)行下去。
算法是對特定問題求解步驟的描述,它是指令的有限序列。
簡單算法舉例
例:求 1*2*3*4*5
步驟 1 :先求 1*2 ,得到結果 2 。
步驟 2 :將步驟 1 得到的乘積 2 再乘以 3 ,得到結果 6 。
步驟 3 :將步驟 2 得到的乘積 6 再乘以 4 ,得到結果 24 。
步驟 4 :將步驟 3 得到的乘積 24 再乘以 5 ,得到最后結果 120 。
算法與程序設計知識點總結
1. 算法的概念及特點。
(1)復述算法的概念:解決某一問題的具體的、有限的方法和步驟
(2)解釋算法的主要特點: 有窮性(步驟是有限的)、確定性(每個步驟有確切的含義)、可行性(每個步驟是可行的)、有0個或多個輸入和有一個或多個輸出。
(3)描述用算法解決問題的一般過程: 計算機解決問題的一般過程:分析問題(確定要計算機做什么)、尋找解決問題的途徑和方法(解決怎么做)和用計算機進行處理 用算法解決問題的一般過程:需求分析(做什么)、確定算法(主要是人怎么做) 編寫程序(計算機怎么做)及上機調(diào)試和維護(做得更好)
2. 算法的描述方法;流程圖的繪制方法;用流程圖來描述算法。
(1)列舉算法的描述方法(用自然語言描述、流程圖描述、程序語言和偽代碼描述);
(2)列舉常用的流程圖符號及出入口數(shù)起止框、輸入輸出框、處理框、判斷框、流程線
3. 常量和變量的區(qū)別。
(1) 復述常量和變量的概念;
常量:相當于數(shù)學中的常數(shù),在程序運行中不會改變值的量
變量:相當于函數(shù)中的變量,在程序運行中可以改變值的量
(2) 列舉數(shù)據(jù)的基本類型(整型、實數(shù)型、字符型、邏輯型等);
整 型:相當于整數(shù)或用來存放整數(shù)的變量; 實數(shù)型:相當于實數(shù)或用來存放實數(shù)的變量; 字符型:非數(shù)據(jù)值型的數(shù)據(jù)(判斷:一般不能用來加、減、乘、除的)如姓名、學號、電話號碼、身份證號等 邏輯型:用關系運算符和邏輯運算符連接的數(shù)據(jù),只有真(1)和假(0)二種結果
比較變量名和變量值的區(qū)別:Max=5:變量名為Max,其值是5;A(1)=9:A(1)是下標變量
4. 變量的作用和特點;設置和使用變量。
(1) 描述變量的基本作用和特點:作用保存數(shù)據(jù);特點:取之不盡,一充就掉。
(2) 列舉變量命名的基本規(guī)則:英文字母開頭,后面跟字母或數(shù)字或下劃線,系統(tǒng)保留字不能用
(3) 使用賦值語句對變量進行賦值;
LET 變量名=表達式,先計算表達式,后將結果賦值給左邊的變量,一般LET省略
5. 運算符、運算的優(yōu)先次序、表達式。
(1)列舉各類運算的運算符及運算規(guī)則(算術、字符、關系、邏輯); 算術運算符:+、-、*(乘)、/(除)、^(乘方)、mod(a mod b求a÷b的余數(shù)) 字符運算符:+(連接符)”I am ”+”No.1”→”I am No.1” 關系運算符:》、《、=、《》(不等于)、≥(書寫時應寫成》=)、≤ 邏輯運算符:NOT(非/取反)、AND(與/并且/相當于乘法)、OR(或/相當于加法)
(2)區(qū)分各類運算符的優(yōu)先級; 算術運算:( )→函數(shù)→乘方→*、/→mod→+、-
邏輯運算:( )→NOT→AND→OR 關系和邏輯運算的結果只有真和假,教材上約定真為1,假為0 先算術運算→字符→關系→邏輯
(4) 列舉常用的表達式類型:也分為算術、字符、關系和邏輯表達式四種
評論
查看更多