Birlashtiruv saralash. Tezkor tartiblash (quicksort). Chiziqli saralash algoritmlari. Tartiblash. Mergesort effektiv tartiblash algoritmlaridan biri bo’lib uning ishlash prinsipi «bo’lib tashla va hukmronlik qil»


(b) sikllarni ishga tushiramiz. Bunda i = 7, j = 11 dan boshlanadi. Kichik sikllar i = 7, j = 6  holatda to’xtaydi. i > j, katta (O)


Download 354.93 Kb.
Pdf ko'rish
bet3/5
Sana01.04.2023
Hajmi354.93 Kb.
#1316420
1   2   3   4   5
Bog'liq
8-ma\'ruza

(b) sikllarni ishga tushiramiz. Bunda i = 7, j = 11 dan boshlanadi. Kichik sikllar i = 7, j = 6 
holatda to’xtaydi. i > j, katta (O) sikl ham to’xtaydi. arr[pivot] va arr[j] teng. Bu 2.1 qismda pivot 
eng kichkina son bo’lgani uchun bu qismda o’zgarish bo’lmadi. 2.1 qismni pivot bo’yicha 
ikkiga ajratamiz. Aniqrog’i birinchi qismi bo’lmaydi, faqat ikkinchi qismi (2.1.2) bo’ladi xolos: 
[..., 11, 7, 9, 8, 10, ...] 
2.1.2 qismni tartiblashni davom ettiramiz. 


2.1.2 qismda pivot = 7, ya’ni array’ning 7-elementi. Yuqoridagi kabi katta (O) va kichik (a) 
(b) sikllarni ishga tushiramiz. Bunda i = 8, j = 11 dan boshlanadi. Kichik sikllar i = 11, j = 11 
holatda to’xtaydi. i = j, katta (O) sikl ham to’xtaydi. arr[pivot] va arr[j] o’rnini almashtiramiz: 
[..., 10, 7, 9, 8, 11, ...] 
2.1.2 qismni pivot bo’yicha ikkiga ajratamiz. Aniqrog’i ikkinchi qismi bo’lmaydi, faqat birinchi 
qismi (2.1.2.1) bo’ladi xolos: 
[..., 10, 7, 9, 8, ...] 
2.1.2.1 qismni tartiblashni davom ettiramiz. 
2.1.2.1 qismda pivot = 7, ya’ni array’ning 7-elementi. Yuqoridagi kabi katta (O) va kichik (a) 
(b) sikllarni ishga tushiramiz. Bunda i = 8, j = 10 dan boshlanadi. Kichik sikllar i = 10, j = 10 
holatda to’xtaydi. i = j, katta (O) sikl ham to’xtaydi. arr[pivot] va arr[j] o’rnini almashtiramiz: 
[..., 8, 7, 9, 10, ...] 
2.1.2.1 qismni pivot bo’yicha ikkiga ajratamiz. Aniqrog’i ikkinchi qismi bo’lmaydi, faqat 
birinchi qismi (2.1.2.1.1) bo’ladi xolos: 
[..., 8, 7, 9, ...] 
2.1.2.1.1 qismni tartiblashni davom ettiramiz. 
2.1.2.1.1 qismda pivot = 7, ya’ni array’ning 7-elementi. Yuqoridagi kabi katta (O) va kichik (a) 
(b) sikllarni ishga tushiramiz. Bunda i = 8, j = 9 dan boshlanadi. Kichik sikllar i = 9, j = 8 
holatda to’xtaydi. i > j, katta (O) sikl ham to’xtaydi. arr[pivot] va arr[j] o’rnini almashtiramiz: 
[..., 7, 8, 9, ...] 
Biz 2.1 qismni tartiblashni tugatdik 
[..., 6, 7, 8, 9, 10, 11, ...] 
2.2. qismi da ikkita element bor, ular tartiblangach: 
[..., 13, 14] 
Biz arrayning ikkinchi qismini ham tartiblashni tugatdik. 
[..., 6, 7, 8, 9, 10, 11, 12, 13, 14] 
Shunda tartiblash yakunlangach, array 


[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] 
tartiblandi. 

Download 354.93 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling