- 4
- 0
- 约5.07千字
- 约 32页
- 2018-10-12 发布于江苏
- 举报
演算法分析(Aalyzing Algorithms)
上高斯符號 (ceiling) 與下高斯符號 (floor) 模數運算(modular operation) 對任意整數a 與 任意正整數n, 數值a mod n 為 a/n 的餘數 : a mod n =a -?a/n?n. 若(a mod n) = (b mod n), 我們可以寫成 a ? b (mod n)並且說a 與b 在mod n (modulo n)下為等價(equivalent)的。 若我們寫a ? b (mod n) 則a 與b 在mod n之下並不為等價的。 演算法分析(Analyzing Algorithms) 參考: 物件導向資料結構 — 使用Java語言, 江振瑞 著, 松崗圖書公司, 2005. Introduction to the Design and Analysis of Algorithms -- A strategic approach, 2E, R.C.T. Lee et. al., NcGraw Hill, 2005. Introduction to Algorithms, Cormen et. al., MIT Press. 演算法分析 分析一個演算法指的是要對演算法所需要的資源(resources)進行預測。 資源(Resources):記憶體(memory),通訊(communication),頻寬(bandwidth),邏輯閘 (logic gate),時間(time) 演算法分析 演算法運行時間(running time)是指在特定輸入下所執行的基本操作或”步驟”的數目。 能方便地進行與機器無關的(machine-independent) 分析。 複雜度(Complexity) 一般我們使用 時間複雜度(time complexity) 空間複雜度(space complexity) 來評估演算法的執行時間與所佔用記憶體空間, 這些複雜度愈低,則表示演算法愈好。 我們比較關注time complexity! 三種狀況 演算法的時間複雜度分析分為以下三種: 最佳狀況(best case)時間複雜度:考慮演算法執行時所需要的最少執行步驟數。 最差狀況(worst case)時間複雜度:考慮演算法執行時所需要的最多執行步驟數。 平均狀況(average case)時間複雜度:考慮所有可能狀況下演算法的平均執行步驟數。 通常,我們只專注在找出最差狀況運行時間(worst-case running time) 理由: 是運行時間的上限(upper bound)。 最差狀況也經常發生。 平均狀況常常和最差狀況一樣差。例如:插入排序(insertion sort) 以及二次函數(quadratic function)。 最差狀況與平均狀況的分析 一個用以測試質數的演算法 我們可以看出,輸入大於2的任意正整數n,若n是質數,則演算法Prime1需要執行整數除法求餘數(n%i)動作與整數比較((n%i)=0)動作n-2次之後,才可以知道n是質數。另外,若n不是質值,則演算法Prime1只要執行整數除法求餘數與整數比較動作1次,就可以知道n不是質數了。 Algorithm Prime1(n):Input:一個大於2的正整數nOutput:true或false(表示n是質數或不是質數)for i←2 to n-1 do if (n%i)=0 then return falsereturn true 我們可以看出,輸入大於2的任意正整數n,若n是質數,則演算法Prime2需要執行整數除法求餘數(n%i)動作與整數比較((n%i)=0)動作 -2次之後,才可以知道n是質數。另外,若n不是質值,則演算法Prime2只要執行整數除法求餘數與整數比較動作1次,就可以知道n不是質數了。 另一個用以測試質數的演算法 分析演算法Prime1 因此,我們很容易看出來,在最壞狀況(worst case)下,演算法Prime1的執行步驟次數與輸入的正整數n成正比關係;而在最佳狀況(best case)下,演算法Prime1的執行步驟次數為與輸入的正整數n無關的某個常數。也就是說,演算法Prime1具有線性的(linear) 最差狀況時間複雜度(正比關係即為線性關係)與常數的(constant) 最佳狀況時間複雜度。 分析演算法Prime2 我們也很容易看出來,在最壞狀況(worst case)下,演算法Prime2的執行步驟次數相依於輸入的正整數n的平方根值;而在最佳狀況(best case)下,演算法Prime2的執行步驟次數為與輸入的正整數n無關的某個常數。也就是說,演算法Prime2具有平方根的(square root) 最差狀況時間複雜度與常數的(c
您可能关注的文档
- 湖北襄阳五中高三年级五月适应性考试(一).doc
- 湖北襄樊武当山农架宜昌自助游详细攻略.docx
- 湖北长江天鹅洲鱀豚国家级自然保护区管理处购买渔政执法.doc
- 湖北雨露计划转移培训.doc
- 湖北黄冈武穴干村做官者最多.doc
- 湖南中职酒店管理技能抽查标准.doc
- 湖北青龙山恐(游手册).doc
- 湖北黄冈民俗文简介.doc
- 湖南人文科技学《大学生素质拓展证书》认证工作实施办法.doc
- 湖南人文科技学院常规跳蚤巿场策划书.doc
- 2026山东济南市高新区某政府单位招聘综合窗口岗实习生2人笔试模拟试题及答案解析.docx
- 2026宁夏葡萄酒与防沙治沙职业技术学院自主招聘20人笔试备考试题及答案解析.docx
- 因湃电池科技有限公司2026届春季校园招聘笔试备考试题及答案解析.docx
- 2026上海地铁第四运营有限公司应届高校毕业生招聘笔试备考题库及答案解析.docx
- 2026四川乐山市夹江县妇幼保健院招聘编制外工作人员5人笔试参考题库及答案解析.docx
- 2023年c期末考试真题.pdf
- 华与华方法落地 -华与华怎么管落地.docx
- 【作文导写】践行“中国精神”.pdf
- 2026年3月西昌学院招聘事业编制人员10人(四川)笔试备考题库及答案解析.docx
- 2023年安全员综合复习.pdf
原创力文档

文档评论(0)