您将获得指向单个链接列表的第一个节点和最后一个节点的指针,以下哪些操作取决于链接列表的长度?
(A)删除第一个元素
(B)插入一个新元素作为第一个元素
(C)删除列表的最后一个元素
(D)在列表末尾添加一个新元素答案: (C)
说明: a)可以在O(1)时间内通过删除内存并更改第一个指针来完成。
b)可以在O(1)时间内完成,请参见此处的push()
c)删除最后一个元素需要指向最后一个的指针,这只能通过遍历列表来获得。
d)可以在O(1)中通过改变倒数第二个和倒数第二个来完成。这个问题的测验