上篇博客介绍了冒泡算法,接下来介绍插入排序和选择排序.
选择排序;
算法思想:从无序序列中找到最大(或最小)元素,放在序列的最右边(或最左边)。
代码如下:
#include <iostream>
using namespace std;
void swap(int &a,int &b)
{
int temp=a;
a=b;
b=temp;
return;
}
void Insert_sort(int list[],int begin,int end)
{
for(int i=begin;i<end;i++)
{
int min=list[i];
int index=i;
for(int j=i+1;j<=end;j++)
{
if(list[j]<min)
{
index=j;
min=list[j];
}
}
swap(list[i],list[index]);
}
}
int main()
{
int list[10]={1,3,45,23,56,76,4,3,199,56};
Insert_sort(list,0,9);
for(int i=0;i<10;i++)
cout<<list[i]<<" ";
cout<<endl;
system("pause");
}