第十章 内部排序.doc

第十章 内部排序.doc

ID:28848131

大小:36.00 KB

页数:15页

时间:2018-12-14

第十章 内部排序.doc_第1页
第十章 内部排序.doc_第2页
第十章 内部排序.doc_第3页
第十章 内部排序.doc_第4页
第十章 内部排序.doc_第5页
资源描述:

《第十章 内部排序.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、第十章内部排序10.23voidInsert_Sort1(SqList&L)//监视哨设在高下标端的插入排序算法{  k=L.length;  for(i=k-1;i;--i)//从后向前逐个插入排序    if(L.r[i].key>L.r[i+1].key)    {      L.r[k+1].key=L.r[i].key;//监视哨      for(j=i+1;L.r[j].key>L.r[i].key;++j)        L.r[j-1].key=L.r[j].key;//前移      L.r[j-1].key=L.r[k+1].key;//插入    }}//Inser

2、t_Sort110.24voidBiInsert_Sort(SqList&L)//二路插入排序的算法{  intd[MAXSIZE];//辅助存储  x=L.r.key;d=x;  first=1;final=1;  for(i=2;i<=L.length;i++)  {    if(L.r[i].key>=x)//插入前部    {      for(j=final;d[j]>L.r[i].key;j--)        d[j+1]=d[j];      d[j+1]=L.r[i].key;      final++;    }    else//插入后部    {      fo

3、r(j=first;d[j]

4、ey=0;L.r[0].next=1;  L.r[1].next=0;//建初始循环链表  for(i=2;i<=L.length;i++)//逐个插入  {    p=0;x=L.r[i].key;    while(L.r[L.r[p].next].key

5、.r[p].next;    q=L.r[p].next;    if(p!=i)    {      L.r[p]<->L.r[i];      L.r[i].next=p;    }    p=q;  }//for}//SLInsert_Sort10.26voidBubble_Sort1(inta[],intn)//对包含n个元素的数组a进行改进的冒泡排序{  change=n-1;//change指示上一趟冒泡中最后发生交换的元素  while(change)  {    for(c=0,i=0;ia[i+1])      {   

6、     a[i]<->a[i+1];        c=i+1;//c指示这一趟冒泡中发生交换的元素      }    change=c;  }//while}//Bubble_Sort110.27voidBubble_Sort2(inta[],intn)//相邻两趟是反方向起泡的冒泡排序算法{  low=0;high=n-1;//冒泡的上下界  change=1;  while(lowa[i+1])      {        a[

7、i]<->a[i+1];        change=1;      }    high--;//修改上界    for(i=high;i>low;i--)//从下向上起泡      if(a[i]a[i-1];        change=1;      }    low++;//修改下界  }//while}//Bubble_Sort210.28voidBu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。