(数据结构)快速排序
要求根据给定输入,按照课堂给定的快速排序算法进行排序,输出排序结果和median3的返回值。
注:1,cutoff值为5,不足cutoff使用插入排序。
2,输入、输出格式参见测试用例0。
测试用例1:
测试输入:
41↵
17↵
34↵
0↵
19↵
#↵
期待的输出:
After Sorting:↵
0 17 19 34 41 ↵
Median3 Value:↵
none↵
测试用例2:
测试输入:
61↵
59↵
82↵
-10↵
31↵
-2↵
-3↵
10↵
2↵
108↵
12↵
80↵
-21↵
127↵
12↵
#↵
期待的输出:
After Sorting:↵
-21 -10 -3 -2 2 10 12 12 31 59 61 80 82 108 127 ↵
Median3 Value:↵
12 -3 61 ↵
代码如下:
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<cmath>
using namespace std;
#define MAXSIZE 1000+50
int a[MAXSIZE];
int b=0;
void Median3(int m[], int i, int j )
{
int c=(i+j)/2;
if(m[i]>m[c]) swap(m[i],m[c]);
if(m[i]>m[j]