首页 > 代码库 > 插入排序之算法研究
插入排序之算法研究
插入排序:有n个数,第i个数前面都是有序的话,那么i插入到排好的系列中就非常简单,和前面的数一一比较就ok了,对于一个序列,那么从第二个数开始和前面数比较,排好前面2个数之后来把第三个数插入到前面2个数中就非常简单了,第四个数亦是如此,以此类推.....................
#include<iostream> #include<vector> using namespace std; //void insert_sort(vector<int> &a) //{ // int temp; // size_t n = a.size(); // for ( int i= 1; i < n; i++) // { // for (int j = i - 1; j >= 0 && a[j]>a[j + 1]; j--) // { // temp = a[j]; // a[j] = a[j + 1]; // a[j+ 1] = temp; // } // } //} void insert_sort2(vector<int> &a) { int temp; size_t n = a.size(); for (int i = 1; i < n; i++) { for (int j = i - 1; j >= 0; j--) { if (a[j]>a[j + 1]) { temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } } } int main() { vector<int> a = { 5,9, 77, 56, 6, 8, 1, 5,100 }; insert_sort2(a); for (const auto i : a) cout << i << " " << endl; return 0; }
插入排序:有n个数,第i个数前面都是有序的话,那么i插入到排好的系列中就非常简单,和前面的数一一比较就ok了,对于一个序列,那么从第二个数开始和前面数比较,排好前面2个数之后来把第三个数插入到前面2个数中就非常简单了,第四个数亦是如此,以此类推.....................
插入排序之算法研究
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。