#include <iostream>using namespace std;void show(int M[], int n)
{for(int i=0; i<n; i++)cout<<M[i]<<" ";cout<<endl;
}//快速排序
void quick_sort(int M[], int left, int right)
{if(left < right){int i,j,x;i = left;j = right;x = M[i];while(i<j){while(i<j && M[j]>= x)j--;if(i<j)M[i++] = M[j];while(i<j && M[i]<= x)i++;if(i<j)M[j--] = M[i];}M[i] = x;quick_sort(M, left, i-1);quick_sort(M, i+1, right);}}//插入排序
void insert_sort(int M[], int n)
{int i,j,tmp;for(i=0; i<n; i++){tmp = M[i]; //取一个新的数据tmpfor(j=i; j>0 && M[j-1]>tmp; j--)//将比数据tmp大的数据往后移动,直到找到比它的数据M[j] = M[j-1]; // j指向的始终是一个空位置M[j] = tmp;//将tmp放置在临界位置上}
}//冒泡排序
void bubble_sort(int M[], int n)
{int i,j,k;for(i=0; i<n; i++) //每次冒泡后 数组最末端数据已经是最大数据,下次不需要重复排序for(j=0; j<n-i-1; j++){if(M[j]>M[j+1]){k = M[j+1];M[j+1] = M[j];M[j] = k;}}
}int main()
{// 输入数据格式: 第一行 n 表示n个数据
// 接下里 输入 n个数据,举例如下:
// 5
// 1 3 5 2 4freopen ("input.txt", "r", stdin); //可以从文件中读取数据输入,//如果手动输入,注释该行int n;cin>>n;int M[n];for(int i =0; i<n; i++)cin>>M[i];show(M, n);quick_sort(M, 0, n-1);
// insert_sort(M, n);
// bubble_sort(M, n);show(M, n);return 0;
}
转载于:https://www.cnblogs.com/yeran/p/10959797.html