一趟排序结束后不一定能够选出一个元素放在其最终位置上的是()。
A.堆排序
B.冒泡排序
C.快速排序
D.希尔排序
简单选择排序,能够取出当前无序序列中最(小or大)值与第一位置的元素互换位置。
堆排序每趟总能选出一个最值位于根节点。
冒泡排序总是两两比较选出一个最值位于数组前面。
快速排序选出的枢轴在一趟排序中就位于了它最终的位置
插入排序(直接、二分)不一定会位于最终的位置,因为不确定后面插入的元素对于前面的元素是否产生影响。
希尔排序(本质也是插入排序)只在子序列中直接插入排序。所以不能确定。
二路归并排序除非在缓存区一次放入所有的序列(这样得不偿失),否则不能确定最终位置。
所以只有 简单选择排序、快速排序、冒泡排序、堆排序