Sobes.tech
Middle

Python-da sözlükdə element əlavə etmənin və silmənin vaxt mürəkkəbliyi nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Python-da sözlük, bir hash cədvəli əsasında həyata keçirilmişdir və bu, orta hesabla O(1) zaman mürəkkəbliyi ilə elementlərin əlavə olunması və silinməsi əməliyyatlarını təmin edir.

  • Element əlavə etmək: açarın hash-i hesablanır və element müvafiq hüceyrəyə yerləşdirilir. Orta hesabla, bu, sabit vaxt alır.
  • Element silmək: də eyni şəkildə, açarın hash-i vasitəsilə həyata keçirilir və orta hesabla O(1) vaxt alır.

Lakin, ən pis halda (məsələn, çox sayda toqquşma ilə), əməliyyatlar O(n) dərəcəsinə qədər pisləşə bilər, burada n sözlükdəki elementlərin sayıdır, lakin bu hallar çox nadirdir və yaxşı tətbiq və dinamik genişlənmə sayəsində az rast gəlinir.

Misal:

my_dict = {}
my_dict['key'] = 'value'  # əlavə — O(1)
del my_dict['key']          # silinmə — O(1)