69
Birlashtirib saralash algortimini baholash.
Algoritmning
murakkabligini taxmin qilaylik. Har qanday rekursiv funksiya chaqiruvi
daraxtga oʻxshaydi (Izoh: ―Daraxtlar‖ haqida keyingi ma‘ruzalarda
toʻxtalib oʻtiladi). Bunday daraxtni rekursion daraxt deb ham atashadi.
Daraxtning har bir darajasi bir yoki bir nechta funksiya chaqiruvlarini
aks ettiradi. Shoxlari boʻlmagan daraxt tugunlari rekursiyani tugatadigan
funksiya chaqiruvlarini anglatadi. Birlashtirish tartibida daraxtning
balandligi log
2
n ga teng, chunki har bir qadamda boshlangʻich massiv
n/2 uzunlikdagi ikkita ichki massivga boʻlinadi. Ajratishdan soʻng,
birlashtirish operatsiyasi amalga oshiriladi. Birlashtirish jarayoni n
taqqoslashni, navbati bilan
log
n marta, ya‘ni daraxtning har bir darajasi
uchun 1 marta takrorlashni talab qiladi. Keyin algortim asimptotikasi O
(nlogn) boʻladi.
15-rasm. Merge Sort algoritmining turli xil tiplar uchun ishlash
vaqti (elementlar soni 50000 ta)
Mavzu yuzasidan savollar:
1.