演算法導論 01 執行時間,漸進分析

2021-06-22 23:06:05 字數 655 閱讀 3405

1.演算法就是一系列的計算步驟。

2.計算機程式執行效能和儲存空間的理論分析就是演算法分析。

3.演算法執行時間的要考慮因素:

①輸入序列的次序,如果逆序,那麼排序的話,工作量就最大

②輸入規模

③執行時間上界。

4.最壞時間分析:輸入規模為n時的最長執行時間

平均時間分析:所有時間的期望,即每種輸入的執行時間乘以該種輸入出現的概率,是一種加權平均。

最好時間分析:假象,基本無意義。

5.漸進分析:不是去檢查實際執行時間,而是關注執行時間的增長,即當n趨向正無窮時,執行時間的分析。

6.插入排序最壞情況:

t(n)=2+3+…+n=(2+n)(n-1)/2=θ(n^2)

7.歸併排序步驟

s1:如果n=1,那麼結束;

s2:否則,遞迴地排序a[1,…[n/2]]和a[[n/2]+1,…n]

s3: 將2個已經排序好的表合併在一起(』merge』)

t(n)=     θ(1)                    n=1;

2t(n/2)+θ(n)    n>1    (注意:θ(n)+θ(1)=θ(n)}

SQL 語句執行時間分析

以下語句可以進行sql 語句執行時間分析,兩個go之間就是sql查詢語句 use work 資料庫名 goset statistics profile on set statistics io on set statistics time on go sql執行語句 goset statistics...

mysql語句執行時間分析

檢視mysql版本 select version 方法一 show profiles。1.show profiles是5.0.37之後新增的,要想使用此功能,要確保版本在5.0.37之後。檢視方法 show variables like pro 檢視profiling是否開啟 設定開啟方法 set ...

mysql檢視執行時間分析

為了驗證select 1 與 select 1 from tablename 與 select from tablename的執行效率,需要測試一下各自執行的時間。於是總結一下,檢視mysql語句執行時間的方法。方法一 show profiles。1.show profiles是5.0.37之後新增...