亚洲一级免费看,特黄特色大片免费观看播放器,777毛片,久久久久国产一区二区三区四区,欧美三级一区二区,国产精品一区二区久久久久,人人澡人人草

C語言

排序之一:直接插入排序C語言實現(xiàn)

時間:2025-04-13 11:58:38 C語言 我要投稿
  • 相關推薦

排序之一:直接插入排序(C語言實現(xiàn))

  導語:C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產(chǎn)生少量的機器碼以及不需要任何運行環(huán)境支持便能運行的編程語言。下面我們來看看直接插入排序(C語言實現(xiàn)),希望對大家有所幫助。

  直接插入排序方法:僅有一個記錄的表總是有序的,因此,對于有n個記錄的表,可以從第二個記錄開始直到第n個記錄逐個有序的向有序表中進行插入操作,從而得到n個記錄按關鍵字有序的表。

  實現(xiàn)一個直接插入排序的C語言函數(shù),要求對要排序的元素按照逐漸遞增有序。這個函數(shù)的具體實現(xiàn)如下:

  /* 直接插入排序函數(shù)的實現(xiàn)

  * array[] : 待排序的數(shù)組

  * length : 待排序的數(shù)組的大小

  */

  void ion_sort(int array[], int length)

  {

  int i, j;

  int temp; // 用來存放臨時的變量

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

  {

  temp = array[i];

  for(j = i-1; (j >= 0)&&(array[j] > temp); j--)

  {

  array[j + 1] = array[j];

  }

  array[j + 1] = temp;

  }

  }

  編寫測試代碼如下所示

  /* 程序的入口函數(shù) */

  int main()

  {

  int a[ARRAY_LENGTH];

  int i;

  int d[3] = {5, 3, 1}; // 定義一個表示增量值的數(shù)組

  /* 輸入10個整形元素 */

  printf("Input %d numbers : ", ARRAY_LENGTH);

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

  {

  scanf("%d", &a[i]);

  }

  printf("**************************************************************** ");

  /* 把排序前元素都打印出來 */

  printf("The elements before sort is : ");

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

  {

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

  }

  printf(" ");

  printf("**************************************************************** ");

  /* 對元素進行有小到大的直接插入排序 */

  ion_sort(a, ARRAY_LENGTH);

  /* 把排序后元素都打印出來 */

  printf("The elements after sort is : ");

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

  {

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

  }

  printf(" ");

  return 0;

  }

【排序之一:直接插入排序C語言實現(xiàn)】相關文章:

直接插入排序(C語言實現(xiàn))09-10

C++ 排序插入排序詳解08-03

C語言插入排序算法及實例代碼07-02

c語言中冒泡排序、插入排序、選擇排序算法比較07-11

希爾排序(C語言實現(xiàn))09-06

冒泡排序(C語言實現(xiàn))08-30

C++插入排序算法實例08-26

C語言實現(xiàn)歸并排序算法08-19

希爾排序算法的C語言實現(xiàn)示例08-30