void InsertSort(int arr[], int size)
{
//表示当前要插入元素在数组中的下标
//并且此时i位置的元素一定是要往i之前的位置插入
for (int i = 1; i < size; i++)
{
//在i之前找插入的位置,因为此时i之前的位置是有序的
int end = i - 1;
int key = arr[i];
while (end >= 0 && key < arr[end])
{
arr[end + 1] = arr[end];
end--;
}
//判断并插入元素
arr[end + 1] = key;
}
}
int main()
{
int a[10] = { 5,6,9,12,8,1,3,15,23,36 };
InsertSort(a, 10);
for (int i = 0; i < 10; i++)
{
cout << a[i] << endl;
}
system("pause");
}