//插入排序算法
/*
插入排序算法就是先把最开始的两个数进行排序,然后第三个插入前两个之中,第四个数插入前三个数中,以此类推
例如:1,5,9,6,3,2,8,7,4,0
1,5,9,6,3,2,8,7,4,0
1,5,6,9,3,2,8,7,4,0
1,3,5,6,9,2,8,7,4,0
1,2,3,5,6,9,8,7,4,0
1,2,3,5,6,8,9,7,4,0
1,2,3,5,6,7,8,9,4,0
1,2,3,4,5,6,7,8,9,0
0,1,2,3,4,5,6,7,8,9
*/
#include <iostream>
using namespace std;
void InsertionSort(int v[],int len)
{
int i ,j;
int temp;
for(i = 1;i < len;++i)
{
temp = v[i];
for(j = i - 1;temp < v[j];--j) //当待排序数值比已经排好的序列中的值大的时候,开始依次向后移动数据
{
v[j + 1] = v[j];
}
v[j + 1] = temp;
}
}
int main()
{
int a[] = {1,5,9,6,3,2,8,7,4,0};
int len = sizeof(a) / sizeof(int);
InsertionSort(a,len);
for(int i = 0;i < len;++i)
cout<<a[i]<<" ";
getchar();
return 0;
}
以下为冒泡排序算法:
//冒泡排序法
#include <iostream>
using namespace std;
void BubbleSort(int v[],int len)
{
int temp;
for(int i = len - 1;i >= 0;--i)
{
for(int j = 0;j < i;++j)
{
if(v[j] > v[j + 1])
{
temp = v[j + 1];
v[j + 1] = v[j];
v[j] = temp;
}
}
}
}
int main()
{
int a[] = {1,5,9,6,3,2,8,7,4,0};
int len = sizeof(a) / sizeof(int);
BubbleSort(a,len);
for(int i = 0;i < len;++i)
cout<<a[i]<<" ";
getchar();
return 0;
}