插入排序(insertion sort)
思路:进行n轮插入,每i轮执行后前i个元素有序,
每轮插入过程就是把新元素大的往后移动一格,腾出一个位置
void insertionSort(int* data, int n) {
int i, j;
for (i = 1; i < n; i++) {
int key = data[i];
for (j = i - 1; data[j] > key && j >= 0; j--) {
swap(data[j], data[j + 1]);
}
}
}
复杂度O(n2)