3105問題 B 基礎排序III 歸併排序

2021-08-21 19:50:39 字數 705 閱讀 3108

歸併排序是乙個時間複雜度為o(nlogn)的演算法,對於大量資料遠遠優於氣泡排序與插入排序。

這是一道排序練習題,資料量較大,請使用歸併排序完成。

第一行乙個數字n,代表輸入的組數

其後每組第一行輸入乙個數字m,代表待排序數字的個數

其後m行每行乙個資料,大小在1~100000之間,互不相等,最多有10萬個資料。

公升序輸出排好序的資料,每行乙個數字

1

101098

7654

321

123

4567

8910

#include#includeconst int maxn=100010;

int a[maxn];

void merge(int a, int l1, int r1, int l2, int r2) else

} while(i<=r1) temp[index++]=a[i++];

while(j<=r2) temp[index++]=a[j++];

for(i=0; i}void mergesort(int a, int left, int right)

}int main()

mergesort(a, 0, m-1);

for(int i=0; in--;

} return 0;

}

Codeup 3105 基礎排序III 歸併排序

歸併排序是乙個時間複雜度為o nlogn 的演算法,對於大量資料遠遠優於氣泡排序與插入排序。這是一道排序練習題,資料量較大,請使用歸併排序完成。第一行乙個數字n,代表輸入的組數 其後每組第一行輸入乙個數字m,代表待排序數字的個數 其後m行每行乙個資料,大小在1 100000之間,互不相等,最多有10...

問題 B 基礎排序III 歸併排序

題目鏈結 題目描述 歸併排序是乙個時間複雜度為o nlogn 的演算法,對於大量資料遠遠優於氣泡排序與插入排序。這是一道排序練習題,資料量較大,請使用歸併排序完成。輸入 第一行乙個數字n,代表輸入的組數 其後每組第一行輸入乙個數字m,代表待排序數字的個數 其後m行每行乙個資料,大小在1 100000...

問題 B 成績排序

時間限制 1 sec 記憶體限制 128 mb 提交 460 解決 139 狀態 提交 命題人 外部匯入 題目描述 科大學生成績表有學號 數學成績 英語成績與程式設計成績4項。按學號次序給定乙個班的成績,要求根據個人總分高低排序輸出同學們的成績。輸入第一行是整數n,表示班級學生人數 n 40 隨後有...