2014-01-03 1 views
0

Время, необходимое для поиска одного совпадения в последовательном поиске, это T (n) = n Как насчет поиска всех совпадений для ключа в данном массиве и всего элемента в массиве? уникальный? T (n) =?время, чтобы найти все соответствующее в последовательном поиске

+0

Соответствие? –

+0

К любому ключу, который вы хотите найти в arrary – Abeer

+0

Для. Key = 5, и если A (1) = соответствует этому совпадению, и если A (4) = key, это другое совпадение, и если A (6) = введите другое совпадение и т. Д. – Abeer

ответ

0

Ограничение уникальности не меняет времени, как если бы элемент был только в конце, вам все равно придется смотреть на каждый элемент, чтобы его найти.

Поиск нескольких совпадений также не изменяет время, так как только через массив один раз вы можете найти все элементы.

Итак, время будет по-прежнему T(n) = n, или O(n).

Хотя я не уверен, что может быть несколько совпадений и уникальность - если элементы уникальны, может быть только одно совпадение.

+0

Да, да, вы правы, спасибо за то, что помогли мне^-^ – Abeer

+0

Но в бинарном поиске время будет увеличиваться с T (n) = log n до n ..right ??? – Abeer

+0

Двоичный поиск будет принимать значение 'O (log n)' (или 'T (n) = log n') (что, конечно же, предполагает сортировку массива). – Dukeling

 Смежные вопросы

  • Нет связанных вопросов^_^