采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1, i-2, ...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5.2.4.6.1.3}进行从小到大排序,则需要进行(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进行从小到大排序,所需的比较次数最多。A.9B.10C.12D.13

题目

采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1, i-2, ...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5.2.4.6.1.3}进行从小到大排序,则需要进行(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进行从小到大排序,所需的比较次数最多。

A.9

B.10

C.12

D.13


相似考题
更多“采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个 ”相关问题
  • 第1题:

    采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数已经排好序,将第i个整数依次和第i-1,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行(请作答此空)次整数之间的比较。对于该排序算法,输入数据具有( )特点时,对整数进行从小到大排序,所需的比较次数最多。

    A. 9
    B. 10
    C. 12
    D. 13

    答案:C
    解析:
    采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序的过程如表所示。

    综上,元素间共比较12次。从上表中的第4步可看出,当待插入的元素比已排序部分的所有元素都要小时,需要比较和移动的元素最多,因此当输入数据序列正好从大到小排列,而需要将其从小到大排序时,元素间的比较次数最多。

  • 第2题:

    采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1,i-2,...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行( )次整数之间的比较。

    A.9
    B.10
    C.12
    D.13

    答案:C
    解析:
    这种排序法思想很简单,例如这6个数,先用2和之前的数比较一次,得出序列{2,5},然后再用4和5,2分别比较一次,得出序列{2,4,5},当6插入时只需要和5比一次即可,得到新序列{2,4,5,6},以此类推,最终共比较12次,得到从小到大的最终序列{1,2,3,4,5,6},故正确答案为C。

  • 第3题:

    在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是

    A.访问第i个结点(1≤i≤n)

    B.在第i个结点后插入一个新结点(1≤i≤n)

    C.删除第i个结点(1≤i≤n)

    D.将n个结点从小到大排序


    访问第 i 个结点( 1 ≤ i ≤ n )和求第 i 个结点的直接前驱( 2 ≤ i ≤ n )

  • 第4题:

    对n个关键码构成的序列采用直接插入排序法进行升序排序的过程是:在插入第i个关键码Ki时,其前面的i-1个关键码己排好序,因此令Ki与Ki-1、Ki-2、...,依次比较,最多到K1为止,找到插入位置并移动相关元素后将Ki插入有序子序 列的适当位置,完成本趟(即第i-1趟)排序。以下关于直接插入排序的叙述中,正确的是( )。

    A. 若原关键码序列已经升序排序,则排序过程中关键码间的比较次数最少
    B.若原关键码序列已经降序排序,则排序过程中关键码间的比较次数最少
    C.第1趟完成后即可确定整个序列的最小关键码
    D.第1趟完成后即可确定整个序列的最大关键码

    答案:A
    解析:

  • 第5题:

    在 n 个结点的顺序表中,算法的时间复杂度是 O(1) 的操作是()

    A.访问第 i 个结点(1≤ i≤ n)和求第 i 个结点的直接前驱(2≤ i≤ n)

    B.在第 i 个结点后插入一个新结点(1≤ i≤ n)

    C.删除第 i 个结点(1≤ i≤ n)

    D.将 n 个结点从小到大排序


    访问第i个结点( )和求第i个结点的直接前驱()