复杂排序:希尔排序、堆排序、归并排序、快速排序。
冒泡排序算法
因为在冒泡排序中要用到顺序表结构和数组两元素的交换,先把这些写成函数
?...所谓的基本有序,就是小的关键字基本在前,大的基本在后面,不大不小的基本在中间,如{9,1,5,8,3,7,5,6,2},变成{2,1,3,6,4,7,8,9}这样就是基本有序,但是像{1,5,9,7,8,2,4,6...堆排序算法核心
如何由一个无序序列构建成一个堆
如何在输出堆顶元素后,调整剩余元素成一个新的堆
堆排序算法代码实现
?...6.2归并排序的实现(迭代非递归实现)
用迭代实现的话,可以从最小的序列开始归并直到完成。
?...归并的迭代实现总结
非递归的迭代方法,避免了递归时深度为log2n的栈空间,空间只是用到申请归并临时用的TR数组,因此空间复杂度为O(n).