Sobes.tech
Middle

Python'da bir sözlüğe öğe ekleme ve silmenin zaman karmaşıklığı nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Python'da sözlük, bir hash tabanı temel alınarak uygulanır ve bu, ortalama olarak O(1) zaman karmaşıklığı sağlar, ekleme ve silme işlemleri için.

  • Öğe ekleme: Anahtarın hash değeri hesaplanır ve öğe ilgili hücreye yerleştirilir. Ortalama olarak, bu sabit zaman alır.
  • Öğe silme: Aynı şekilde, anahtarın hash değeri kullanılarak yapılır ve ortalama O(1) zaman alır.

Ancak, en kötü durumda (örneğin, çok sayıda çakışma varsa), işlemler O(n)’ye kadar düşebilir, burada n sözlükteki öğe sayısıdır, fakat bu durumlar, iyi uygulama ve sözlüğün dinamik genişlemesi sayesinde oldukça nadirdir.

Örnek:

my_dict = {}
my_dict['key'] = 'value'  # ekleme — O(1)
del my_dict['key']          # silme — O(1)