2016-04-11 3 views
-3

Так что мне задали этот вопрос. Прочтите текстовые описания алгоритмов ниже. Для каждого алгоритма объясните, какой из следующих классов сложности лучше всего описывает производительность наихудшего времени для списка n.Определение сложности алгоритма

Приведенный список L поплавков и целое число 0 < = i < len (L) - 1, return True, если i-й элемент L меньше, чем (i + 1) -й элемент L. Объясните, что поведение, реализация каждого алгоритма должна проявляться при запуске в списке размером 2n по сравнению со списком размера n.

Так что из предположения я предполагал, что сложность для этого - O (1). Я не понимаю поведение реализации при запуске в списке размером 2n по сравнению со списком размеров n

+4

Есть ли у вас примеры кода, который вы уже пробовали? –

+0

@PeterDavidCarter не было предоставлено кода только это объяснение – Zero

+0

Что делать, если ваш список был реализован как связанный список? Что, если он был реализован как двоичное дерево? Если вы не знаете, как в списке хранятся его элементы, вы не можете знать временную сложность. – AndyG

ответ

0

Так что из предположения я предполагал, что сложность для этого - O (1). Я не понять поведение реализации при запуске в списке 2n размера по сравнению с перечнем размера п

O (1) означает, что алгоритм занимает одну постоянное время, в течение любого размера данных. Доступ к элементу массива является типичным примером.

В Python список не является структурой данных массива. Словарь, вероятно, имеет O (1), потому что он использует таблицу Hash.

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