首页 > 编程语言 > 详细

插入排序

时间:2016-03-03 22:49:25      阅读:330      评论:0      收藏:0      [点我收藏+]
大二下学期重新学习c++;
写了一个选择排序;
选择排序(Selection sort)是一种简单直观的排序算法

它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。
选择排序是不稳定的排序方法(比如序列[5, 5, 3]第一次就将第一个[5]与[3]交换,导致第一个5挪动到第二个5后面)。
运行时间和输入无关 ----
为了找出最小的元素而扫描一遍数组并不能为下一边扫描提供什么信息。 这种性质在某些情况下是缺点,因为使用选择排序的人可能会发现,一个已经有序的数组或者是主键全部相等的数组和一个元素随机排列的数组所用的排序时间一样长










1
#include"iostream" 2 #define N 10 3 using namespace std; 4 void excha(int &a,int &b); 5 int main(){ 6 int a[N]={0,2,1,3,4,5,6,7,8,9}; 7 int min; 8 int i,j; 9 for(int i=0;i<N;i++){ 10 min=i; 11 for(int j=i+1;j<N;j++){ 12 if(a[j]<a[min]) 13 min=j; 14 } 15 excha(a[i],a[min]); 16 } 17 for(int i=0;i<N;i++){ 18 cout<<a[i]<<" "; 19 } 20 return 0; 21 } 22 void excha(int &a,int &b){ 23 int c; 24 c=a; 25 a=b; 26 b=c; 27 }

 

插入排序

原文:http://www.cnblogs.com/hutonm/p/5240345.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!