add insertion sort content

This commit is contained in:
Listening
2022-12-30 09:26:26 +08:00
parent edf1029ac4
commit 0dda12e0ab
2 changed files with 59 additions and 1 deletions

View File

@@ -135,7 +135,24 @@ comments: true
=== "C"
```c title="insertion_sort.c"
/* 插入排序 */
void insertionSort(int nums[], int size)
{
// 外循环base = nums[1], nums[2], ..., nums[n-1]
for (int i = 1; i < size; i++)
{
int base = nums[i], j = i - 1;
// 内循环:将 base 插入到左边的正确位置
while (j >= 0 && nums[j] > base)
{
// 1. 将 nums[j] 向右移动一位
nums[j + 1] = nums[j];
j--;
}
// 2. 将 base 赋值到正确位置
nums[j + 1] = base;
}
}
```
=== "C#"