Sobes.tech
Middle

Python'da lug'atga element qo'shish va o'chirishning vaqt murakkabligi qanday?

sobes.tech AI

AIdan javob

Python'da lug'at, xash-jadval asosida amalga oshirilgan bo'lib, bu o'rtacha holda O(1) vaqt murakkabligi bilan elementlarni qo'shish va olib tashlash operatsiyalarini ta'minlaydi.

  • Element qo'shish: kalitning xash qiymati hisoblanadi va element mos hujayraga joylashtiriladi. O'rtacha, bu vaqt doimiy.
  • Elementni o'chirish: ham xash yordamida amalga oshiriladi va o'rtacha O(1) vaqt oladi.

Ammo, eng yomon holatda (masalan, ko'p to'qnashuvlar bo'lsa), operatsiyalar O(n) ga degradatsiya qilishi mumkin, bu yerda n lug'atdagi elementlar soni, lekin bunday holatlar juda kam uchraydi yaxshi amalga oshirish va lug'atni dinamik kengaytirish tufayli.

Misol:

my_dict = {}
my_dict['key'] = 'value'  # qo'shish — O(1)
del my_dict['key']          # o'chirish — O(1)