排序算法总结
#include <iostream> #include <list> #include <sstream> #include <map> #include <set> #include <queue> #include <map> #include <functional> #include <algorithm> #include <stack> #include <ctime> using namespace std; //冒泡排序(n2) //相邻元素交换,未交换结束,每次减1 void buble_sort(int a[], int n) { bool flag; do { flag = false; for (int j = 1; j < n; j++) { if (a[j - 1]>a[j]) { swap(a[j], a[j - 1]); flag = true; } } n--; } while (flag); } //插入排序,有序序列和无序序列,o(n*2),稳定 //从1开始依次和前面的有序序列相比,找到合适的插入位置插入 void insert_sort(int a[], int n) { int t,i,j; for (i = 1; i < n;i++) { t = a[i];//要插入的位置 for (j = i; j>0&&a[j-1]>t;j--)