问题:

对待排序的数组r[1..n]中的元素进行直接插入排序,得到一个有序的(从小到大)的数组r[1..n]。

算法思想:

1、设待排序的记录存放在数组r[1..n]中,r[1]是一个有序序列。

2、循环n-1次,每次使用折半查找法,查找r[i](i=2,..,n)在已排好的序列r[1..i-1]中的插入位置,然后将r[i]插入表长为i-1的序列r[1..i-1],直到将r[n]插入表长为n-1的有序序列r[1..n-1],最后得到一个表长为n的有序序列。

图解:

数据结构之折半插入排序图文详解及代码(C++实现)

代码:

数据结构之折半插入排序图文详解及代码(C++实现)

数据结构之折半插入排序图文详解及代码(C++实现)

运行结果:

数据结构之折半插入排序图文详解及代码(C++实现)

相关文章:

  • 2021-11-29
  • 2021-05-17
  • 2022-02-15
  • 2021-10-24
  • 2021-09-07
  • 2021-06-27
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-10-20
  • 2021-12-11
  • 2021-12-31
  • 2021-06-15
  • 2021-08-18
  • 2021-06-27
相关资源
相似解决方案