摘要:
一、什么是排序算法的稳定性 假设在数列中存在a[ i ] = a[ j ]。若在排序之前,a[ i ]在a[ j ]前面;并且排序之后,a[ i ]仍然在a[ j ]前面。则这个排序算法是稳定的! 二、选择哪种排序算法 (1)当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排 阅读全文
摘要:
一、基本思想 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以使整个序列有序。 在分割的过程中,枢纽元的选择至关重要。原因如下: (1)两部分数据是以枢纽元为分界点,小于等于枢纽元 阅读全文