insertion sort

1.insertion sort

#include <stdio.h>

#include <time.h>

#include <stdlib.h>



#define N 20



void main()

{

	int i,j,temp, a[N];



	srand((unsigned)time(0));

	puts("this is the 20 numbers,");

	for( i = 0; i < N; i++)

	{

		a[i] = rand()%100;	

		printf("%4d\t",a[i]);



	}

	puts("this is the end");



	for( i = 1; i < N; i++)

	{

	

	    temp = a[i];

		for( j = i-1; j >= 0; j--)

		{

			if(temp < a[j])	

			{

				a[j+1] = a[j];				

			}

			else

				

				break;

		}

		//这里为什么没有放在break上面,是因为当temp要放在第一位的时候,这一句不一定被执行

		a[j+1]=temp;

	

	}



	for(i = 0; i < N; i++)

		printf("%4d\t",a[i]);

}







你可能感兴趣的:(insert)