Учитывая упорядоченный массив A[1...n]
ключей, а другой ключ, x
, хранящийся в A
, показать, как найти индекс, k
, так что A[k] = x
во время O(log(k))
.Поиска индекса в отсортированном массиве
Я знаю, что бинарный поиск по отсортированному массиву будет выполнен в среднем O(logn)
, но какой будет лучший способ показать время выполнения O(logk)
, как описано выше, для отсортированного массива?
Я ценю любую помощь.
Являются ли ваши ключи произвольными значениями, или они являются целыми? – templatetypedef
Я не получаю O (logk) .. что делает k связано с сложностью O()? k - это просто значение индекса, правильно? Если этот x находится в индексе 0, я должен заполнить его в O (log0)? –
@DavidKernin Это именно то, что говорит O (log k): логарифмическое по k и, следовательно, (очень медленно) растет с ростом k. – delnan