更多“对于n元素的向量,将其建立为一个有序单链表的时间复杂度为()。A.O(1)B.O(n)C.O(n2)D.O(nlog2n) ”相关问题
  • 第1题:

    使用二分查找算法在一个有序序列中查找一个元素的时间复杂度为()

    A.O(N)

    B.O(logN)

    C.O(N*N)

    D.O(N*logN)


    正确答案:B

  • 第2题:

    下列程序段的时间复杂度为()。

    A.O(n)

    B.O(n-1)

    C.O(n2)

    D.O(log2n)


    正确答案:B

  • 第3题:

    将长度为n的单链表链接到长度为m的单链表之后的算法的时间复杂度是()。

    A.O(1)

    B.O(n)

    C.O(m)

    D.O(m+n)


    参考答案:C

  • 第4题:

    对于快速排序,元素有序排列时的时间复杂度为(57)。

    A.O(log2n)

    B.O(n)

    C.O(nlog2n)

    D.O(n2)


    正确答案:D
    解析:对于快速排序,元素有序排列是其最坏情况,时间复杂度为O(n2)。当每次划分都可以将待排序列分为均匀的两部分时,进行的排序趟数最少,时间复杂度为O(nlog2n)。

  • 第5题:

    在具有n个结点的有序单链表中插入一个新结点并使链表仍然有序的时间复杂度是(53)。

    A.O(1)

    B.O(n)

    C.O(nlogn)

    D.O(n2)


    正确答案:B
    解析:本题主要考核有序单链表上的插入操作及算法分析。对数据结构的任何操作都不能改变其原有的结构特性。因此,在有序单链表中插入一个新结点后,仍然要保持它的有序性。插入操作的关键是查找插入位置,主要时间也是花在插入位置的查找上。n个结点的单链表,有,n+1个可能插入的位置,即第一个结点之前和每一个结点之后。在第一个结点之前插入,需比较一次;在第一个结点之后插入需比较两次;……;在第,n个结点之后插入需查找次。如果在每一个位罩上作插入的概率相等,即则在有序单链表上查找插入位置的平均比较次数为:

  • 第6题:

    n个元素进行冒泡排序的过程中,最好情况下的时间复杂度为______。

    A.O(1)

    B.O(1og2n)

    C.O(n2)

    D.O(n)


    正确答案:D
    解析:最好情况下至少需要一趟排序,即比较n-1次。选项D为本题正确答案。

  • 第7题:

    向一个长度为N的顺序表中插入—个新元素的平均时间复杂度为(25)。

    A.O(N)

    B.O(1)

    C.O(logN)

    D.O(N2)


    正确答案:A
    解析:向一个长度为N的顺序表中插入一个新元素的平均比较次数为N/2,所以平均时间复杂度为O(N)。

  • 第8题:

    顺序查找一个具有n个元素的线性表,二分查找一个具有n个元素的有序表,其时间复杂性为______。

    A.O(n)

    B.O(log2n)

    C.O(n2)

    D.O(nlog2n)


    正确答案:B

  • 第9题:

    在一个具有n个结点的有序单链表中插入一个新结点,并使其仍然有序的时间复杂性为______。

    A.O(1)

    B.O(n)

    C.O(n2)

    D.O(10g2n)


    正确答案:B

  • 第10题:

    二分查找一个具有n个元素的有序表,其时间复杂度为______。

    A.O(n)

    B.O(n2)

    C.O(log2n)

    D.(nlog2n)


    正确答案:C
    解析:二分法中查找时间t与查找次数m呈比例关系,2m=n(n为极限查找个数),m=log2n,所以查找时间复杂度与log2n相关。

  • 第11题:

    设有n个元素的向量,逐个输入其中的元素值,建立一个有序单链表的时间复杂度是(51)。

    A.O(1)

    B.O(n)

    C.O(n2)

    D.O(nlog2n)


    正确答案:C
    解析:由于需要进行逐个查找插入位置,逐个输入其中的元素值,所以建立一个有序单链表的时间复杂度为:1+2+3+…+n-1=n*(n-1)/2=O(n2)。

  • 第12题:

    对n个元素进行快速排序时,最坏情况下的时间复杂度为______。

    A.O(log2n)

    B.O(n)

    C.O(nlog2n)

    D.O(n2)


    正确答案:D
    解析:最坏情况发生在每次划分过程产生的两个区间分别包含n-1个元素和1个元素的时候。其时间复杂度为0(n2)。

  • 第13题:

    一个算法的语句执行次数为(2n2+2nlog2n+4n-7),则其时间复杂度为()。

    A.O(n2)

    B.O(nlog2n)

    C.O(n)

    D.O(2n2)


    正确答案:A

  • 第14题:

    从二叉搜索树中查找一个元素时,其时间复杂度大致为______。

    A.O(n)

    B.O(1)

    C.O(log2n)

    D.O(n2)


    正确答案:C

  • 第15题:

    在一个长度为n的顺序表的表尾插入一个新元素的渐进时间复杂度为

    A.O(n)

    B.O(1)

    C.O(n2)

    D.O(log2n)


    正确答案:B
    解析:在一个长度为n的顺序表的表尾插入一个新元素不需要进行节点移动,直接插入即可。对应的渐进时间复杂度为O(1) 。

  • 第16题:

    对n个元素进行快速排序时,最坏情况下的时间复杂度为(55)。

    A.O(log2n)

    B.O(n)

    C.O(nlog2n)

    D.O(n2)


    正确答案:D
    解析:快速排序在最坏情况下的时间复杂度退化到一般的交换排序,即为O(n2)。

  • 第17题:

    冒泡排序的时间复杂度为A.O(n) B.O(n2) C.O(log2n) D.O(nlog2n)


    正确答案:B
    冒泡排序的基本概念是:以升序为例,依次比较相邻的两个数,将小数放在前面,大数放在后面。第一趟排序过程是这样的,首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。这样一次排序后,最后一个数为所有数中的最大数。第二趟排序重复以上过程,仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到最大数前的一对相邻数,将小数放前,大数放后,第二趟结束,在倒数第二个数中得到一个新的最大数。如此下去,直至最终完成排序。
    冒泡排序的时间复杂度是指执行冒泡排序算法所需要的时间。冒泡排序算法最好的时间复杂度为所要排序的数列为正序,即在执行排列算法之前就已经达到目标的顺序。这样只需要执行一次排序算法,算法所需要进行数据比较的次数为n-1次。冒泡排序算法最差的时间复杂度为当前所要进行排列的数列顺序与目标数列的顺序相反。算法所需要进行数据比较的次数为n(n-1)/2=O(n2)。算法的平均时间复杂度为O(n2)。

  • 第18题:

    向具有n个结点的堆中插入一个新元素的时间复杂度为(56)。

    A.O(1)

    B.O(n)

    C.O(log2n)

    D.O(nlog2n)


    正确答案:C
    解析:向具有n个结点的堆中插入一个新元素,只需要沿着堆的一个分支比较下去,复杂度也就是堆的高度O(log2n)。

  • 第19题:

    用归并排序方法,在最坏情况下的时间复杂度为( )。

    A.O(n+1)

    B.O(n2)

    C.O(log2n)

    D.O(nlog2n)


    正确答案:D
    解析:一个完整的归并排序需要进行[log2n)次,实现归并排序需要和代派序列元素个数等量的辅助空间,其时间复杂度为O(nlog2n)。

  • 第20题:

    向堆中插入一个元素的时间复杂度为________。

    A.O(log2n)

    B.O(n)

    C.O(1)

    D.O(nlog2n)


    正确答案:A

  • 第21题:

    若总是以待排序列的第一个元素作为基准元素进行快速排序,那么最好情况下的时间复杂度为(65)。

    A.O(log2n)

    B.O(n)

    C.O(nlog2n)

    D.O(n2)


    正确答案:C
    解析:本题考查快速排序算法。对于快速排序,元素有序排列是其最坏情况,时间复杂度为O(n2)。当每次划分都可以将待排序列分为均匀的两部分时,进行的排序趟数最少,时间复杂度为O(nlog2n)。

  • 第22题:

    在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂性为______。

    A.O(1)

    B.O(n)

    C.O(n2)

    D.O(log2n)


    正确答案:B

  • 第23题:

    在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是()

    A.O(1)

    B.O(n)

    C.O(n2)

    D.O(nlogn)


    正确答案: B