#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;
}
插入排序
最新推荐文章于 2023-09-23 17:47:53 发布