词条 | 插入类排序法 |
释义 | 主要分为两种: ① 简单插入排序法; 基本思想:所谓插入排序,是指将无序序列中的各元素依次插入到已经有序的线性表中。 一般来说,假设线性中前j-1元素已经有序,现在要将线性表中第j个元素插入到前面的有序子表中,插入过程如下: 道德将第j个元素放到一个变量T中,然后从有序子表的最后一个元素(即线性表中第j-1个元素)开始,往前逐个与T进行比较,将大于T的元素均依次向后移动一个位置,直到发现一个元素不大于T为止,此时就将T(即原线性表中的第j个元素)插入到刚移出的空位置上,有序子表的长度就变为j了。效率与冒泡法相同 在最坏情况下,简单插入排序需要n(n-1)/2次比较。 ② 希尔排序法; 基本思想:将整个无序序列分割成若干小的子序列分别进行插入排序。 子序列的分割方法如下: 将相隔某个增量H的元素构成一个子序列。在排序过程中,逐次减小这个增量,最后当H减到1时,进行一次插入排序,排序就完成。增量序列一般取h=n/2k(k=1,2,…【log2n】,其中n为待排序序列的长度。 其效率与增量序列有关。 在最坏情况下,需要的比较次数为O(N^1.5)。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。