参考答案和解析
答案:A
解析:
A项,由于单链表是非随机存取的存储结构,遍历链表和求链表的第i个结点都必须从头指针出发寻找,其时间复杂度为0(n);B项,由于已知待插入结点的前驱结点,可以直接实现插入,其时间复杂度为0(1);CD两项,可以直接实现删除操作,其时间复杂度为O(1)。
更多“在具有n个结点的单链表中,实现()的操作,其算法的时间复杂度都是O(n)。”相关问题
  • 第1题:

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

    (53) A.O(1)

    B.O(n)

    C.O(nlogn)

    D.O(n2)


    正确答案:B

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


     

  • 第2题:

    在具有n个结点的单链表上查找值为y的元素时,其时间复杂度为()。

    A、O(n)

    B、O(1)

    C、O(n2)

    D、O(n-1)


    参考答案:A

  • 第3题:

    在具有n个结点的单链表中,实现()的操作,其算法的时间复杂度是O。

    A.求链表的第i个结点

    B.在地址为P的结点之后插入一个结点

    C.删除表头结点

    D.删除地址为P的结点的后继结点


    正确答案:A

  • 第4题:

    单链表插入操作的平均时间复杂度为()

    A、O(1)

    B、O(n)

    C、O(n*n)

    D、O(n*n*n)


    参考答案:B

  • 第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(n)

    C.O(n2)

    D.O(nlogn)


    正确答案: B

  • 第7题:

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


    答案:A
    解析:

  • 第8题:

    要访问具有n个结点的单链表中任意一个结点的时间复杂度是()


    正确答案:O(n)

  • 第9题:

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

    • A、O(1)
    • B、O(n)
    • C、O(n2)
    • D、O(nlog2n)

    正确答案:B

  • 第10题:

    对一个具有n个元素的线性表,建立其单链表的时间复杂度为()

    • A、O(n)
    • B、O(1)
    • C、O(n2
    • D、O(nlog2n)

    正确答案:A

  • 第11题:

    在一个单链表中,若要在p所指向的结点之前插入一个新结点,则此算法的时间复杂度的量级为()。

    • A、O(n)
    • B、O(n/2)
    • C、O(1)
    • D、O(n1/2

    正确答案:A

  • 第12题:

    填空题
    要访问具有n个结点的单链表中任意一个结点的时间复杂度是()

    正确答案: O(n)
    解析: 暂无解析

  • 第13题:

    创建一个包括n个结点的有序单链表的时间复杂度是()。

    A.O(1)

    B、O(n)

    C、O(n2)

    D、O(nlog2n)


    参考答案:C
    解释:单链表创建的时间复杂度是O(n),而要建立一个有序的单链表,则每生成一个新结点时需要和已有的结点进行比较,确定合适的插入位置,所以时间复杂度是O(n2)。

  • 第14题:

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

    A、O(1)

    B、O(n)

    C、O(n的平方)

    D、O(log2n)


    参考答案:B

  • 第15题:

    在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是()。A.访问第i个结点(1<=i<=n)和求第i个结点

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

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

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

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

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


    正确答案:A

  • 第16题:

    在长度为n的()上删除第一个元素,其算法的时间复杂度为O(n)。

    A.只有表头指针的不带表头结点的循环单链表

    B.只有表尾指针的不带表头结点的循环单链表

    C.只有表尾指针的带表头结点的循环单链表

    D.只有表头指针的带表头结点的循环单链表


    参考答案:A

  • 第17题:

    ● 有n个结点的有序单链表中插入一个新结点并保持有序的运算的时间复杂度为( )。

    A. O(1)

    B. O(logn)

    C. O(n)

    D. O(n2)


    正确答案:C

  • 第18题:

    ●(37)有n个结点的有序单链表中插入一个新结点并保持有序的运算的时间复杂度为(37)。

    (37)A.O(1)

    B. O(logn)

    C.O(n)

    D. O(n2)


    正确答案:C

  • 第19题:

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

    • A、O(1)
    • B、O(n)
    • C、O(m)
    • D、O(m+n)

    正确答案:C

  • 第20题:

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

    • A、O(1)
    • B、O(n)
    • C、O(n2)
    • D、O(nlog2n)

    正确答案:B

  • 第21题:

    在一个单链表中,若要在p所指向的结点之前插入一个新结点,则此算法的时间复杂性的量级为()

    • A、O(n)
    • B、O(1)
    • C、O(n2
    • D、O(n/2)

    正确答案:A

  • 第22题:

    在n个结点的单链表中,查找第i个元素,和修改第i个元素的时间复杂度都是()。

    • A、O(1)
    • B、O(n)
    • C、O(nn)
    • D、都不对

    正确答案:B

  • 第23题:

    顺序表各种算法,都有其时间复杂度,在n个结点的顺序表中,删除第i(1≤i≤n)个结点的时间复杂度是()。

    • A、O(1)
    • B、O(n)
    • C、O(nlog2n)
    • D、O(log2n2)

    正确答案:B