数据结构 插入排序
2017-12-15 10:41
309 查看
#include<iostream>//引入输入输出流 #include<stdlib.h>//使用库函数srand和rand #include<time.h>//使用库函数time using namespace std; const int Max=10; void Creat(int r[],int n);//定义数组函数 void InsertSort(int r[],int n); int main() { int a[Max+1]={0},b[Max+1]={0};//定义一个可容纳Max+1个元素的整数型数组a和b,并将数组里的所有元素赋值为0 int i=0; Creat(a,Max);//创建数组 for(i=1;i<=Max;i++)//将数组a复制一份到数组b b[i]=a[i]; cout<<"对于无序序列:"; for(i=1;i<Max;i++) cout<<b[i]<<" "; cout<<endl; InsertSort(b,Max);//对数组进行排序 cout<<"执行直接插入排序后,元素为:"; for(i=1;i<=Max;i++)//打印数组 cout<<b[i]<<" "; cout<<endl; return 0; }
void Creat(int r[],int n)//引用数组函数 { int i=0; srand(time(NULL)); for(i=1;i<=n;i++) r[i]=1+rand()%100;//待排序记录为二位数 } void InsertSort(int r[],int n)//0号单元用作暂存单元与监视哨 {int i,j; for( i=2;i<=n;i++) { r[0]=r[i]; for( j=i-1;r[0]<r[j];j--) r[j+1]=r[j];//记录后移 r[j+1]=r[0]; } }
相关文章推荐
- 直接插入排序 - 数据结构和算法90
- 数据结构(冒泡、快速、插入等排序)PHP && JAVA --面试技巧
- 数据结构-插入排序-直接插入排序
- 【数据结构】排序算法(一)之直接插入排序,冒泡排序
- 【数据结构和算法】排序算法之三:插入排序
- javascript数据结构之双链表插入排序实例详解
- 【数据结构----笔记4】插入排序算法之【折半插入排序算法】
- 第15周 数据结构例程——插入排序之直接插入排序
- 算法和数据结构---排序---插入排序
- 【数据结构】排序算法(一)之直接插入排序,冒泡排序
- 数据结构面试之十——排序1(直接插入、希尔、冒泡、直接选择排序)
- 【数据结构】直接插入排序
- 数据结构之直接直接插入排序
- 数据结构 - 2-路插入排序 具体解释 及 代码(C++)
- 数据结构-冒泡排序和直接插入排序
- 数据结构-插入排序之直接插入排序
- 数据结构排序之直接插入排序
- 数据结构之单向链表操作1-(插入,删除,交换,反转,排序等操作)
- 数据结构-排序算法之插入排序(直接插入,二分插入,希尔,表插入)
- 数据结构(三) 单链表的排序 ----按插入方法排序(带头节点)