Sobes.tech
Middle
62

Milyen komplexitású az adatok kulcs szerinti lekérése egy szótárban?

Cégeket kérdeztek
ИП Ганус Александр Андреевич

Válasz az MI-től

sobes.tech MI

В Python словарь (dict) реализован на основе хеш-таблицы, поэтому получение значения по ключу обычно имеет амортизированную временную сложность O(1) — то есть операция выполняется за константное время в среднем случае.

Однако в худшем случае, при большом количестве коллизий хешей, сложность может деградировать до O(n), где n — количество элементов в словаре. Но благодаря хорошей реализации и динамическому расширению словаря такие ситуации крайне редки.

Пример:

my_dict = {'a': 1, 'b': 2, 'c': 3}
value = my_dict['b']  # Получение по ключу за O(1)