什么是希尔排序?其排序过程是怎样的?如果你对这些问题还不了解,那就赶紧来看看高顿小编整理的2024计算机考研数据结构高频考点希尔排序的具体信息吧!
2024计算机考研数据结构高频考点:希尔排序
  一、含义
  希尔排序是插入排序的一种又称“缩小增量排序”,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。
  希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。
  二、排序过程
  缩小增量
  希尔排序属于插入类排序,是将整个有序序列分割成若干小的子序列分别进行插入排序。
  排序过程:先取一个正整数d1数组元素放一组,组内进行直接插入排序;然后取d2
  三趟结果
  04 13 27 38 49 49 55 65 76 97
  Shell排序
  Shell排序的算法实现:
  1.不设监视哨的算法描述
  void ShellPass(SeqList R,int d)
  {//希尔排序中的一趟排序,d为当前增量
  for(i=d+1;i
  if(R[i].key
  R[0]=R<i>;j=i-d;//R[0]只是暂存单元,不是哨兵
  do{//查找R的插入位置
  R[j+d]=R[j];//后移记录
  j=j-d;//查找前一记录
  }while(j&gt;0&&R[0].key
  R[j+d]=R[0];//插入R到正确的位置上
  }//endif
  本文内容整理自网络,仅供参考。
  以上就是【2024计算机考研数据结构高频考点:希尔排序】的全部内容,如果你想要学习更多考研方面的知识,欢迎大家前往高顿考研考试频道!
  小编为2024考研的小伙伴们准备了丰富的学习资料,点击下方蓝色图片即可领取哦~
考研备考资料


展开全文