#include <iostream>
using namespace std;
void insertSort(int arr[], int len) {
int i, j, data;
bool flag= false;
for (i = 1; i < len; i++) {
j = i - 1;
data = arr[i];
while (j >= 0 && data < arr[j]) { //如果比前一个元素小
arr[j+1] = arr[j]; //元素后移
j--;
flag= true;
}
if (j == -1) { //证明数组从0——i中arr[i]值最小,放到arr[0]
arr[0] = data;
} else if (flag) {
arr[j+1] = data;
}
}
}
int main() {
int arr[6] = {99,3,5,8,2,9};
insertSort(arr, 6);
for (int i = 0; i < 6; i++) {
cout << arr[i] << " ";
}
}
``
![在这里插入图片描述](https://img-blog.csdnimg.cn/0c54d55c87ee41aa8b9d55c71b19a053.png#pic_center)
插入排序(C++)
最新推荐文章于 2024-07-21 11:20:00 发布