/*
* Copyright (c)2017,烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名称:项目1.cbp
* 作 者:孙仁圆
* 完成日期:2017年12月26日
* 版 本 号:v1.0
* 问题描述: 验证排序
* 输入描述:无
* 程序输出:测试数据
*/
//冒泡法
#include<iostream>
using namespace std;
int main()
{
int a[50]={57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7};
int i=0,j=12,t;
while(i<12)
{
while(j>i)
{
if(a[j]<a[j-1])
{
t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
j--;
}
j=12;
i++;
}
i=0;
while(i<12)
{
cout<<a[i]<<' ';
i++;
}
return 0;
}
//直接选择法:
#include<iostream>
using namespace std;
int main()
{
int a[50]={57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7};
int i=0,j=0,k;
while(i<11)
{
k=i;
j=i+1;
while(j<12)
{
if(a[k]>a[j])
{
k=j;
}
j++;
}
if(i!=k)
{
int t;
t=a[i];
a[i]=a[k];
a[k]=t;
}
i++;
}
i=0;
while(i<12)
{
cout<<a[i]<<' ';
i++;
}
return 0;
}
//插入法:
#include<iostream>
using namespace std;
int main()
{
int a[50]={57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7};
int i=1,j=0;
while(i<12)
{
j=i-1;
while(j>=0)
{
if(a[j]>a[j+1])
{
int t;
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
j--;
}
i++;
}
i=0;
while(i<12)
{
cout<<a[i]<<' ';
i++;
}
return 0;
}