欢迎使用CSDN-markdown编辑器

来源:互联网 发布:万网注册域名流程 编辑:程序博客网 时间:2024/06/15 19:59

c++几种常见的排序

include

using namespace std;“`
//1.冒泡排序思想:每次相邻两两比较,值大的向后移动

define N 10

void main()
{
int i = 0,j = 0;
int arr[N] = {2,4,3,5,2,45,5,56,67,7};
for(i = 0;i < N -1;i++) //每循环一次,一个最大值沉底
{
for(j = 0;j < N - 1 - i;j++) //沉底的次数决定冒到哪里
{
if(arr[j] > arr[j+1])
{
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}

for(i = 0; i < N;i++)  //输出值{    cout<<arr[i]<<"  ";}cout<<endl;

}

//2.插入排序,可以理解为读一个插一个,便于查找

define N 10

void main()
{
int arr[N] = {2,4,33,5,1,9,5,8,7,6};
int i = 0,j;
for(i = 1;i < N;i++) //只有一个不需要插入
{
int temp = arr[i];
j=i;
while(j > 0 && arr[j-1] > temp)
{
arr[j] = arr[j-1]; //向后移动
j–;
}

arr[j] = temp;}for(i = 0;i < N;i++){    cout<<arr[i]<<" ";}cout<<endl;

}

//3.桶排序 从小到大输出,适合数据较集中,差距较小

define Max 100

void main()
{
int a[Max+1];
int i,j,t;
for(i=0;i

原创粉丝点击