問題及**:
/*
*煙台大學計控學院
*作 者:張冰
*完成日期:2023年9月7日
*問題描述:排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,複雜度為o(n 2 )的選擇排序selectsort,和複雜度為o(nlogn) 的快速排序quicksort,在main函式中加入了對執行時間的統計。
*輸 入:從檔案中讀取大量的資料
*輸 出:資料執行時間
*/
(1)複雜度是o(n 2 )的選擇排序程式
#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));
(2)複雜度為o(nlogn) 的快速排序
#include
#include
#include
#define maxnum 100000
void
quicksort(
intdata,
intfirst,
intlast)
} data[first]=data[i];
data[i]=base;
quicksort(data,first,i-1);
quicksort(data,i+1,last);
} int
main()
while
(fscanf(fp,
"%d"
, &x[n])!=eof)
n++;
printf("資料量:%d, 開始排序...."
, n);
t1=time(0);
quicksort(x, 0, n-1);
t2=time(0);
printf("用時 %d 秒!"
, (int
)(t2-t1));
fclose(fp);
return
0;
} 執行結果 :
知識點總結:
利用大資料讀取的方法
學習心得:
第二週專案3 體驗複雜度 兩種排序演算法的執行時間
問題及 檔名稱 sss.cpp 作 者 車佳穎 完成日期 2016年9月7日 問題描述 排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,複雜度為o n 2 的選擇排序selectsort,和複雜度為o nlogn 的快速排...
第二週 專案3 體驗複雜度 兩種排序演算法的執行時間
問題及 煙台大學計控學院 作 者 孫啟先 完成日期 2016年9月8日 問題描述 排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,複雜度為o n 2 的選擇排序selectsort,和複雜度為o nlogn 的快速排序qu...
第二週專案3 體驗複雜度 兩種排序演算法的執行時間
問題及 煙台大學計控學院 作 者 朱建豪 完成日期 2016年9月8日 問題描述 排序是電腦科學中的乙個基本問題,產生了很多種適合不同情況下適用的演算法,也一直作為演算法研究的熱點。本專案提供兩種排序演算法,複雜度為o n 2 的選擇排序selectsort,和複雜度為o nlogn 的快速排序qu...