您的位置:首页 > 其它

插入排序

2016-05-19 23:56 204 查看
#include<iostream>

using namespace std;

void swap(int *a,int *b)
{
int tmp = *a;
*a = *b;
*b = tmp;
}

//选择排序是每次都选取所有剩余序列中的最小值,然后将其与最前面值互换(先找最小值,最后换一次)
//冒泡排序和插入排序的区别:冒泡排序每次都将剩余序列的最小值插到现有队列最前面(找一次换一次)
//插入排序是第i个数在前面i-1个有序队列中找到一个自己适合的位置插入进去
void insert_sort(int a[],int n)
{
for(int i=1;i<n;i++)
for(int j = i;j>0;j--)
{
if(a[j]<a[j-1])
swap(&a[j],&a[j-1]);
else
break;
}
}

void main()
{
int a[10] = {1,3,5,7,2,8,4,9,6,0};
insert_sort(a,10);
for(int i = 0;i<10;i++)
{
printf("%d \n",a[i]);
}
system("pause");
return;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: