int InsertSort(int data[], int len)
{
int temp;
int i;
for (i = 1; i < len; i++)
{
temp = data[i]; //循环开始时,将当前元素(data[i])存储到临时变量temp中,以便后续操作。
int j;
for (j = i - 1/* 然后,在内部循环中,从当前元素的前一个元素开始(下标为i-1),比较temp与已排序的元素。*/
; temp < data[j] && j >= 0/*继续向前比较,直到找到temp应该插入的位置,或者j已经越界(j<0)为止。*/; j--)
{
data[j + 1] = data[j];
/*如果temp小于已排序的元素data[j],则将data[j]向后移动一个位置,以便为temp腾出位置。*/
}
data[j + 1] = temp; // 将temp插入到找到的合适位置(data[j+1]),并完成一次元素插入操作。
}
}
排序3:插入排序
最新推荐文章于 2024-09-12 19:02:20 发布