1 00:00:00,000 --> 00:00:05,830 2 00:00:05,830 --> 00:00:07,910 >> B眉t眉n h眉quqlar, bel蓹 ki, hesablama m眉r蓹kk蓹blik. 3 00:00:07,910 --> 00:00:10,430 Bir x蓹b蓹rdarl谋q yaln谋z bir az biz d蓹 far-- dal谋艧 蓹vv蓹l 4 00:00:10,430 --> 00:00:13,070 Bu y蓹qin ki, aras谋nda olacaq 蓹n math a臒谋r 艧eyl蓹r 5 00:00:13,070 --> 00:00:14,200 biz CS50 haqq谋nda dan谋艧maq. 6 00:00:14,200 --> 00:00:16,950 脺mid edir蓹m ki, 莽ox b枚y眉k olmayacaq v蓹 biz c蓹hd v蓹 siz蓹 yard谋m olacaq 7 00:00:16,950 --> 00:00:19,200 prosesi, lakin 蓹dal蓹tli x蓹b蓹rdarl谋q bir bit. 8 00:00:19,200 --> 00:00:21,282 Bir az var riyaziyyat burada i艧tirak edir. 9 00:00:21,282 --> 00:00:23,990 B眉t眉n h眉quqlar, 眉莽眉n bel蓹 etm蓹k Bizim hesablama resurslar谋ndan istifad蓹 10 00:00:23,990 --> 00:00:28,170 real d眉nyada olan bu, h蓹qiq蓹t蓹n var alqoritml蓹r anlamaq 眉莽眉n vacibdir 11 00:00:28,170 --> 00:00:30,750 v蓹 nec蓹 data emal. 12 00:00:30,750 --> 00:00:32,810 Biz 蓹g蓹r h蓹qiq蓹t蓹n s蓹m蓹r蓹li alqoritm, biz 13 00:00:32,810 --> 00:00:36,292 ehtiyatlar谋n m蓹bl蓹臒i minimuma endirm蓹k olar biz il蓹 m蓹艧臒ul var. 14 00:00:36,292 --> 00:00:38,750 Biz bir alqoritm varsa ki, i艧 bir 莽ox etm蓹k niyy蓹tind蓹dir 15 00:00:38,750 --> 00:00:41,210 h蓹qiq蓹t蓹n emal m蓹lumatlar谋n b枚y眉k set, bu 16 00:00:41,210 --> 00:00:44,030 daha t蓹l蓹b edir daha 莽ox v蓹sait, v蓹 17 00:00:44,030 --> 00:00:47,980 m蓹hsullar谋n谋n pul, RAM, b眉t眉n n枚v眉d眉r. 18 00:00:47,980 --> 00:00:52,090 >> Bel蓹 ki, qadir olan bir analiz etm蓹k alqoritm, bu al蓹t d蓹sti istifad蓹 ed蓹r蓹k, 19 00:00:52,090 --> 00:00:56,110 蓹sas蓹n, question-- soru艧ur bu alqoritm miqyasl谋 n蓹 nec蓹 20 00:00:56,110 --> 00:00:59,020 biz bunu daha 莽ox m蓹lumat atmaq kimi? 21 00:00:59,020 --> 00:01:02,220 CS50, biz data m蓹bl蓹臒i ist蓹yirik il蓹 i艧 olduqca ki莽ik. 22 00:01:02,220 --> 00:01:05,140 脺mumiyy蓹tl蓹, bizim proqramlar谋 gedir ikinci v蓹 ya less-- run 23 00:01:05,140 --> 00:01:07,830 y蓹qin ki, 莽ox az x眉susil蓹 erk蓹n. 24 00:01:07,830 --> 00:01:12,250 >> Amma ki, m蓹艧臒ul olan bir 艧irk蓹t haqq谋nda d眉艧眉nm蓹k m眉艧t蓹ril蓹rin milyonlarla y眉zl蓹rl蓹 il蓹. 25 00:01:12,250 --> 00:01:14,970 Onlar emal etm蓹k laz谋md谋r ki, m眉艧t蓹ri data. 26 00:01:14,970 --> 00:01:18,260 M眉艧t蓹ril蓹rin say谋 kimi, onlar var, b枚y眉k v蓹 daha b枚y眉k olur 27 00:01:18,260 --> 00:01:21,230 Bu t蓹l蓹b olacaq daha 莽ox resurslar谋. 28 00:01:21,230 --> 00:01:22,926 Nec蓹 bir 莽ox resurslar谋? 29 00:01:22,926 --> 00:01:25,050 Yax艧谋 ki, nec蓹 as谋l谋d谋r biz alqoritm t蓹hlil 30 00:01:25,050 --> 00:01:28,097 Bu Toolbox vasit蓹l蓹rd蓹n istifad蓹. 31 00:01:28,097 --> 00:01:31,180 Biz m眉r蓹kk蓹bliyi haqq谋nda dan谋艧maq zaman bir alqoritm b蓹z蓹n will 32 00:01:31,180 --> 00:01:34,040 Bu vaxt adland谋r谋lacaq e艧itm蓹k m眉r蓹kk蓹bliyi v蓹 ya kosmik m眉r蓹kk蓹bliyi 33 00:01:34,040 --> 00:01:36,190 lakin biz yaln谋z olacaq complexity-- z蓹ng etm蓹k 眉莽眉n 34 00:01:36,190 --> 00:01:38,770 biz 眉mumiyy蓹tl蓹 s枚hb蓹t edirik 蓹n pis ssenari. 35 00:01:38,770 --> 00:01:42,640 M眉tl蓹q pis qalaq verilir biz bunu atma bil蓹r data, 36 00:01:42,640 --> 00:01:46,440 nec蓹 bu alqoritm gedir emal v蓹 ya data il蓹 m蓹艧臒ul? 37 00:01:46,440 --> 00:01:51,450 Biz, 眉mumiyy蓹tl蓹, 蓹n pis halda z蓹ng bir alqoritm b枚y眉k O uzunlu臒u. 38 00:01:51,450 --> 00:01:56,770 Bel蓹 ki, bir alqoritm bel蓹 bil蓹r kvadrat n v蓹 ya n O O ax谋r. 39 00:01:56,770 --> 00:01:59,110 Haqq谋nda v蓹 daha 莽ox n蓹 o ikinci dem蓹kdir. 40 00:01:59,110 --> 00:02:01,620 >> B蓹z蓹n d蓹, biz qay臒谋 yoxdur yax艧谋 ssenari haqq谋nda. 41 00:02:01,620 --> 00:02:05,400 Data h蓹r 艧ey, biz ist蓹dik olmaq v蓹 tamamil蓹 m眉k蓹mm蓹l idi 42 00:02:05,400 --> 00:02:09,630 v蓹 biz bu m眉k蓹mm蓹l g枚nd蓹rilm蓹si edildi Bizim alqoritm vasit蓹sil蓹 m蓹lumatlar谋n se莽in. 43 00:02:09,630 --> 00:02:11,470 Nec蓹 ki, v蓹ziyy蓹t idar蓹 olard谋? 44 00:02:11,470 --> 00:02:15,050 Biz b蓹z蓹n kimi istinad b枚y眉k Omega, b枚y眉k O f蓹rqli olaraq, bel蓹 ki, 45 00:02:15,050 --> 00:02:16,530 biz b枚y眉k Omega var. 46 00:02:16,530 --> 00:02:18,880 茝n yax艧谋 ssenariy蓹 Big-Omega. 47 00:02:18,880 --> 00:02:21,319 茝n pis halda ssenari 眉莽眉n Big-O. 48 00:02:21,319 --> 00:02:23,860 脺mumiyy蓹tl蓹, biz zaman dan谋艧maq bir alqoritm m眉r蓹kk蓹bliyi, 49 00:02:23,860 --> 00:02:26,370 b蓹hs edirik 蓹n pis ssenari. 50 00:02:26,370 --> 00:02:28,100 Bel蓹 ki, n蓹z蓹r蓹 ki, saxlamaq. 51 00:02:28,100 --> 00:02:31,510 >> Bu sinif, biz 眉mumiyy蓹tl蓹 olacaq k蓹nara ciddi t蓹hlili t蓹rk etm蓹k. 52 00:02:31,510 --> 00:02:35,350 Elml蓹r v蓹 sah蓹l蓹ri var Bu c眉r 艧eyl蓹r h蓹sr olunmu艧. 53 00:02:35,350 --> 00:02:37,610 Biz a臒谋l haqq谋nda dan谋艧maq zaman alqoritml蓹r vasit蓹sil蓹, 54 00:02:37,610 --> 00:02:41,822 biz 莽ox par莽a-by-par莽a ed蓹c蓹yik ki, alqoritml蓹r biz sinif haqq谋nda dan谋艧maq. 55 00:02:41,822 --> 00:02:44,780 Biz, h蓹qiq蓹t蓹n, yaln谋z s枚hb蓹t edirik 眉mumi m蓹nada vasit蓹sil蓹 蓹sasland谋r谋c谋, 56 00:02:44,780 --> 00:02:47,070 Biz d眉sturlar, v蓹 ya d蓹lill蓹r, ya kimi bir 艧ey. 57 00:02:47,070 --> 00:02:51,600 Bel蓹 ki, narahat olmay谋n, biz olmayacaq b枚y眉k math sinif 莽evrilir. 58 00:02:51,600 --> 00:02:55,920 >> Bel蓹 ki, biz m眉r蓹kk蓹bliyi qay臒谋 bildirib Bu sual, nec蓹 soru艧ur, 莽眉nki 59 00:02:55,920 --> 00:03:00,160 Bizim alqoritml蓹r b枚y眉k idar蓹 edirsiniz v蓹 b枚y眉k data d蓹stl蓹ri onlara at谋l谋r. 60 00:03:00,160 --> 00:03:01,960 Yax艧谋, bir data set n蓹dir? 61 00:03:01,960 --> 00:03:03,910 Hesab edir蓹m ki, dedi m蓹n n蓹 dem蓹k idi? 62 00:03:03,910 --> 00:03:07,600 Bu 蓹n edir n蓹 dem蓹kdir kontekstind蓹 m蓹nada vicdanl谋 olmal谋d谋r. 63 00:03:07,600 --> 00:03:11,160 Biz bir alqoritm varsa Prosesl蓹ri Strings-- biz y蓹qin edirik 64 00:03:11,160 --> 00:03:13,440 simli 枚l莽眉s眉 haqq谋nda s枚hb蓹t. 65 00:03:13,440 --> 00:03:15,190 Bu data var set-- 枚l莽眉s眉, say谋 66 00:03:15,190 --> 00:03:17,050 simli etm蓹k simvol. 67 00:03:17,050 --> 00:03:20,090 Biz s枚hb蓹t edirik, 蓹g蓹r fayllar谋 emal alqoritm, 68 00:03:20,090 --> 00:03:23,930 biz nec蓹 s枚hb蓹t ola bil蓹r 莽ox kilobayt fayl ibar蓹tdir. 69 00:03:23,930 --> 00:03:25,710 V蓹 data set var. 70 00:03:25,710 --> 00:03:28,870 Biz alqoritm b蓹hs edirsinizs蓹 ki, 眉mumiyy蓹tl蓹 seriallar谋n emal 71 00:03:28,870 --> 00:03:31,510 Bel蓹 莽e艧idl蓹nm蓹si alqoritml蓹rin kimi v蓹 ya alqoritml蓹r axtar谋艧 72 00:03:31,510 --> 00:03:36,690 biz y蓹qin ki, say谋 haqq谋nda s枚hb蓹t edirik bir s谋ra t蓹艧kil elementl蓹ri. 73 00:03:36,690 --> 00:03:39,272 >> 陌ndi biz bir 枚l莽m蓹k bil蓹r alqoritm, x眉susil蓹, 74 00:03:39,272 --> 00:03:40,980 M蓹n dey蓹nd蓹 biz M蓹n bir alqoritm 枚l莽m蓹k 75 00:03:40,980 --> 00:03:43,840 Biz nec蓹 枚l莽m蓹k bil蓹r dem蓹kdir 莽ox resurslar谋 onu edir. 76 00:03:43,840 --> 00:03:48,990 Bu resurslar谋 olsun, n蓹 q蓹d蓹r RAM-- bir bayt v蓹 ya RAM megabayt 77 00:03:48,990 --> 00:03:49,790 Bu istifad蓹 edir. 78 00:03:49,790 --> 00:03:52,320 V蓹 ya n蓹 q蓹d蓹r vaxt 莽al谋艧t谋rmak 眉莽眉n edir. 79 00:03:52,320 --> 00:03:56,200 V蓹 biz bu z蓹ng ed蓹 bil蓹rsiniz n f, 枚zba艧谋na, 枚l莽m蓹k. 80 00:03:56,200 --> 00:03:59,420 Harada n say谋 data set elementl蓹ri. 81 00:03:59,420 --> 00:04:02,640 V蓹 n f ne莽蓹 somethings var. 82 00:04:02,640 --> 00:04:07,530 Ne莽蓹 resurslar谋n谋n kontur yoxdur bu m蓹lumatlar谋n emal t蓹l蓹b edir. 83 00:04:07,530 --> 00:04:10,030 >> 陌ndi biz, h蓹qiq蓹t蓹n, qay臒谋 yoxdur d蓹qiq n f n蓹 haqq谋nda. 84 00:04:10,030 --> 00:04:13,700 茝slind蓹, biz 莽ox nadir hallarda will-- 蓹lb蓹tt蓹 ki, he莽 vaxt bu sinif I 85 00:04:13,700 --> 00:04:18,709 H蓹r hans谋 bir h蓹qiq蓹t蓹n d蓹rin dal谋艧 f n n蓹 t蓹hlili. 86 00:04:18,709 --> 00:04:23,510 Biz yaln谋z n蓹 f haqq谋nda dan谋艧maq olacaq n t蓹xmin蓹n ya n蓹 眉莽眉n 莽al谋艧谋r. 87 00:04:23,510 --> 00:04:27,600 V蓹 bir alqoritm meyl edir y眉ks蓹k order m眉dd蓹ti il蓹 dikt蓹. 88 00:04:27,600 --> 00:04:29,440 V蓹 biz n蓹 ed蓹 bil蓹rsiniz I alaraq ki, dem蓹k 89 00:04:29,440 --> 00:04:31,910 bir daha konkret misal oldu. 90 00:04:31,910 --> 00:04:34,620 >> Bel蓹 ki, biz var ki, dey蓹k 眉莽 m眉xt蓹lif alqoritml蓹ri. 91 00:04:34,620 --> 00:04:39,350 olan ilk n edir resurslar谋n ku艧ba艧谋, b蓹zi b枚lm蓹l蓹ri 92 00:04:39,350 --> 00:04:42,880 枚l莽眉s眉 n data set emal. 93 00:04:42,880 --> 00:04:47,000 Biz al谋r ikinci alqoritm var Cubed plus n kvadrat resurslar谋 n 94 00:04:47,000 --> 00:04:49,350 枚l莽眉s眉 n data set emal. 95 00:04:49,350 --> 00:04:52,030 V蓹 biz bir 眉莽眉nc眉 var ki in-- 莽al谋艧谋r alqoritm 96 00:04:52,030 --> 00:04:58,300 tutur n Cubed minus 8n kvadrat resurslar谋n plus 20 n d蓹n蓹 97 00:04:58,300 --> 00:05:02,370 bir alqoritm emal 枚l莽眉s眉 n m眉蓹yy蓹n m蓹lumatlar谋 il蓹. 98 00:05:02,370 --> 00:05:05,594 >> 陌ndi yen蓹, biz, h蓹qiq蓹t蓹n niyy蓹tind蓹 deyil detal bu s蓹viyy蓹y蓹 almaq. 99 00:05:05,594 --> 00:05:08,260 M蓹n yaln谋z bu q蓹d蓹r var h蓹qiq蓹t蓹n al谋ram burada bir n枚qt蓹y蓹 bir ill眉strasiya kimi 100 00:05:08,260 --> 00:05:10,176 M蓹n gedir蓹m ki, , ikinci edilm蓹si olan 101 00:05:10,176 --> 00:05:12,980 biz yaln谋z h蓹qiq蓹t蓹n qay臒谋 ki, 艧eyi tendensiya haqq谋nda 102 00:05:12,980 --> 00:05:14,870 data d蓹stl蓹ri daha b枚y眉k almaq kimi. 103 00:05:14,870 --> 00:05:18,220 Data set ki莽ik Bel蓹 ki, var h蓹qiq蓹t蓹n, olduqca b枚y眉k f蓹rq 104 00:05:18,220 --> 00:05:19,870 bu alqoritml蓹r. 105 00:05:19,870 --> 00:05:23,000 orada 眉莽眉nc眉 alqoritm 13 d蓹f蓹 uzun 莽蓹kir 106 00:05:23,000 --> 00:05:27,980 Resurslar谋n谋n 13 d蓹f蓹 m蓹bl蓹臒i ilk bir nisbi 莽al谋艧t谋rmak 眉莽眉n. 107 00:05:27,980 --> 00:05:31,659 >> Bizim data set 枚l莽眉s眉 10, 蓹g蓹r ki, , b枚y眉k, lakin m眉tl蓹q b枚y眉k deyil 108 00:05:31,659 --> 00:05:33,950 biz orada oldu臒unu g枚r蓹 bil蓹rsiniz h蓹qiq蓹t蓹n bir f蓹rq bir az. 109 00:05:33,950 --> 00:05:36,620 脺莽眉nc眉 alqoritm daha s蓹m蓹r蓹li olur. 110 00:05:36,620 --> 00:05:40,120 Bu, h蓹qiq蓹t蓹n, 40% haqq谋nda - v蓹 ya 60% daha s蓹m蓹r蓹li. 111 00:05:40,120 --> 00:05:41,580 40% vaxt m蓹bl蓹臒i al谋r. 112 00:05:41,580 --> 00:05:45,250 Bu bil蓹r run-- bil蓹r Resurslar谋n 400 蓹d蓹d 113 00:05:45,250 --> 00:05:47,570 枚l莽眉s眉 10 data set emal. 114 00:05:47,570 --> 00:05:49,410 Ilk Halbuki alqoritm, 蓹ksin蓹, 115 00:05:49,410 --> 00:05:54,520 resurslar谋n 1000 蓹d蓹d edir 枚l莽眉s眉 10 data set emal. 116 00:05:54,520 --> 00:05:57,240 Amma n蓹 baxmaq Bizim n枚mr蓹l蓹ri daha b枚y眉k almaq. 117 00:05:57,240 --> 00:05:59,500 >> 陌ndi f蓹rq bu alqoritml蓹r aras谋nda 118 00:05:59,500 --> 00:06:01,420 bir az daha az m眉蓹yy蓹n olma臒a ba艧lay谋r. 119 00:06:01,420 --> 00:06:04,560 Var ki, v蓹 蓹slind蓹 a艧a臒谋 sifari艧 艧蓹rtl蓹rl蓹 daha do臒rusu, 120 00:06:04,560 --> 00:06:09,390 a艧a臒谋 exponents-- il蓹 艧蓹rtl蓹ri qalxs谋n ba艧lay谋n. 121 00:06:09,390 --> 00:06:12,290 Bir veri set 枚l莽眉s眉 蓹g蓹r 1000 v蓹 ilk alqoritm 122 00:06:12,290 --> 00:06:14,170 bir milyard add谋mlar 莽al谋艧谋r. 123 00:06:14,170 --> 00:06:17,880 陌kinci alqoritm 莽al谋艧谋r bir milyard v蓹 bir milyon add谋mlar. 124 00:06:17,880 --> 00:06:20,870 V蓹 眉莽眉nc眉 alqoritm 莽al谋艧谋r bir milyard add谋mlar yaln谋z utancaq olan. 125 00:06:20,870 --> 00:06:22,620 Bu olduqca 莽ox bir milyard add谋mlar var. 126 00:06:22,620 --> 00:06:25,640 H蓹min a艧a臒谋 sifari艧 艧蓹rtl蓹ri ba艧lamaq h蓹qiq蓹t蓹n yersiz olmaq. 127 00:06:25,640 --> 00:06:27,390 V蓹 yaln谋z h蓹qiq蓹t蓹n ev hammer point 128 00:06:27,390 --> 00:06:31,240 data giri艧 枚l莽眉s眉 a olduqda million-- b眉t眉n bunlar 眉莽 olduqca 莽ox 129 00:06:31,240 --> 00:06:34,960 bir quintillion-- 蓹g蓹r almaq m蓹nim riyaziyyat correct-- add谋mlar 130 00:06:34,960 --> 00:06:37,260 bir veri giri艧 emal 枚l莽眉s眉 bir milyon. 131 00:06:37,260 --> 00:06:38,250 Bu add谋mlar bir 莽ox var. 132 00:06:38,250 --> 00:06:42,092 V蓹 蓹slind蓹 onlardan biri bil蓹r bir ne莽蓹 100,000 v蓹 ya bir ne莽蓹 100 133 00:06:42,092 --> 00:06:44,650 milyon daha az zaman biz bir s谋ra b蓹hs edirik 134 00:06:44,650 --> 00:06:46,990 ki, bu c眉r yersiz var big--. 135 00:06:46,990 --> 00:06:50,006 Onlar b眉t眉n edirl蓹r t蓹xmin蓹n n Cubed, 136 00:06:50,006 --> 00:06:52,380 v蓹 biz, h蓹qiq蓹t蓹n, h蓹val蓹 edir蓹m bu alqoritml蓹rin b眉t眉n 137 00:06:52,380 --> 00:06:59,520 n qaydada olaraq Cubed v蓹 ya n Cubed b枚y眉k-O. 138 00:06:59,520 --> 00:07:03,220 >> Burada daha 莽ox b蓹zi bir siyah谋s谋 眉mumi hesablama m眉r蓹kk蓹blik d蓹rsl蓹ri 139 00:07:03,220 --> 00:07:05,820 biz qar艧谋la艧a bil蓹rsiniz ki, alqoritml蓹r, 眉mumiyy蓹tl蓹. 140 00:07:05,820 --> 00:07:07,970 V蓹 h蓹m莽inin x眉susi CS50. 141 00:07:07,970 --> 00:07:11,410 Bu sifari艧 olunur 眉mumiyy蓹tl蓹 眉st s眉r蓹tli, 142 00:07:11,410 --> 00:07:13,940 alt谋ndak谋 眉mumiyy蓹tl蓹 yava艧 眉莽眉n. 143 00:07:13,940 --> 00:07:16,920 Bel蓹 ki, daimi vaxt alqoritml蓹r edirl蓹r as谋l谋 olmayaraq, s眉r蓹tli olmaq 144 00:07:16,920 --> 00:07:19,110 枚l莽眉s眉 data giri艧 Siz ke莽ir. 145 00:07:19,110 --> 00:07:23,760 Onlar h蓹mi艧蓹 bir 蓹m蓹liyyat v蓹 ya il蓹 m蓹艧臒ul resurslar谋n谋n bir vahid. 146 00:07:23,760 --> 00:07:25,730 2 ola bil蓹r, g眉c 3 olmaq, 4 ola bil蓹r. 147 00:07:25,730 --> 00:07:26,910 Amma bu, daimi s谋ra var. 148 00:07:26,910 --> 00:07:28,400 Bu f蓹rqli deyil. 149 00:07:28,400 --> 00:07:31,390 >> Logaritmik vaxt alqoritml蓹r q蓹d蓹r yax艧谋d谋r. 150 00:07:31,390 --> 00:07:33,950 V蓹 h蓹qiq蓹t蓹n yax艧谋 n眉mun蓹 bir logarithmic vaxt alqoritm 151 00:07:33,950 --> 00:07:37,420 siz m眉tl蓹q art谋q g枚r眉ld眉 etdik telefon kitab ayr谋 qoparmaq 152 00:07:37,420 --> 00:07:39,480 telefon kitab Mike Smith tapmaq 眉莽眉n. 153 00:07:39,480 --> 00:07:40,980 Biz yar谋s谋nda problem k蓹sdi. 154 00:07:40,980 --> 00:07:43,580 V蓹 n daha b枚y眉k olur, bel蓹 ki, v蓹 daha b枚y眉k v蓹 larger-- 155 00:07:43,580 --> 00:07:47,290 蓹slind蓹, h蓹r zaman siz ikiqat n, yaln谋z daha bir add谋m at谋r. 156 00:07:47,290 --> 00:07:49,770 Ki, bir 莽ox daha yax艧谋d谋r, bel蓹 ki, daha dem蓹k, x蓹tti vaxt. 157 00:07:49,770 --> 00:07:53,030 Siz n ikiqat 蓹g蓹r Hans谋 bu, add谋mlar say谋 iki d蓹f蓹 edir. 158 00:07:53,030 --> 00:07:55,980 Siz n 眉莽qat, bu, davam edir add谋mlar say谋 眉莽 d蓹f蓹. 159 00:07:55,980 --> 00:07:58,580 Vahidi Bir add谋m. 160 00:07:58,580 --> 00:08:01,790 >> Sonra h蓹r 艧eyi bir az more-- almaq az az b枚y眉k oradan. 161 00:08:01,790 --> 00:08:06,622 Siz b蓹z蓹n x蓹tti b蓹dii vaxt log x蓹tti vaxt deyil蓹n v蓹 ya n log n. 162 00:08:06,622 --> 00:08:08,330 V蓹 biz n眉mun蓹 laz谋md谋r bir alqoritm ki, 163 00:08:08,330 --> 00:08:13,370 h蓹l蓹 yax艧谋d谋r n log n, 莽al谋艧谋r daha kvadrat s媒rada n kvadrat. 164 00:08:13,370 --> 00:08:17,320 V蓹 ya 莽oxh蓹dli d蓹f蓹, n iki Iki daha 莽ox h蓹r hans谋 bir say谋. 165 00:08:17,320 --> 00:08:20,810 V蓹 ya exponential vaxt, hans谋 h蓹tta worse-- C n edir. 166 00:08:20,810 --> 00:08:24,670 Bel蓹 ki, b蓹zi sabit say谋 qald谋rd谋 giri艧 枚l莽眉s眉 g眉c眉. 167 00:08:24,670 --> 00:08:28,990 Bel蓹 ki, 蓹g蓹r 1,000-- var, 蓹g蓹r data giri艧, 枚l莽眉s眉 1000 edir 168 00:08:28,990 --> 00:08:31,310 Bu 1000-ci hakimiyy蓹t蓹 C ed蓹c蓹k. 169 00:08:31,310 --> 00:08:33,559 Bu 莽oxh蓹dli d蓹f蓹 莽ox pis. 170 00:08:33,559 --> 00:08:35,030 >> Fakt枚ryel vaxt daha pisdir. 171 00:08:35,030 --> 00:08:37,760 V蓹 蓹slind蓹, h蓹qiq蓹t蓹n, orada n蓹 sonsuz vaxt alqoritml蓹r var, 172 00:08:37,760 --> 00:08:43,740 kimin bel蓹 qondarma kimi axmaq sort i艧 t蓹sad眉fi bir s谋ra shuffle 眉莽眉n 173 00:08:43,740 --> 00:08:45,490 v蓹 sonra kontrol olub s谋ralan谋r. 174 00:08:45,490 --> 00:08:47,589 V蓹 bu t蓹sad眉fi deyil, 蓹g蓹r daha array shuffle 175 00:08:47,589 --> 00:08:49,130 v蓹 s谋ralan谋r olsun kontrol edin. 176 00:08:49,130 --> 00:08:51,671 V蓹 y蓹qin ki, imagine-- bil蓹r Siz bir v蓹ziyy蓹t t蓹s蓹vv眉r ed蓹 bil蓹rsiniz 177 00:08:51,671 --> 00:08:55,200 burada 蓹n pis halda, bu irad蓹 h蓹qiq蓹t蓹n s谋ra il蓹 ba艧lamaq he莽 vaxt. 178 00:08:55,200 --> 00:08:57,150 Bu alqoritm 蓹b蓹di 莽al谋艧谋r. 179 00:08:57,150 --> 00:08:59,349 V蓹 bel蓹 ki, bir olard谋 sonsuz vaxt alqoritm. 180 00:08:59,349 --> 00:09:01,890 陌n艧allah yaz谋l谋 olmayacaq H蓹r hans谋 bir fakt枚ryel v蓹 ya sonsuz vaxt 181 00:09:01,890 --> 00:09:04,510 CS50 alqoritml蓹ri. 182 00:09:04,510 --> 00:09:09,150 >> Bel蓹 ki, g枚t眉r蓹k bir az daha B蓹zi sad蓹 beton baxmaq 183 00:09:09,150 --> 00:09:11,154 hesablama m眉r蓹kk蓹blik d蓹rsl蓹ri. 184 00:09:11,154 --> 00:09:13,070 Bel蓹likl蓹, biz bir misal var v蓹 ya iki n眉mun蓹l蓹ri burada 185 00:09:13,070 --> 00:09:15,590 daimi vaxt alqoritml蓹rin, olan h蓹mi艧蓹 almaq 186 00:09:15,590 --> 00:09:17,980 蓹n pis halda bir 蓹m蓹liyyat. 187 00:09:17,980 --> 00:09:20,050 Ilk misal Bel蓹 ki, biz bir funksiyas谋 var 188 00:09:20,050 --> 00:09:23,952 , sizin 眉莽眉n 4 adlanan 枚l莽眉s眉 1000 bir s谋ra edir. 189 00:09:23,952 --> 00:09:25,660 Amma sonra y蓹qin h蓹qiq蓹t蓹n baxmaq deyil 190 00:09:25,660 --> 00:09:29,000 pseudocode h蓹qiq蓹t蓹n n蓹 qay臒谋 deyil at bunun daxili ki, serial谋n. 191 00:09:29,000 --> 00:09:30,820 H蓹mi艧蓹 yaln谋z d枚rd qaytar谋r. 192 00:09:30,820 --> 00:09:32,940 Bel蓹 ki, alqoritm, bu, baxmayaraq ki, 193 00:09:32,940 --> 00:09:35,840 1000 elementl蓹ri deyil edir onlara bir 艧ey yoxdur. 194 00:09:35,840 --> 00:09:36,590 Yaln谋z d枚rd qaytar谋r. 195 00:09:36,590 --> 00:09:38,240 O, h蓹mi艧蓹 bir add谋m var. 196 00:09:38,240 --> 00:09:41,600 >> 茝slind蓹, 2 nums-- 蓹lav蓹 olan biz well-- 蓹vv蓹l g枚rd眉m 197 00:09:41,600 --> 00:09:43,680 yaln谋z iki integers emal edir. 198 00:09:43,680 --> 00:09:44,692 Bu bir add谋m deyil. 199 00:09:44,692 --> 00:09:45,900 Bu, h蓹qiq蓹t蓹n bir ne莽蓹 add谋mlar var. 200 00:09:45,900 --> 00:09:50,780 Siz almaq, b almaq, onlara 蓹lav蓹 Birlikd蓹, siz 莽谋x谋艧 n蓹tic蓹l蓹ri. 201 00:09:50,780 --> 00:09:53,270 Bel蓹 ki, 84 add谋mlar var. 202 00:09:53,270 --> 00:09:55,510 Lakin bu, h蓹mi艧蓹 sabit var as谋l谋 olmayaraq v蓹 ya b. 203 00:09:55,510 --> 00:09:59,240 Siz almaq laz谋md谋r, b almaq, 蓹lav蓹 birlikd蓹 onlara 莽谋x谋艧 n蓹tic蓹sidir. 204 00:09:59,240 --> 00:10:02,900 Bel蓹 ki, bir daimi vaxt alqoritm var. 205 00:10:02,900 --> 00:10:05,170 >> Burada bir misal var x蓹tti vaxt alqoritm 206 00:10:05,170 --> 00:10:08,740 ki, edir gets-- alqoritm bir 蓹lav蓹 add谋m, b蓹lk蓹, 207 00:10:08,740 --> 00:10:10,740 Sizin input 1-art谋r kimi. 208 00:10:10,740 --> 00:10:14,190 Bel蓹 ki, biz arad谋臒谋n谋z dey蓹k bir s谋ra say谋 5 daxilind蓹. 209 00:10:14,190 --> 00:10:16,774 Siz bir v蓹ziyy蓹t oldu臒u ola bil蓹r Siz kifay蓹t q蓹d蓹r erk蓹n tapa bil蓹rsiniz. 210 00:10:16,774 --> 00:10:18,606 Amma siz d蓹 ola bil蓹r bir v蓹ziyy蓹t harada 211 00:10:18,606 --> 00:10:20,450 serial谋n son element ola bil蓹r. 212 00:10:20,450 --> 00:10:23,780 脰l莽眉s眉 5 bir s谋ra, 蓹g蓹r Biz say谋 5 arad谋臒谋n谋z. 213 00:10:23,780 --> 00:10:25,930 5 add谋mlar ed蓹c蓹k. 214 00:10:25,930 --> 00:10:29,180 V蓹 蓹slind蓹, var ki, t蓹s蓹vv眉r Bu array deyil 5 yerd蓹. 215 00:10:29,180 --> 00:10:32,820 Biz h蓹l蓹 h蓹qiq蓹t蓹n baxmaq serial谋n h蓹r bir element 216 00:10:32,820 --> 00:10:35,550 m眉蓹yy蓹n etm蓹k 眉莽眉n v蓹 ya 5 var. 217 00:10:35,550 --> 00:10:39,840 >> Bel蓹 ki, 蓹n pis halda, element array son 218 00:10:39,840 --> 00:10:41,700 v蓹 ya b眉t眉n m枚vcud deyil. 219 00:10:41,700 --> 00:10:44,690 Biz h蓹l蓹 baxmaq laz谋md谋r n elementl蓹ri b眉t眉n. 220 00:10:44,690 --> 00:10:47,120 V蓹 bu alqoritm x蓹tti vaxt 莽al谋艧谋r. 221 00:10:47,120 --> 00:10:50,340 Siz ki, t蓹sdiq ed蓹 bil蓹r dey蓹r蓹k bir az apard谋臒谋m谋zda, 222 00:10:50,340 --> 00:10:53,080 biz 6 element array idi 蓹g蓹r biz, say谋 5 arad谋臒谋n谋z 223 00:10:53,080 --> 00:10:54,890 6 add谋mlar bil蓹r. 224 00:10:54,890 --> 00:10:57,620 Biz 7 element array var v蓹 Biz say谋 5 arad谋臒谋n谋z. 225 00:10:57,620 --> 00:10:59,160 7 add谋mlar bil蓹r. 226 00:10:59,160 --> 00:11:02,920 Biz bir daha element 蓹lav蓹 olaraq array, bu daha bir add谋m edir. 227 00:11:02,920 --> 00:11:06,750 Ki, bir x蓹tti alqoritm var 蓹n pis halda. 228 00:11:06,750 --> 00:11:08,270 >> C眉tl眉k 眉莽眉n tez suallar. 229 00:11:08,270 --> 00:11:11,170 N蓹 runtime-- n蓹dir 蓹n pis halda uzunlu臒u 230 00:11:11,170 --> 00:11:13,700 kodu bu par莽as谋n谋? 231 00:11:13,700 --> 00:11:17,420 Bel蓹 ki, 莽al谋艧谋r, burada 4 loop var j 0, m-蓹 q蓹d蓹r b眉t眉n yol b蓹rab蓹rdir edir. 232 00:11:17,420 --> 00:11:21,980 V蓹 n蓹 m蓹n burada g枚r眉r蓹m, ki, loop b蓹d蓹n daimi vaxt 莽al谋艧谋r. 233 00:11:21,980 --> 00:11:24,730 Bel蓹 terminologiya istifad蓹 ed蓹r蓹k biz art谋q n蓹 about-- s枚hb蓹t etdik 234 00:11:24,730 --> 00:11:29,390 蓹n pis halda olard谋 Bu alqoritm uzunlu臒u? 235 00:11:29,390 --> 00:11:31,050 Ikinci edin. 236 00:11:31,050 --> 00:11:34,270 loop daxili daimi vaxt 莽al谋艧谋r. 237 00:11:34,270 --> 00:11:37,510 V蓹 xarici hiss蓹si loop m d蓹f蓹 run gedir. 238 00:11:37,510 --> 00:11:40,260 Bel蓹 ki, 蓹n pis halda runtime burada n蓹 var? 239 00:11:40,260 --> 00:11:43,210 Siz m b枚y眉k O tahmin mi? 240 00:11:43,210 --> 00:11:44,686 Siz do臒ru olar谋q. 241 00:11:44,686 --> 00:11:46,230 >> Nec蓹 ba艧qa biri haqq谋nda? 242 00:11:46,230 --> 00:11:48,590 Biz bu d蓹f蓹 bir loop daxilind蓹 loop. 243 00:11:48,590 --> 00:11:50,905 Biz xarici loop var ki, s谋f谋rdan p 莽al谋艧谋r. 244 00:11:50,905 --> 00:11:54,630 V蓹 biz 莽al谋艧谋r daxili loop var s谋f谋rdan p ki, daxilind蓹, 245 00:11:54,630 --> 00:11:57,890 M蓹n d枚vl蓹t orqan谋 oldu臒unu loop daimi vaxt 莽al谋艧谋r. 246 00:11:57,890 --> 00:12:02,330 Bel蓹 ki, 蓹n pis halda uzunlu臒u n蓹 kodu bu par莽as谋n谋? 247 00:12:02,330 --> 00:12:06,140 B蓹li, yen蓹, biz var p d蓹f蓹 莽al谋艧谋r xarici loop. 248 00:12:06,140 --> 00:12:09,660 V蓹 h蓹r s媒rada iteration ki loop deyil,. 249 00:12:09,660 --> 00:12:13,170 Biz daxili loop var ki, p d蓹f蓹 莽al谋艧谋r. 250 00:12:13,170 --> 00:12:16,900 Ki, daxilind蓹 V蓹 sonra var orada daimi s媒rada az par莽as谋n谋. 251 00:12:16,900 --> 00:12:19,890 >> Biz xarici loop varsa Bel蓹 ki, olan daxili p d蓹f蓹 莽al谋艧谋r 252 00:12:19,890 --> 00:12:22,880 daxili loop ki n蓹 d蓹f蓹 t蓹krar p 莽al谋艧谋r 253 00:12:22,880 --> 00:12:26,480 蓹n pis halda uzunlu臒u kodu bu par莽as谋n谋? 254 00:12:26,480 --> 00:12:30,730 Siz p b枚y眉k-O kare tahmin mi? 255 00:12:30,730 --> 00:12:31,690 >> M蓹n Doug Lloyd edir蓹m. 256 00:12:31,690 --> 00:12:33,880 Bu CS50 edir. 257 00:12:33,880 --> 00:12:35,622