程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 數據結構之---C語言實現直接插入排序

數據結構之---C語言實現直接插入排序

編輯:關於C語言

數據結構之---C語言實現直接插入排序


//直接插入排序
//假設待排序的記錄存放在數組R[1..n]中。
//初始時,R[1]自成1個有序區,無序區為R[2..n]。
//從i=2起直至i=n為止,依次將R[i]插入當前的有序區R[1..i-1]中,
//生成含n個記錄的有序區。
//楊鑫
#include 
#include 
#define N 10
void InsertSort(int a[], int size)
{
	int i, j, k, temp = 0;
	for(i = 1; i < size; i++)
	{
		temp = a[i];
		for(j = 0; j < i; j++)
		{
			if(temp < a[j])
			{
				for(k = i - 1; k >= j; k--)
				{
					a[k + 1] = a[k];
				}
				a[j] = temp;
				break;
			}
		}
	}
}



int main()
{
	int m = 0;
	int b[N] = {9, 8, 7, 6, 5, 4, 3, 2, 1};
	printf(=============================

);
	printf(排序前的數據是:
9 8 7 6 5 4 3 2 1
);	
	InsertSort(b, N);
	printf(排序後的結果是:
);
	for(m = 0; m < N; m++)
	{
		printf( %d , b[m]);
	}
	printf(

=============================

);
	return 0;
}

 

結果:

\

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved