當前位置:成語大全網 - 書法字典 - C語言插入排序的算法步驟

C語言插入排序的算法步驟

算法描述

壹般來說,插入排序是通過就地在數組上實現的。具體算法描述如下:

從第壹個元素開始,可以認為該元素已經排序。

取出下壹個元素,按照排序後的元素順序從後向前掃描。

如果元素(已排序)比新元素大,則將該元素移動到下壹個位置。

重復步驟3,直到找到排序後的元素小於或等於新元素的位置。

在這個位置插入新元素之後。

重復步驟2~5。

如果比較操作的成本大於交換操作的成本,可以使用二分搜索法方法來減少比較操作的次數。這種算法可以看作是插入排序的壹種變體,稱為二分搜索法排序。

示例代碼

void insertion_sort(int array[],int first,int last)

{

int i,j;

內部溫度;

for(I = first+1;我& lt=最後;i++)

{

temp = array[I];

j = I-1;

while((j & gt;= first)& amp;& amp(array[j]& gt;溫度))

{

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

j-;

}

array[j+1]= temp;

}

}