03_插入排序

来源:互联网 发布:mac怎么给iphone换铃声 编辑:程序博客网 时间:2024/05/16 19:00
#include <iostream>#include <vector>using namespace std;//1 元素拿出来//2 符合条件的元素后移动template<typename Comp>void InsertionSort(vector<Comp> &a){int i = 0;int j = 0;int k = -1;for (i = 1; i < a.size(); i++){Comp outElment = a[i];  //元素拿出来for(j = i-1; j >= 0 && a[j] > outElment; j--){a[j+1] = a[j];//元素后移动k = j;}a[k] = outElment;//元素插入}}void main(){vector<int> a;a.push_back(8);a.push_back(3);a.push_back(6);a.push_back(1);cout << "排序前:";for(int i = 0; i < a.size(); i ++)cout << a[i] << " ";cout << endl;InsertionSort(a);cout << "排序后:";for(int i = 0; i < a.size(); i ++)cout <<  a[i] << " ";cout << endl;system("pause");}

原创粉丝点击