1. 程式人生 > >【算法學習】03---算法分析學習

【算法學習】03---算法分析學習

循環 log 對數 子集 empty 分析 bsp 結果 -a

算法分析

  • 算法分析

科學方法

  • 細致的觀察真實世界的特點
  • 根據觀察結果提出假設模型
  • 根據模型預測未來的事件
  • 繼續觀察並核實預測的準確性
  • 反復直到確認預測和觀察一致

一般程序算法設計與模型確定:
1. 確定輸入模型,定義問題的規模
2. 識別內循環
3. 根據內循環中的操作確定成本模型
4. 對於給定的輸入,判斷操作,進行數學分析

書中羅列了一些算法分鐘的常見函數與近似函數,參考書中185頁,表1.4.5和1.4.6

實現算法時會使用結構性的語句,增長成本的分類

描述增長的數量級說明舉例
常數級別 1 普通語句 兩個數相加
對數級別 logN 二分策略 二分查找
線性級別 N 循環
平方級別 雙層循環 檢查所有元素對
立方級別 三層循環 檢查所有三元組
指數級別 窮舉查找 檢查所有子集

【算法學習】03---算法分析學習