如果对含有n(n>1)个元素的线性表的运算只有4种:删除第一个元素 删除最后一个元素 在第一个元素前

学历类 元素,结点,指针 已帮助 人

如果对含有n(n>1)个元素的线性表的运算只有4种:删除第一个元素,删除最后一个元素,在第一个元素前面插入新元素,在最后一个元素的后面插入新元素,则最好使用()。

A.只有尾结点指针没有头结点指针的循环单链表

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

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

D.既有头结点指针也有尾结点指针的循环单链表

请帮忙给出正确答案和分析,谢谢!

热搜:n维列向量组a1,an-1线性无关,且与非零向量正交

答案解析

难度★★☆ 搜索
  • 正确答案:C
    解析:对于A的链表,删除最后一个结点p时,需要找到p的前一个结点,其时间复杂度为O(n);对于B的链表,删除第一个结点的p时,需找到头结点,这里没给出头结点指针,故无法实现这种操作。对于C的链表,这4种操作的时间复杂度都为O(1),对于D的链表,删除最后一个结点p时,需要找到p的前一个结点,其时间复杂度为O(n)。