int* sortArray(int* nums, int numsSize, int* returnSize){
*returnSize = numsSize;
int i; // 表示要插入的元素的位置
for(i=1; i<numsSize; i++) // 将要插入的元素从第二个开始
{
int curDigit = nums[i]; // 当前要插入的元素
int j; // j 表示空穴的位置,空穴值为 curDigit
for(j=i; j>0; j--)
{
if(nums[j-1]>curDigit) // 空穴值与其前面的元素比较,空穴值小于前面的元素
nums[j] = nums[j-1]; // 前面的元素往后移动一位,空穴位置往前移动
else
break; // 空穴值与其前面的元素比较,空穴值大于前面的元素,那么空穴不需要移动,跳出循环
}
nums[j] = curDigit; // 将当前要插入的元素放入空穴位置
}
return nums;
}
插入排序代码
于 2022-01-22 15:59:50 首次发布