104
§ 29–30. Сұ рып тау әдіс те рі
Кө пір шік ті сұ рып тау – мас сив тер
мен ті зім дер ді тіз бек тей са лыс ты ру
жә не егер ал дың ғы
эле мент кей ін гі
тұр ған эле ме нт тен үл кен бол са, көр ші
эле ме нт те рін ау ыс ты ра тын сұ рып тау
әді сі. Бұл ал го ритм ді орын дау ба ры-
сын да үл кен
мән ді эле ме нт тер ті зім-
нің со ңын да ор на ла са ды, ал мә ні кі ші
эле ме нт тер бір тін деп ті зім нің ба сы на
қа рай жыл жып ор на ла са ды. Бей не-
леп айт қан да, ау ыр эле ме нт тер тү бі не
құ лай ды, ал
же ңіл де рі кө пір шік тер
си яқ ты баяу ауа ға ұша ды.
Кө пір шік ті
сұ рып тау
ке зін де
сырт қы цикл дің ите ра ция ла ры ның
са ны
–1-мен анық тала ды,
өйт ке ні
екін ші эле мент ор ны на түс кен кез де, бі рін ші бі реуі бір ден
ми ни мал ды жә не өз ор нын да ор на ла са ды.
Іш кі цикл де гі ите ра ция са ны сырт қы тіз бек тің ие рар-
хия лық
нө мі рі не бай ла ныс ты, се бе бі ті зім нің со ңы қа зір дің
өзін де сұ рып тал ған жә не бұл эле ме нт тер ді қай та дан сұ рып-
тау дың қа же ті жоқ.
Мы са лы, [6, 12, 4, 3, 8] ті зі мі бе ріл сін.
Сырт қы цикл дің ал ғаш қы ите ра ция сы ке зін де 12 са ны
со ңы на қа рай жыл жи ды. Бұл үшін іш кі цикл де гі 4
са лыс ты-
ру ды талап ете ді:
•
6 > 12? Жоқ
•
12 > 4? Иә.
Орын ау ыс ты ра мыз
•
12 > 3? Иә. Орын ау ыс ты ра мыз
•
12 > 8? Иә. Орын ау ыс ты ра мыз
Нә ти же де: [6, 4, 3, 8, 12]
Сырт қы цикл дің екін ші итерациясы ке зін де 8 са ны ал дың ғы
орын ға жыл жи ды. Бұл 3 са лыс ты ру ды қа жет ете ді:
•
6 > 4? Иә. Орын ау ыс ты ра мыз
•
6 > 3? Иә. Орын ау ыс ты ра мыз
•
6 > 8? Жоқ
Нә ти же де: [4, 3, 6, 8, 12]
Достарыңызбен бөлісу: