📜  门| GATE-CS-2000 |问题15

📅  最后修改于: 2021-06-28 19:26:34             🧑  作者: Mango

令s为n个整数的排序数组。令t(n)表示最有效的算法确定是否有两个元素的和在s中小于1000所花费的时间。下列哪项为真?

a)t(n)是O(1)b)n c)n log 2 n d)t(n)= [/ Tex] {n \ choose 2} [/ Tex]

(一)
(B) b
(C) c
(D) d答案: (A)
说明:让数组以升序排序,如果前两个元素的总和小于1000,则有两个元素的总和小于1000,否则不然。对于以降序排序的数组,我们需要检查最后两个元素。对于数组数据结构,两种情况下的操作数都是固定的,并且不依赖于n,复杂度为O(1)
这个问题的测验