Junior — Middle
Slice yordamida massivning oxiriga element qo'shish operatsiyasining vaqt murakkablik darajasi qanday?
sobes.tech AI
AIdan javob
Go'da, elementni oxiriga qo'shish operatsiyasi (append) amortizatsiyalangan vaqt murakkabligi O(1).
Tushuntirish:
-
Agar slice yetarli bo'lsa (
capacity), element qo'shish oddiygina bo'sh indeksga yozish bilan amalga oshadi — bu operatsiya vaqt bo'yicha doimiy. -
Agar kapasite yetarli bo'lmasa, yangi, kattaroq massiv ajratiladi, eski elementlar ko'chiriladi va yangi element qo'shiladi — bu operatsiya O(n), bu yerda n — hozirgi slice o'lchami.
Ammo, bunday qayta taqsimlashlar har qo'shishda emas, balki faqat vaqti-vaqti bilan amalga oshirilgani uchun, qo'shishning o'rtacha (amortizatsiyalangan) murakkabligi O(1) qoladi.