Рубрики

ВОРОТА | GATE-CS-2000 | Вопрос 15

Пусть s будет отсортированным массивом из n целых чисел. Пусть t (n) обозначает время, необходимое для наиболее эффективного алгоритма, чтобы определить, есть ли два элемента с суммой менее 1000 в с. Какие из следующих утверждений верно?

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

(А)
(Б) б
(С) с
(D) d

Ответ: (А)
Объяснение: Пусть массив отсортирован в порядке возрастания, если сумма первых двух элементов меньше 1000, то есть два элемента с суммой меньше 1000, иначе нет. Для сортировки массива в порядке убывания нам нужно проверить последние два элемента. Для структуры данных массива число операций фиксировано в обоих случаях и не зависит от n, сложность равна O (1)
Тест на этот вопрос

Рекомендуемые посты:

ВОРОТА | GATE-CS-2000 | Вопрос 15

0.00 (0%) 0 votes