/* 一次是前面i个元素有序
每个循环中:
  如果前面的大于当前arr[i]向前移动这个数
*/
void InsertSort(int *nums, int numsSize) { for (int i = 1; i < numsSize; i++)//遍历每个元素进行插入排序 { int a = nums[i];//取出当前元素 for (int j = i; j >= 0; j--)//循环当前元素之前的每个元素,由后向前 { if (nums[j - 1]>a)//如果当i<j时,元素后移 { nums[j] = nums[j - 1]; } else//否则,插入元素 { nums[j] = a; break;//如果插入了就跳出循环 } } } }