1. 程式人生 > >演算法分析與設計(一)

演算法分析與設計(一)

一、演算法的定義 滿足五個條件:可行性、確定性、輸入、輸出、有窮性 滿足前四個條件為計算過程(OS) 二、演算法複雜性分析 時間複雜性:對該輸入需要產生的原子操作的步數(是輸入大小的函式) 空間複雜性:演算法所需要的儲存空間 三、計算複雜性函式的階 階:描述增長的快慢 保留高階項、忽略低階項和常數項 在這裡插入圖片描述 同階函式 存在c1、c2>0,對於任意的n>n0(n無窮大時),總有c1g(n)<f(n)<c2g(n) 同階函式------>低階函式、高階函式 增長的記號: θ (緊界)可以推出---->O和Ω,θ 標記強於O標記 O(上界) Ω(下界,描述問題的時間複雜性,最起碼要多長時間) o(對任意的c,都要滿足cg(n)>f(n)嚴格的低階)、w(對任意的c,嚴格的高階)

四、master定理(主定理法) 求解型為T(n)=aT(n/b)+f(n)的遞迴方程