2路插入排序.pptVIP

  • 42
  • 0
  • 约1.58千字
  • 约 13页
  • 2017-09-29 发布于浙江
  • 举报
2路插入排序

二路插入排序;基本思想 直接插入算法虽然简单,但当记录数量n很大时,则比较次数将大大增加,对于有序表(限于顺序存储结构),为了减少关键字的比较次数,可采用二路插入排序。 二路插入排序的基本思想是:用二分查找法在有序表中找到正确的插入位置,然后移动记录,空出插入位置,再进行插入。 ;2-路插入排序是在折半插入排序的基础上再改进,其目的是减少排序过程中移动记录的次数,但为此需要n个记录的辅助空间。;具体做法:另设一个和L.r同类型的数组d,首先将L.r[1]赋值给d[1],并将d[1]看成是在排好序列中处于中间位置的记录,然后从L.r中第2个记录起依次插入到d[1]之前或之后的有序序列中。先将待插记录的关键字和d[1]的关键字进行比较,若L.r[i].keyd[1].key,则将L.r[i]插入到d[1]之前的有序表中。反之,则将L.r[i]插入到d[1]之后的有序表中。在实现算法时,??将d看成是一个循环向量,并设两个指针first和final分别指示排序过程中得到的有序序列中的第一个记录和最后一个记录在d中的位置。 ;2.例10-2。现有17、29、3、87、25、64、126,7位数字,现对这些数字由大到小进行排序。 ; 1 2 3 4 5 6 7 17?? 29 3 87

文档评论(0)

1亿VIP精品文档

相关文档