[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-collections-kakoe-khudshee-vremya-raboty-metoda-contains-dlya-elementa-kotoryy-est-v-linkedlist":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":17,"progress":18,"seo":19},446,"kakoe-khudshee-vremya-raboty-metoda-contains-dlya-elementa-kotoryy-est-v-linkedlist",12,"collections","Collections","📚","Какое худшее время работы метода contains() для элемента, который есть в LinkedList","Худшее время — O(N). Метод `contains()` в LinkedList выполняет линейный поиск: последовательно обходит узлы от начала списка, вызывая `equals()` для каждого элемента, пока не найдет совпадение.\n\nВ худшем случае искомый элемент находится в последней позиции списка, и метод пройдет все N узлов. Оптимизация невозможна без дополнительных структур данных, потому что LinkedList не поддерживает произвольный доступ и не сортирован.\n\n> **На собеседовании:** ответ — O(N). Если на собеседовании спрашивают дальше, объясните, что ускорить поиск можно только с помощью дополнительного индекса (например, HashSet для проверки наличия).","","middle",[15,16],"performance","jcf",[],null,{"title":20,"description":21,"ogTitle":22,"ogDescription":23,"keywords":24,"schemaAnswer":33,"featuredSnippetReady":34},"Худшее время get() для существующего ключа в HashMap — Gymterview","O(N) до Java 8, O(log N) с Java 8. В худшем случае элемент — последний в цепочке. В среднем — O(1).","Худшее время get() существующего ключа — Gymterview","O(N) до Java 8, O(log N) с Java 8. В среднем O(1) при хорошей хэш-функции.",[25,26,27,28,29,30,31,32],"HashMap","get()","O(N)","O(log N)","O(1)","treeification","Java","собеседование","O(N) до Java 8, O(log N) с Java 8. В худшем случае все элементы в одной корзине, искомый — последний. В среднем — O(1) при хорошей хэш-функции и разумном load factor.",true]