插入排序

 
#include<iostream>
using namespace std;
void print(int *a,int len) ;
void insertSort(int *a,int len) ;

int main()
{	
	int a[] = {1,2,5,4,3,0} ;
	insertSort(a,6) ;
	cout<<endl;
	cout<<"-----------"<<endl;
	for(int i =0;i<6;i++)
		cout<<a[i]<<" "; 
	cout<<endl;
	return 0;
}

void insertSort(int *a,int len)
{
	for (int i=0; i<len-1;i++)
	{
		int j = i + 1;
		int temp = a[j];
		if (a[j]>a[j-1])
			continue;
		while (j>=0&&temp<a[j-1])
		{
			a[j] = a[j-1];
			j--;
		}
		a[j] = temp;	
		print(a,len) ;
		cout<<endl;			
	}
}

void print(int *a,int len){
	for(int i=0;i<len;i++)
		cout<<a[i]<<" ";
}
 

你可能感兴趣的:(排序,插入排序)