C語言 直接插入排序(好理解)

2021-10-03 16:22:06 字數 906 閱讀 6284

目錄

演算法理解 圖示

資料結構方面

如何計算陣列長度?(簡便方法)

** 直接插入排序:在前i個數中,若比前面的數小,則不斷往前移。

需要嚴格控制迴圈條件!!

i一定不能越界

指標能用陣列的形式表示

陣列實質上就是指標,因此方法中,可以用int* 來定義。

當然也可以中規中矩的用它本身的定義來書寫。

//直接插入排序:在前i個數中,若比前面的數小,則不斷往前移。

#include#include//函式宣告

void insertsort(int* array,int size );

void display(int* array,int size);

//方法定義

void insertsort(int* array,int size )

i=++j;

} display(array,size);

puts("排序完成。。。");

}void display(int* array,int size)

i++;

} puts("");

}//主程式

int main()

; int size=sizeof(array)/sizeof(array[0]);

printf("陣列array的長度為:%d\n",size);

insertsort(array,size);

return 0;

}

直接插入排序 C語言

插入排序是最簡單的一種排序方法。它的基本操作就是將乙個記錄插入到已排好序的有序表中,從而得到乙個新的 記錄數增1的有序表。直接插入排序時,我們將第二個陣列元素作為插入數,第乙個數作為有序陣列。逐個比較兩者大小,最後將數插入到合適位置。實現 插入排序 void inse int data int t ...

C語言直接插入排序

直接插入排序 穩定演算法 的基本思想 從第乙個數開始,認定陣列的前i個數有序,依次遍歷陣列,把後面的資料插入到合適的位置,使陣列繼續保持有序。include void swap int a,int b 直接插入排序 公升序 void insertsort up int arr,int length ...

直接插入排序 C語言

當我們打撲克牌的時候,為了使手中的牌順序排列,我們平常都會這麼做,每抽到一張牌,就會將它直接插入到適當的位置。例如 我們手上有1 3 4 5這四張牌,而當我們再抽到乙個2的時候,我們需要將2插入到1和3之間,這樣就能完成手中牌的順序排列。直接插入排序基本操作就是將乙個資料插入到已經排序好的有序序列中...