熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 數據結構 >> 正文

第六部分 內部排序[2]

2013-11-15 15:41:49  來源: 數據結構 

    (二)插入排序
  
  直接插入排序
  
  void InsertSort(Sqlist &L){//對順序表L作直接插入排序
  for(i=;i<=Llength;++i)
  if(LT(Lr[i]keyLr[i]key))
  {//<需將Lr[i]插入有序子表復制為哨兵
  Lr[]=Lr[i];
  Lr[i]=Lr[i];
  for(j=i;LT(Lr[]keyLr[j]key);j)
  Lr[j+]=Lr[];
  }
  }//InsertSort
  
  折半插入排序
  
  void BinsertSort(SqList &L){//對順序表L作折半插入排序
  for(i=;i<=Llength;++i){
  Lr[]=Lr[i];
  low=; high=i;
  while(low<=high){
  m=(low+high)/;
  if(LT(Lr[]lkeyLr[m]key))
  high=m;
  else low=m+;
  }//while
  for(j=i;j>=high+;j)
  Lr[j+]=Lr[j]j;
  Lf[high+]=Lr[];
  }//for
  }//BinsertSort

    返回《數據結構》考研復習精編

[]  []  []  []  []  []  


From:http://tw.wingwit.com/Article/program/sjjg/201311/23817.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.