第二週專案三 體驗複雜度

2021-07-22 11:56:13 字數 1308 閱讀 7782

問題**:

/*  

*檔名稱:程式複雜度.cpp

*作 者:李玲

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

*問題描述:排序是電腦科學中的乙個基本問題,

產生了很多種適合不同情況下適用的演算法,

也一直作為演算法研究的熱點。

本專案提供兩種排序演算法,

複雜度為o(n2)的選擇排序selectsort,

和複雜度為o(nlogn)的快速排序quicksort,

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

*輸入描述:無

*程式輸出: 執行資料資料以及運算時間

*/

//**1

#include #include #include #define maxnum 100000

void selectsort(int a, int n)

if(k != j)

} }

int main()

while(fscanf(fp, "%d", &x[n])!=eof)

n++;

printf("資料量:%d, 開始排序....", n);

t1=time(0);

selectsort(x, n);

t2=time(0);

printf("用時 %d 秒!", (int)(t2-t1));

fclose(fp);

return 0;

} //**2

#include #include #include #define maxnum 100000

void quicksort(int data,int first,int last)

{ int i, j, t, base;

if (first>last)

return;

base=data[first];

i=first;

j=last;

while(i!=j)

{ while(data[j]>=base && i

執行結果:

知識點總結:

不同的演算法會有不同的耗費時間,要學會選擇最適合自己的程式

學習心得:

學會運用更合適的演算法以便以後的程式程式設計

第二週 專案三 體驗複雜度

煙台大學計算機與控制工程學院 檔名稱 main.cpp 作 者 李瀟 完成日期 2016年9月5日 版 本 號 v1.0 問題描述 比較兩種排序演算法的執行時間 輸入描述 無 程式輸出 排序整個過程所用的時間 include include include define maxnum 100000 ...

第二週 專案三 體驗複雜度

問題及 煙台大學計算機與控制工程學院 問題描述 兩種排序演算法 選擇排序和快速排序 的執行時間 程式輸出 執行時間 include include include define maxnum 100000 void selectsort int a,int n if k j int main 51....

第二週專案三 體驗複雜度

問題及 檔名稱 main.cpp 作 者 王萬興 完成日期 2017年9月13日 版 本 號 v1.0 問題描述 使用兩種不同的演算法對十萬條資料進行排序 輸入描述 含有十萬條資料的文件 程式輸出 見程式執行截圖 include include include define maxnum 10000...