折半排序建立在折半查找的基础上的一种插入排序.
假定:8 3 4 2 1 5 7 6 0 9
1.排3,则很自然变成3 8 4 2 5 1 7 6 0 9
2.排4 3 4 8 2 5 1 7 6 0 9
...
假定已经排成2 3 4 5 8 1 7 6 0 9
那接下来就是排1(a[5])
1.首先判断a[(0+4)/2]==a[2]>a[5]
2 要从下面找,即a[(0+1)/2]=a[0]>a[5]
3.已经到最底步,故a[5]应该排在a[0]的位置,所以要使a[0]---a[4]往前移,再插入.变成1 2 3 4 5 8 7 6 0 9
接下来的步骤都是这样.