1 00:00:00,000 --> 00:00:03,360 >> [MUSIC PLAYING] 2 00:00:03,360 --> 00:00:04,522 3 00:00:04,522 --> 00:00:06,730 DOUG LLOYD: B眉t眉n sa臒, bel蓹 ki, bubble s谋rala alqoritm 4 00:00:06,730 --> 00:00:08,730 siz elementl蓹ri bir s谋ra d眉zm蓹k 眉莽眉n istifad蓹 ed蓹 bil蓹rsiniz. 5 00:00:08,730 --> 00:00:10,850 Nin bu i艧l蓹ri nec蓹 bir n蓹z蓹r salaq. 6 00:00:10,850 --> 00:00:13,240 >> Bel蓹 ki, 蓹sas fikir arxas谋nda bubble sort bu. 7 00:00:13,240 --> 00:00:17,340 Biz, 眉mumiyy蓹tl蓹, y眉ks蓹k h蓹r蓹k蓹t etm蓹k ist蓹yir蓹m 眉mumiyy蓹tl蓹 sa臒 眉莽眉n d蓹y蓹rli elementl蓹ri, 8 00:00:17,340 --> 00:00:20,340 v蓹 眉mumiyy蓹tl蓹 qiym蓹tl蓹ndirilir elementl蓹ri a艧a臒谋 sol, biz g枚zl蓹m蓹k kimi. 9 00:00:20,340 --> 00:00:23,256 Biz a艧a臒谋 艧eyl蓹r olmaq ist蓹yir蓹m ba艧lan臒谋c谋 v蓹 ali 艧eyi 10 00:00:23,256 --> 00:00:24,970 sonunda olacaq. 11 00:00:24,970 --> 00:00:26,130 >> Bunu nec蓹 ed蓹 bil蓹r蓹m? 12 00:00:26,130 --> 00:00:28,040 Yax艧谋 pseudocode kodu, biz ed蓹k, dey蓹 bil蓹r 13 00:00:28,040 --> 00:00:30,320 qeyri-s谋f谋r d蓹y蓹ri bir svop counter se莽in. 14 00:00:30,320 --> 00:00:32,570 Biz ikinci ki, niy蓹 biz g枚r蓹c蓹ksiniz. 15 00:00:32,570 --> 00:00:36,090 V蓹 sonra biz a艧a臒谋dak谋 t蓹krar svop counter 0 q蓹d蓹r prosesi, 16 00:00:36,090 --> 00:00:39,910 v蓹 ya biz he莽 svoplar谋 etm蓹k q蓹d蓹r. 17 00:00:39,910 --> 00:00:43,170 >> Svop counter s谋f谋rlamak 0 art谋q 0 deyil, 蓹g蓹r. 18 00:00:43,170 --> 00:00:46,420 Sonra h蓹r baxmaq elementl蓹ri qon艧u c眉t. 19 00:00:46,420 --> 00:00:49,550 Bu iki elementl蓹r varsa etm蓹m蓹k 眉莽眉n, onlar谋 d蓹yi艧dirm蓹k, 20 00:00:49,550 --> 00:00:51,620 v蓹 svop counter 1 蓹lav蓹 edin. 21 00:00:51,620 --> 00:00:53,870 Siz haqq谋nda d眉艧眉n眉r ist蓹yirsinizs蓹 bu g枚r眉nt眉l蓹m蓹k 蓹vv蓹l, 22 00:00:53,870 --> 00:00:57,471 Bu a艧a臒谋 h蓹r蓹k蓹t ed蓹c蓹k ki, g枚r眉rs眉n眉z sol qiym蓹tl蓹ndirilir elementl蓹ri 23 00:00:57,471 --> 00:01:00,720 v蓹 ali sa臒 elementl蓹ri qiym蓹tl蓹ndirilir s蓹m蓹r蓹li biz ist蓹yirik n蓹, 24 00:01:00,720 --> 00:01:03,940 olan qruplar h蓹r蓹k蓹t edir ki, yol elementl蓹ri. 25 00:01:03,940 --> 00:01:07,035 Nin nec蓹 g枚r眉nt眉l蓹m蓹k imkan bizim array istifad蓹 ola bil蓹r 26 00:01:07,035 --> 00:01:10,504 Biz test 眉莽眉n istifad蓹 ki, bu alqoritml蓹r h蓹yata. 27 00:01:10,504 --> 00:01:13,420 Biz yen蓹 burada 莽e艧idl蓹nm蓹mi艧 s谋ra var elementl蓹ri b眉t眉n g枚st蓹ril蓹n 28 00:01:13,420 --> 00:01:14,840 q谋rm谋z谋 olan. 29 00:01:14,840 --> 00:01:17,970 M蓹n svop counter m眉蓹yy蓹n bir nonzero d蓹y蓹ri. 30 00:01:17,970 --> 00:01:20,610 M蓹n 枚zba艧谋na se莽di m蓹nfi 1 var Bu 0 deyil. 31 00:01:20,610 --> 00:01:23,840 Biz bu prosesi t蓹krar etm蓹k ist蓹yir蓹m swap counter q蓹d蓹r 0. 32 00:01:23,840 --> 00:01:26,540 M蓹n svop m眉蓹yy蓹n Buna g枚r蓹 b蓹zi qeyri-s谋f谋r d蓹y蓹ri counter, 33 00:01:26,540 --> 00:01:29,400 ba艧qa, 莽眉nki svop counter 0 olard谋. 34 00:01:29,400 --> 00:01:31,610 Biz h蓹tta ba艧lamaq deyil alqoritmi prosesi. 35 00:01:31,610 --> 00:01:33,610 Bel蓹 ki, yen蓹 add谋mlar are-- svop counter s谋f谋rlamak 36 00:01:33,610 --> 00:01:37,900 0, sonra h蓹r biti艧ik baxmaq c眉t v蓹 onlar 眉莽眉n h蓹yata 蓹g蓹r, 37 00:01:37,900 --> 00:01:40,514 onlar谋 d蓹yi艧dirm蓹k v蓹 1 蓹lav蓹 svop counter. 38 00:01:40,514 --> 00:01:41,680 Bel蓹 ki, bu prosesi ba艧las谋n. 39 00:01:41,680 --> 00:01:44,430 Bel蓹likl蓹, biz n蓹 ilk 艧ey biz 0 svop counter m眉蓹yy蓹n 40 00:01:44,430 --> 00:01:46,660 v蓹 sonra axtar谋r ba艧lamaq h蓹r biti艧ik c眉t. 41 00:01:46,660 --> 00:01:49,140 >> Bel蓹likl蓹, biz ilk 5 v蓹 2 baxaraq ba艧lamaq. 42 00:01:49,140 --> 00:01:52,410 Biz onlar谋n h蓹yata var ki, g枚r蓹c蓹ksiniz sifari艧 v蓹 biz onlar谋 d蓹yi艧dirm蓹k. 43 00:01:52,410 --> 00:01:53,830 V蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin. 44 00:01:53,830 --> 00:01:57,860 Bel蓹 ki, indi bizim svop counter 1, v蓹 2 v蓹 5 i艧蓹 edilmi艧dir. 45 00:01:57,860 --> 00:01:59,370 陌ndi biz yenid蓹n prosesi t蓹krar edin. 46 00:01:59,370 --> 00:02:03,540 >> Biz n枚vb蓹ti biti艧ik c眉t baxmaq, 5 v蓹 onlar da 眉莽眉n bitti 1 var, 47 00:02:03,540 --> 00:02:06,960 bel蓹 ki, biz onlar谋 d蓹yi艧dirm蓹k v蓹 蓹lav蓹 Svop counter 1. 48 00:02:06,960 --> 00:02:08,900 Sonra biz 5 v蓹 3 oldu. 49 00:02:08,900 --> 00:02:13,830 Onlar 眉莽眉n h蓹yata, bel蓹 ki, biz d蓹yi艧dirm蓹k Onlara v蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin. 50 00:02:13,830 --> 00:02:15,550 Sonra biz 5 v蓹 6 oldu. 51 00:02:15,550 --> 00:02:18,630 Onlar 眉莽眉n ist蓹yirik, biz, h蓹qiq蓹t蓹n, yoxdur bir 艧ey bu d蓹f蓹 d蓹yi艧dirm蓹k laz谋md谋r. 52 00:02:18,630 --> 00:02:20,250 Sonra biz 6 v蓹 4 oldu. 53 00:02:20,250 --> 00:02:24,920 Onlar qaydada h蓹yata d蓹 ist蓹yirik, biz d蓹yi艧dirm蓹k Onlara v蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin. 54 00:02:24,920 --> 00:02:26,230 >> 陌ndi ba艧 n蓹 g枚r眉rs眉n眉z. 55 00:02:26,230 --> 00:02:29,514 Biz sonuna 6 b眉t眉n yol h蓹r蓹k蓹t etdik. 56 00:02:29,514 --> 00:02:32,180 Se莽im sort Bel蓹 ki, siz var 蓹g蓹r video g枚r眉ld眉 n蓹 etdik oldu 57 00:02:32,180 --> 00:02:35,290 biz h蓹r蓹k蓹t sona 莽atd谋 binas谋nda ki莽ik elementl蓹ri 58 00:02:35,290 --> 00:02:39,640 mahiyy蓹tc蓹 sorted array 蓹n b枚y眉k, ki莽ik sa臒. 59 00:02:39,640 --> 00:02:43,200 Bubble n枚v halda, biz 蓹g蓹r bu alqoritm sonra, 60 00:02:43,200 --> 00:02:46,720 biz, h蓹qiq蓹t蓹n, bina olacaq sa臒dan s谋ralan谋r array 61 00:02:46,720 --> 00:02:49,100 ki莽ik, b枚y眉k sol. 62 00:02:49,100 --> 00:02:53,840 Biz s蓹m蓹r蓹li 6, bubbled var b枚y眉k d蓹y蓹ri, sonuna b眉t眉n yol. 63 00:02:53,840 --> 00:02:56,165 >> V蓹 bel蓹 ki, biz indi elan ed蓹 bil蓹r ki, 莽e艧idl蓹nir ki, 64 00:02:56,165 --> 00:02:59,130 v蓹 g蓹l蓹c蓹kd蓹 iterations-- array ke莽ir again-- 65 00:02:59,130 --> 00:03:01,280 biz art谋q 6 hesab yoxdur. 66 00:03:01,280 --> 00:03:03,850 Biz yaln谋z hesab etm蓹k laz谋md谋r 莽e艧idl蓹nm蓹mi艧 elementl蓹ri 67 00:03:03,850 --> 00:03:06,299 zaman biz qon艧u c眉t bax谋r谋q. 68 00:03:06,299 --> 00:03:08,340 Bel蓹likl蓹, biz bir ba艧a bubble s谋rala ke莽ir. 69 00:03:08,340 --> 00:03:11,941 Bel蓹 ki, indi biz suala geri, svop counter 0 q蓹d蓹r deyir蓹m. 70 00:03:11,941 --> 00:03:13,690 Yax艧谋 svop counter 4, bel蓹 ki, biz gedirik 71 00:03:13,690 --> 00:03:15,410 yenid蓹n bu prosesi t蓹krar saxlamaq. 72 00:03:15,410 --> 00:03:19,180 >> Biz svop counter s谋f谋rlamak olacaq 0 v蓹 h蓹r biti艧ik c眉t baxmaq. 73 00:03:19,180 --> 00:03:21,890 Bel蓹 ki, biz onlar 1 var 2 il蓹 ba艧lamaq v蓹 qaydada h蓹yata, bel蓹 ki, biz onlar谋 d蓹yi艧dirm蓹k 74 00:03:21,890 --> 00:03:23,620 v蓹 biz m眉badil蓹 counter 1 蓹lav蓹 edin. 75 00:03:23,620 --> 00:03:25,490 2 v蓹 3, onlar 眉莽眉n ist蓹yirik. 76 00:03:25,490 --> 00:03:27,060 Biz bir 艧ey etm蓹k laz谋m deyil. 77 00:03:27,060 --> 00:03:28,420 3 v蓹 5 眉莽眉n var. 78 00:03:28,420 --> 00:03:30,150 Biz orada bir 艧ey etm蓹k laz谋m deyil. 79 00:03:30,150 --> 00:03:32,515 >> 5 v蓹 4, onlar h蓹yata sifari艧 v蓹 biz 80 00:03:32,515 --> 00:03:35,130 onlar谋 d蓹yi艧dirm蓹k v蓹 蓹lav蓹 etm蓹k laz谋md谋r Svop counter 1. 81 00:03:35,130 --> 00:03:38,880 陌ndi biz, 5 h蓹r蓹k蓹t etdik n枚vb蓹ti b枚y眉k element, 82 00:03:38,880 --> 00:03:40,920 莽e艧idl蓹nm蓹mi艧 hiss蓹si sonuna. 83 00:03:40,920 --> 00:03:44,360 Bel蓹likl蓹, biz indi z蓹ng ed蓹 bil蓹rsiniz s谋ralan谋r hiss蓹sinin hiss蓹sidir. 84 00:03:44,360 --> 00:03:47,180 >> 陌ndi bax谋r谋q ekran v蓹 y蓹qin ki, dem蓹k olar, 85 00:03:47,180 --> 00:03:50,130 , m蓹n array kimi 陌ndi 莽e艧idl蓹nir. 86 00:03:50,130 --> 00:03:51,820 Amma biz h蓹l蓹 ki, s眉but ed蓹 bilm蓹z. 87 00:03:51,820 --> 00:03:54,359 Biz z蓹man蓹t yoxdur ki, s谋ralan谋r. 88 00:03:54,359 --> 00:03:56,900 Amma bu harada svop deyil counter oyun minir olacaq. 89 00:03:56,900 --> 00:03:59,060 >> Bel蓹likl蓹, biz bir ke莽id tamamlad谋m. 90 00:03:59,060 --> 00:04:00,357 svop counter 2. 91 00:04:00,357 --> 00:04:02,190 Bel蓹likl蓹, biz dem蓹k olacaq yen蓹 bu proses, 92 00:04:02,190 --> 00:04:04,290 svop counter 0 q蓹d蓹r deyir蓹m. 93 00:04:04,290 --> 00:04:05,550 0 svop counter s谋f谋rlamak. 94 00:04:05,550 --> 00:04:06,820 Bel蓹 ki, biz yenid蓹n laz谋md谋r. 95 00:04:06,820 --> 00:04:09,810 >> 陌ndi h蓹r biti艧ik c眉t baxmaq. 96 00:04:09,810 --> 00:04:11,880 Ki, 眉莽眉n 1 v蓹 2 var. 97 00:04:11,880 --> 00:04:13,590 2 v蓹 3 眉莽眉n var. 98 00:04:13,590 --> 00:04:15,010 3 v蓹 4 眉莽眉n var. 99 00:04:15,010 --> 00:04:19,250 Bel蓹 ki, bu n枚qt蓹d蓹, biz tamamlad谋m qeyd h蓹r biti艧ik c眉t baxaraq, 100 00:04:19,250 --> 00:04:22,530 lakin swap counter h蓹l蓹 0. 101 00:04:22,530 --> 00:04:25,520 >> Biz ke莽id yoxsa hans谋 elementl蓹ri, onlar 102 00:04:25,520 --> 00:04:28,340 il蓹, qaydada olmal谋d谋r Bu prosesin 蓹sas谋nda. 103 00:04:28,340 --> 00:04:32,000 V蓹 bel蓹 n枚v bir s蓹m蓹r蓹liliyinin, ki, biz komp眉ter aliml蓹ri sevgi, 104 00:04:32,000 --> 00:04:35,560 indi elan ed蓹 bil蓹r ki, b眉t眉n array olmal谋d谋r 105 00:04:35,560 --> 00:04:38,160 Biz 莽眉nki, s谋ralamas谋 h蓹r hans谋 elementl蓹ri d蓹yi艧dirm蓹k laz谋md谋r. 106 00:04:38,160 --> 00:04:40,380 Bu olduqca g枚z蓹l. 107 00:04:40,380 --> 00:04:43,260 >> Bel蓹 ki, n蓹 蓹n pis halda var bubble n枚v il蓹 ssenari? 108 00:04:43,260 --> 00:04:46,240 茝n pis halda array var tamamil蓹 蓹ks qaydada, 109 00:04:46,240 --> 00:04:49,870 v蓹 biz h蓹r bir bubble var b枚y眉k elementl蓹ri b眉t眉n 110 00:04:49,870 --> 00:04:51,780 array aras谋nda bir yoldur. 111 00:04:51,780 --> 00:04:55,350 V蓹 biz s蓹m蓹r蓹li d蓹 var bubble ki莽ik elementl蓹ri b眉t眉n geri 112 00:04:55,350 --> 00:04:57,050 脟ox array aras谋nda b眉t眉n yol. 113 00:04:57,050 --> 00:05:01,950 Bel蓹 ki, n elementl蓹rin h蓹r h蓹r蓹k蓹t var dig蓹r n elementl蓹ri b眉t眉n aras谋nda. 114 00:05:01,950 --> 00:05:04,102 Bel蓹 ki, 蓹n pis ssenari var. 115 00:05:04,102 --> 00:05:05,810 茝n yax艧谋 halda ssenari olsa da, bu 116 00:05:05,810 --> 00:05:07,880 se莽im sort q蓹d蓹r f蓹rqli. 117 00:05:07,880 --> 00:05:10,040 array art谋q biz getm蓹k zaman s谋ralan谋r. 118 00:05:10,040 --> 00:05:12,550 Biz h蓹r hans谋 bir etm蓹k yoxdur ilk pas谋 svoplar谋. 119 00:05:12,550 --> 00:05:14,940 Bel蓹 ki, biz baxmaq 眉莽眉n ola bil蓹r az elementl蓹ri, sa臒? 120 00:05:14,940 --> 00:05:18,580 Biz bu t蓹krar yoxdur art谋q bir ne莽蓹 d蓹f蓹 emal. 121 00:05:18,580 --> 00:05:19,540 >> Bel蓹 ki, n蓹 dem蓹kdir? 122 00:05:19,540 --> 00:05:22,390 Bel蓹 ki, n蓹 蓹n pis ssenari var bubble sort 眉莽眉n, v蓹 n蓹 123 00:05:22,390 --> 00:05:25,330 bubble sort 眉莽眉n 蓹n yax艧谋 ssenari? 124 00:05:25,330 --> 00:05:27,770 Bu tahmin mi? 125 00:05:27,770 --> 00:05:32,420 茝n pis halda t蓹krarlamaq laz谋md谋r b眉t眉n n elementl蓹ri n d蓹f蓹 aras谋nda. 126 00:05:32,420 --> 00:05:34,220 Bel蓹 ki, 蓹n pis halda kvadrat n edilir. 127 00:05:34,220 --> 00:05:36,550 >> Array m眉k蓹mm蓹l olarsa sorted baxmayaraq, yaln谋z 128 00:05:36,550 --> 00:05:38,580 h蓹r baxmaq bir d蓹f蓹 elementl蓹ri. 129 00:05:38,580 --> 00:05:42,670 V蓹 svop counter h蓹l蓹 0 olduqda, Bu array 莽e艧idl蓹nir dem蓹k olar. 130 00:05:42,670 --> 00:05:45,780 V蓹 bel蓹 蓹n yax艧谋 halda, bu se莽ilm蓹si daha h蓹qiq蓹t蓹n yax艧谋 131 00:05:45,780 --> 00:05:49,230 sort N omega var. 132 00:05:49,230 --> 00:05:50,270 >> M蓹n Doug Lloyd edir蓹m. 133 00:05:50,270 --> 00:05:52,140 Bu CS50 edir. 134 00:05:52,140 --> 00:05:54,382