Middle
Python-ში სიტყვების დამატებისა და ამოღების დროითი სირთულე რა არის?
sobes.tech AI
პასუხი AI-სგან
Python-ში ლექსიკონი რეალიზებულია ჰეშ-ცხრილის საფუძველზე, რაც საშუალოდ უზრუნველყოფს O(1) დროის სირთულეს ელემენტების დამატებისა და წაშლის ოპერაციებისათვის.
- ელემენტის დამატება: იანგარიშება გასაღების ჰეში და ელემენტი ინახება შესაბამის უჯრაში. საშუალოდ, ეს დრო არის კონსტანტული.
- ელემენტის წაშლა: ასევე ხორციელდება ჰეშის საშუალებით და საშუალოდ, ეს ოპერაცია გრძელდება O(1)-ში.
თუმცა, ყველაზე უარესი შემთხვევებში (მაგალითად, ბევრი კოლიზია), ოპერაციები შეიძლება შემცირდეს O(n)-მდე, სადაც n — ლექსიკონის ელემენტების რაოდენობა, მაგრამ ასეთი შემთხვევები ძალიან იშვიათია კარგი განხორციელებისა და დინამიკური გაფართოების გამო.
მაგალითი:
my_dict = {}
my_dict['key'] = 'value' # დამატება — O(1)
del my_dict['key'] # წაშლა — O(1)