插入排序
#include <iostream>
#include <algorithm>
using namespace std;
void insertionSort(int arr[], int n){
for(int i=1;i<n;i++){
// 寻找元素arr[i]最佳插入位置
for(int j=i;j>0 && arr[j]<arr[j-1];j--)
swap(arr[j], arr[j-1]);
}
}
int main() {
int a[10] = {10, 9, 8, 7 ,12};
insertionSort(a, 5);
for(int i=0;i<5;i++)
cout<<a[i]<<" ";
return 0;
}
#include <iostream>
#include <algorithm>
using namespace std;
void insertionSort(int arr[], int n){
for(int i=1;i<n;i++){
// 寻找元素arr[i]最佳插入位置
int e = arr[i];
int j; // 保存元素e应该插入的位置
for(j = i;j>0 && arr[j-1]>e;j--)
arr[j] = arr[j-1];
arr[j] = e;
}
}
int main() {
int a[10] = {10, 9, 8, 7 ,12};
insertionSort(a, 5);
for(int i=0;i<5;i++)
cout<<a[i]<<" ";
return 0;
}