第2周專案3 體驗複雜度(1)

2021-07-05 05:14:52 字數 1261 閱讀 4265

問題:

/*

*檔名稱:複雜度.cpp

*作 者:王聰

*完成日期:2023年9月10日

*版 本 號:v1.0

**問題描述:排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適

用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,復

雜度為o(n 2)的選擇排序selectsort,和複雜度為o(nlogn)的快速排序

quicksort,在main函式中加入了對執行時間的統計。

*輸入描述:大資料檔案

*程式輸出:執行時間

*/

#include #include #include #define maxnum 100000

void selectsort(int a, int n)

if(k != j)

}}int main()

執行結果:

{while(data[j]>=base && i執行結果:

從這兩個程式執行時間來看,第二個程式是瞬間完成,而第乙個程式則需要一段時間。從這兩個程式複雜度來看,第乙個複雜度是n的平方,第二個是o(n

logn

)n*log(n),顯然第乙個複雜度是指數型增長,第二個則是線性增長,故執行時間第二個較第乙個快。

知識點總結:

這個程式主要考察了我們對程式時間複雜度的理解,以便我們今後的程式設計中注意複雜度對程式執行時間的影響。

學習心得:

通過程式的執行直觀的理解了複雜度對程式執行的時間影響是多麼的重要,也明白了複雜度對以後程式設計的意義重大。

第2周 專案3 體驗複雜度(1)

檔名稱 2 3 1.cpp 作 者 畢夢楠 完成日期 2015年9月18日 版 本 號 v1.0 問題描述 排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適 用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,復 雜度為o n 2 的選擇排序selectsort,和複雜度為...

第2周專案3 體驗複雜度(1)

問題 檔名稱 複雜度.cpp 作 者 王婧 完成日期 2016年9月8日 版 本 號 v1.0 問題描述 排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適 用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,復 雜度為o n 2 的選擇排序selectsort,和複雜度為o...

第2周專案3 體驗複雜度(1)

問題 檔名稱 複雜度.cpp 作 者 陳光輝 完成日期 2016年9月8日 版 本 號 v1.0 問題描述 排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適 用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,復 雜度為o n 2 的選擇排序selectsort,和複雜度為...