插入排序
Posted lvvly
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了插入排序相关的知识,希望对你有一定的参考价值。
对于少量元素的排序,插入排序是一个有效的算法。插入排序的工作方式像许多人排序一手扑克牌。开始时,我们的左手为空并且桌子上的牌面向下。然后我们每次从桌上拿走一张牌并将它插入左手中正确的位置。为了找到一张牌的正确位置,我们从右到左将它与已在手中的每张牌进行比较。拿在左手上的牌总是排序好的。
#include <iostream> #include <vector> using namespace std; vector<int> insert(vector<int>& nums); int main() { vector<int> nums; nums.push_back(3); nums.push_back(44); nums.push_back(38); nums.push_back(5); nums.push_back(47); nums.push_back(15); nums.push_back(36); nums.push_back(26); nums.push_back(27); nums.push_back(2); nums.push_back(46); nums.push_back(4); nums.push_back(19); nums.push_back(50); nums.push_back(48); insert(nums); int size=nums.size(); for(int i=0;i<size;i++) cout<<nums[i]<<endl; return 0; } vector<int> insert(vector<int>& nums) { int size=nums.size(); for(int i=1;i<size;i++) { int temp=nums[i]; for(int n=i-1,m=i;n>=0;n--,m--) { if(temp>=nums[n]) { nums[n+1]=temp; break; } else { nums[m]=nums[n]; if(n==0) nums[n]=temp; } } } return nums; }
以上是关于插入排序的主要内容,如果未能解决你的问题,请参考以下文章
代码片段使用复杂的 JavaScript 在 UIWebView 中插入 HTML?
将代码片段插入数据库并在 textarea 中以相同方式显示
初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段
初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段