#include<iostream>
void prin(int *list,int len)
{
for(int i= 0;i<len;++i)
std::cout<<list[i]<<" "<<std::endl;
}
/************************************************************************/
/*插入排序
*list:待排序的数组,len:待排序数组的长度
*/
/************************************************************************/
void insertSort(int *list,int len)
{
int p ;
int temp ;
for(int i = 1 ;i< len; ++i) //需待排序的元素
{
p = i ;//
temp = list[p] ;//待插入的值
//如果带插入的值小于list[p-1],则将list[p-1]向后移动一个位置
while(p>0&&temp < list[p-1])
{
list[p] = list[p-1] ;//移动一个位置
p-- ;
}
list[p] = temp ;//插入
}
prin(list,len) ;
}
int main()
{
int a[10] = {5,8,2,4,9,0,1,6,7,3} ;
insertSort(a,sizeof(a)/sizeof(int)) ;
system("pause") ;
return 0 ;
}
算法复习之插入排序
最新推荐文章于 2024-07-03 02:26:02 发布