>> [MUSIC PLAYING]
DOUG LLOYD: B眉t眉n sa臒, bel蓹 ki, bubble s谋rala alqoritm
siz elementl蓹ri bir s谋ra d眉zm蓹k 眉莽眉n istifad蓹 ed蓹 bil蓹rsiniz.
Nin bu i艧l蓹ri nec蓹 bir n蓹z蓹r salaq.
>> Bel蓹 ki, 蓹sas fikir arxas谋nda bubble sort bu.
Biz, 眉mumiyy蓹tl蓹, y眉ks蓹k h蓹r蓹k蓹t etm蓹k ist蓹yir蓹m 眉mumiyy蓹tl蓹 sa臒 眉莽眉n d蓹y蓹rli elementl蓹ri,
v蓹 眉mumiyy蓹tl蓹 qiym蓹tl蓹ndirilir elementl蓹ri a艧a臒谋 sol, biz g枚zl蓹m蓹k kimi.
Biz a艧a臒谋 艧eyl蓹r olmaq ist蓹yir蓹m ba艧lan臒谋c谋 v蓹 ali 艧eyi
sonunda olacaq.
>> Bunu nec蓹 ed蓹 bil蓹r蓹m?
Yax艧谋 pseudocode kodu, biz ed蓹k, dey蓹 bil蓹r
qeyri-s谋f谋r d蓹y蓹ri bir svop counter se莽in.
Biz ikinci ki, niy蓹 biz g枚r蓹c蓹ksiniz.
V蓹 sonra biz a艧a臒谋dak谋 t蓹krar svop counter 0 q蓹d蓹r prosesi,
v蓹 ya biz he莽 svoplar谋 etm蓹k q蓹d蓹r.
>> Svop counter s谋f谋rlamak 0 art谋q 0 deyil, 蓹g蓹r.
Sonra h蓹r baxmaq elementl蓹ri qon艧u c眉t.
Bu iki elementl蓹r varsa etm蓹m蓹k 眉莽眉n, onlar谋 d蓹yi艧dirm蓹k,
v蓹 svop counter 1 蓹lav蓹 edin.
Siz haqq谋nda d眉艧眉n眉r ist蓹yirsinizs蓹 bu g枚r眉nt眉l蓹m蓹k 蓹vv蓹l,
Bu a艧a臒谋 h蓹r蓹k蓹t ed蓹c蓹k ki, g枚r眉rs眉n眉z sol qiym蓹tl蓹ndirilir elementl蓹ri
v蓹 ali sa臒 elementl蓹ri qiym蓹tl蓹ndirilir s蓹m蓹r蓹li biz ist蓹yirik n蓹,
olan qruplar h蓹r蓹k蓹t edir ki, yol elementl蓹ri.
Nin nec蓹 g枚r眉nt眉l蓹m蓹k imkan bizim array istifad蓹 ola bil蓹r
Biz test 眉莽眉n istifad蓹 ki, bu alqoritml蓹r h蓹yata.
Biz yen蓹 burada 莽e艧idl蓹nm蓹mi艧 s谋ra var elementl蓹ri b眉t眉n g枚st蓹ril蓹n
q谋rm谋z谋 olan.
M蓹n svop counter m眉蓹yy蓹n bir nonzero d蓹y蓹ri.
M蓹n 枚zba艧谋na se莽di m蓹nfi 1 var Bu 0 deyil.
Biz bu prosesi t蓹krar etm蓹k ist蓹yir蓹m swap counter q蓹d蓹r 0.
M蓹n svop m眉蓹yy蓹n Buna g枚r蓹 b蓹zi qeyri-s谋f谋r d蓹y蓹ri counter,
ba艧qa, 莽眉nki svop counter 0 olard谋.
Biz h蓹tta ba艧lamaq deyil alqoritmi prosesi.
Bel蓹 ki, yen蓹 add谋mlar are-- svop counter s谋f谋rlamak
0, sonra h蓹r biti艧ik baxmaq c眉t v蓹 onlar 眉莽眉n h蓹yata 蓹g蓹r,
onlar谋 d蓹yi艧dirm蓹k v蓹 1 蓹lav蓹 svop counter.
Bel蓹 ki, bu prosesi ba艧las谋n.
Bel蓹likl蓹, biz n蓹 ilk 艧ey biz 0 svop counter m眉蓹yy蓹n
v蓹 sonra axtar谋r ba艧lamaq h蓹r biti艧ik c眉t.
>> Bel蓹likl蓹, biz ilk 5 v蓹 2 baxaraq ba艧lamaq.
Biz onlar谋n h蓹yata var ki, g枚r蓹c蓹ksiniz sifari艧 v蓹 biz onlar谋 d蓹yi艧dirm蓹k.
V蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin.
Bel蓹 ki, indi bizim svop counter 1, v蓹 2 v蓹 5 i艧蓹 edilmi艧dir.
陌ndi biz yenid蓹n prosesi t蓹krar edin.
>> Biz n枚vb蓹ti biti艧ik c眉t baxmaq, 5 v蓹 onlar da 眉莽眉n bitti 1 var,
bel蓹 ki, biz onlar谋 d蓹yi艧dirm蓹k v蓹 蓹lav蓹 Svop counter 1.
Sonra biz 5 v蓹 3 oldu.
Onlar 眉莽眉n h蓹yata, bel蓹 ki, biz d蓹yi艧dirm蓹k Onlara v蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin.
Sonra biz 5 v蓹 6 oldu.
Onlar 眉莽眉n ist蓹yirik, biz, h蓹qiq蓹t蓹n, yoxdur bir 艧ey bu d蓹f蓹 d蓹yi艧dirm蓹k laz谋md谋r.
Sonra biz 6 v蓹 4 oldu.
Onlar qaydada h蓹yata d蓹 ist蓹yirik, biz d蓹yi艧dirm蓹k Onlara v蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin.
>> 陌ndi ba艧 n蓹 g枚r眉rs眉n眉z.
Biz sonuna 6 b眉t眉n yol h蓹r蓹k蓹t etdik.
Se莽im sort Bel蓹 ki, siz var 蓹g蓹r video g枚r眉ld眉 n蓹 etdik oldu
biz h蓹r蓹k蓹t sona 莽atd谋 binas谋nda ki莽ik elementl蓹ri
mahiyy蓹tc蓹 sorted array 蓹n b枚y眉k, ki莽ik sa臒.
Bubble n枚v halda, biz 蓹g蓹r bu alqoritm sonra,
biz, h蓹qiq蓹t蓹n, bina olacaq sa臒dan s谋ralan谋r array
ki莽ik, b枚y眉k sol.
Biz s蓹m蓹r蓹li 6, bubbled var b枚y眉k d蓹y蓹ri, sonuna b眉t眉n yol.
>> V蓹 bel蓹 ki, biz indi elan ed蓹 bil蓹r ki, 莽e艧idl蓹nir ki,
v蓹 g蓹l蓹c蓹kd蓹 iterations-- array ke莽ir again--
biz art谋q 6 hesab yoxdur.
Biz yaln谋z hesab etm蓹k laz谋md谋r 莽e艧idl蓹nm蓹mi艧 elementl蓹ri
zaman biz qon艧u c眉t bax谋r谋q.
Bel蓹likl蓹, biz bir ba艧a bubble s谋rala ke莽ir.
Bel蓹 ki, indi biz suala geri, svop counter 0 q蓹d蓹r deyir蓹m.
Yax艧谋 svop counter 4, bel蓹 ki, biz gedirik
yenid蓹n bu prosesi t蓹krar saxlamaq.
>> Biz svop counter s谋f谋rlamak olacaq 0 v蓹 h蓹r biti艧ik c眉t baxmaq.
Bel蓹 ki, biz onlar 1 var 2 il蓹 ba艧lamaq v蓹 qaydada h蓹yata, bel蓹 ki, biz onlar谋 d蓹yi艧dirm蓹k
v蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin.
2 v蓹 3, onlar 眉莽眉n ist蓹yirik.
Biz bir 艧ey etm蓹k laz谋m deyil.
3 v蓹 5 眉莽眉n var.
Biz orada bir 艧ey etm蓹k laz谋m deyil.
>> 5 v蓹 4, onlar h蓹yata sifari艧 v蓹 biz
onlar谋 d蓹yi艧dirm蓹k v蓹 蓹lav蓹 etm蓹k laz谋md谋r Svop counter 1.
陌ndi biz, 5 h蓹r蓹k蓹t etdik n枚vb蓹ti b枚y眉k element,
莽e艧idl蓹nm蓹mi艧 hiss蓹si sonuna.
Bel蓹likl蓹, biz indi z蓹ng ed蓹 bil蓹rsiniz s谋ralan谋r hiss蓹sinin hiss蓹sidir.
>> 陌ndi bax谋r谋q ekran v蓹 y蓹qin ki, dem蓹k olar,
, m蓹n array kimi 陌ndi 莽e艧idl蓹nir.
Amma biz h蓹l蓹 ki, s眉but ed蓹 bilm蓹z.
Biz z蓹man蓹t yoxdur ki, s谋ralan谋r.
Amma bu harada svop deyil counter oyun minir olacaq.
>> Bel蓹likl蓹, biz bir ke莽id tamamlad谋m.
svop counter 2.
Bel蓹likl蓹, biz dem蓹k olacaq yen蓹 bu proses,
svop counter 0 q蓹d蓹r deyir蓹m.
0 svop counter s谋f谋rlamak.
Bel蓹 ki, biz yenid蓹n laz谋md谋r.
>> 陌ndi h蓹r biti艧ik c眉t baxmaq.
Ki, 眉莽眉n 1 v蓹 2 var.
2 v蓹 3 眉莽眉n var.
3 v蓹 4 眉莽眉n var.
Bel蓹 ki, bu n枚qt蓹d蓹, biz tamamlad谋m qeyd h蓹r biti艧ik c眉t baxaraq,
lakin swap counter h蓹l蓹 0.
>> Biz ke莽id yoxsa hans谋 elementl蓹ri, onlar
il蓹, qaydada olmal谋d谋r Bu prosesin 蓹sas谋nda.
V蓹 bel蓹 n枚v bir s蓹m蓹r蓹liliyinin, ki, biz komp眉ter aliml蓹ri sevgi,
indi elan ed蓹 bil蓹r ki, b眉t眉n array olmal谋d谋r
Biz 莽眉nki, s谋ralamas谋 h蓹r hans谋 elementl蓹ri d蓹yi艧dirm蓹k laz谋md谋r.
Bu olduqca g枚z蓹l.
>> Bel蓹 ki, n蓹 蓹n pis halda var bubble n枚v il蓹 ssenari?
茝n pis halda array var tamamil蓹 蓹ks qaydada,
v蓹 biz h蓹r bir bubble var b枚y眉k elementl蓹ri b眉t眉n
array aras谋nda bir yoldur.
V蓹 biz s蓹m蓹r蓹li d蓹 var bubble ki莽ik elementl蓹ri b眉t眉n geri
脟ox array aras谋nda b眉t眉n yol.
Bel蓹 ki, n elementl蓹rin h蓹r h蓹r蓹k蓹t var dig蓹r n elementl蓹ri b眉t眉n aras谋nda.
Bel蓹 ki, 蓹n pis ssenari var.
茝n yax艧谋 halda ssenari olsa da, bu
se莽im sort q蓹d蓹r f蓹rqli.
array art谋q biz getm蓹k zaman s谋ralan谋r.
Biz h蓹r hans谋 bir etm蓹k yoxdur ilk pas谋 svoplar谋.
Bel蓹 ki, biz baxmaq 眉莽眉n ola bil蓹r az elementl蓹ri, sa臒?
Biz bu t蓹krar yoxdur art谋q bir ne莽蓹 d蓹f蓹 emal.
>> Bel蓹 ki, n蓹 dem蓹kdir?
Bel蓹 ki, n蓹 蓹n pis ssenari var bubble sort 眉莽眉n, v蓹 n蓹
bubble sort 眉莽眉n 蓹n yax艧谋 ssenari?
Bu tahmin mi?
茝n pis halda t蓹krarlamaq laz谋md谋r b眉t眉n n elementl蓹ri n d蓹f蓹 aras谋nda.
Bel蓹 ki, 蓹n pis halda kvadrat n edilir.
>> Array m眉k蓹mm蓹l olarsa sorted baxmayaraq, yaln谋z
h蓹r baxmaq bir d蓹f蓹 elementl蓹ri.
V蓹 svop counter h蓹l蓹 0 olduqda, Bu array 莽e艧idl蓹nir dem蓹k olar.
V蓹 bel蓹 蓹n yax艧谋 halda, bu se莽ilm蓹si daha h蓹qiq蓹t蓹n yax艧谋
sort N omega var.
>> M蓹n Doug Lloyd edir蓹m.
Bu CS50 edir.