插入排序:保证左侧有序,每次遍历到一个元素的时候,将其放在左侧合适的位置处。
#include <iostream>
#include <vector>
using namespace std;
void insertionSort(vector<int>& arr){
for(int i = 1; i < arr.size(); ++i){
for(int j = i; j > 0; --j){
if(arr[j] < arr[j-1])
swap(arr[j], arr[j-1]);
else
break;
}
}
}
int main(){
vector<int> a{4,3,2,1};
insertionSort(a);
for(auto c : a)
cout << c << endl;
return 0;
}
希尔排序待写