📜  门| GATE-CS-2016(Set 2)|问题25

📅  最后修改于: 2021-06-29 06:29:40             🧑  作者: Mango

N个项目存储在排序的双链表中。对于删除操作,将指针提供给要删除的记录。对于减小键操作,将指针提供给要在其上执行操作的记录。算法按此顺序在列表上执行以下操作:
Θ(N)删除,O(log N)插入,O(log N)查找和Θ(N)减少键

所有这些操作加在一起的时间复杂度是多少
(A) O(对数2 N)
(B) O(N)
(C) O(N 2 )
(D) Θ(N 2对数N)答案: (C)
说明:减少键操作的时间复杂度为Θ(1),因为我们有指向必须在其中执行操作的记录的指针。但是,我们必须保持双向链表的排序,在执行减少键操作之后,我们需要找到键的新位置。此步骤将花费Θ(N)的时间,并且由于存在Θ(N)减小键的操作,因此时间复杂度变为O(N²)。

请注意,其他三个操作的边界都小于此边界。
这个问题的测验