1 00:00:00,000 --> 00:00:00,488 2 00:00:00,488 --> 00:00:10,800 >> [Musiqi ifa] 3 00:00:10,800 --> 00:00:13,500 DAVID Malan: Yaxşı. 4 00:00:13,500 --> 00:00:14,670 Bütün sağ, geri salamlayıram. 5 00:00:14,670 --> 00:00:18,120 Beləliklə, bu, əvvəlində həftə 4 onların artıq. 6 00:00:18,120 --> 00:00:21,320 Və keçən həftə xatırlamaq lazımdır, biz qoymaq Bir az kənara kod 7 00:00:21,320 --> 00:00:24,240 və biz bir az daha danışmağa başladı kimi yüksək səviyyəli haqqında şeyi 8 00:00:24,240 --> 00:00:28,130 olan baxmayaraq, axtarış və çeşidlənməsi qədər sadə fikir var 9 00:00:28,130 --> 00:00:31,840 problemlərin sinif nümayəndəsi Siz xüsusilə həll başlayacaq 10 00:00:31,840 --> 00:00:34,820 Siz yekun düşünmədən başlamaq kimi layihələr və maraqlı çözümleri 11 00:00:34,820 --> 00:00:36,760 real-dünya problemləri ola bilər. 12 00:00:36,760 --> 00:00:39,490 İndi bubble sırala sadə biri idi Belə alqoritmlər və bu, 13 00:00:39,490 --> 00:00:42,900 Bu kiçik nömrələr edərək işləyib siyahısı və ya bir sıra növ ilə 14 00:00:42,900 --> 00:00:46,530 qədər üst bubble onların yol və böyük ədəd onların yol aşağı hərəkət 15 00:00:46,530 --> 00:00:47,930 ki, siyahı sonu. 16 00:00:47,930 --> 00:00:50,650 >> Və biz görüntüləmək bilər ki, xatırlamaq bubble sırala bir az 17 00:00:50,650 --> 00:00:52,310 bu kimi bir şey. 18 00:00:52,310 --> 00:00:53,640 Mənə davam və Start basın bildirin. 19 00:00:53,640 --> 00:00:55,350 Mən bubble sırala dərhal etdik. 20 00:00:55,350 --> 00:00:58,920 Və geri əgər ki taller mavi xətləri kiçik, böyük nömrələr təmsil 21 00:00:58,920 --> 00:01:03,300 mavi xətləri kimi, az sayda təmsil biz təkrar bu yolu getmək və 22 00:01:03,300 --> 00:01:07,680 yenə hər növbəti iki bar müqayisə qırmızı başqa, biz dəyişdirmək olacaq 23 00:01:07,680 --> 00:01:11,010 ən böyük və əgər kiçik onlar üçün həyata. 24 00:01:11,010 --> 00:01:14,150 >> Bu getmək və getmək və getmək edəcək ki, , və siz böyük görürsünüz 25 00:01:14,150 --> 00:01:16,700 elementləri onların yol verirlər sağ, və kiçik elementləri 26 00:01:16,700 --> 00:01:17,900 sol yol edilməsi. 27 00:01:17,900 --> 00:01:21,380 Amma biz hesablamaq başladı səmərəliliyinin ki, 28 00:01:21,380 --> 00:01:22,970 Bu alqoritm keyfiyyəti. 29 00:01:22,970 --> 00:01:25,200 Və biz bildirib ki, pis halda, bu alqoritm etdi 30 00:01:25,200 --> 00:01:27,940 təxminən neçə addımlar? 31 00:01:27,940 --> 00:01:28,980 >> Belə n kvadrat. 32 00:01:28,980 --> 00:01:30,402 Və n nə idi? 33 00:01:30,402 --> 00:01:31,650 >> Auditoriya: elementlərinin sayı. 34 00:01:31,650 --> 00:01:32,790 >> DAVID Malan: Belə n idi elementlərinin sayı. 35 00:01:32,790 --> 00:01:33,730 Və belə ki, biz tez-tez bu edəcəyik. 36 00:01:33,730 --> 00:01:36,650 Biz ölçüsü haqqında danışmaq istədiyiniz zaman bir problem və ya bir və ölçüsü 37 00:01:36,650 --> 00:01:39,140 giriş, və ya lazım vaxt məbləği çıxış istehsal, biz yalnız rəftar 38 00:01:39,140 --> 00:01:41,610 ümumiləşdirilmiş nə giriş n kimi. 39 00:01:41,610 --> 00:01:45,970 Belə ki, geri Həftə 0, sayı səhifələr telefon kitab n idi. 40 00:01:45,970 --> 00:01:47,550 Tələbələrin sayı otaqda N edilib. 41 00:01:47,550 --> 00:01:49,630 Belə ki, burada da biz aşağıdakı edirik ki, model. 42 00:01:49,630 --> 00:01:52,800 >> İndi n kvadrat xüsusən deyil sürətli, biz daha yaxşı etməyə çalışdım. 43 00:01:52,800 --> 00:01:55,970 Və belə ki, biz bir neçə baxdı digər alqoritmlər, onlardan 44 00:01:55,970 --> 00:01:57,690 seçim sort idi. 45 00:01:57,690 --> 00:01:59,180 Idi seçim sort Belə ki, bir az fərqli. 46 00:01:59,180 --> 00:02:03,130 Demək olar ki, sadə idi, mən demək cəsarət, Mən əvvəlində başlayan vasitəsi 47 00:02:03,130 --> 00:02:06,740 könüllü siyahısı və mən bir daha və təkrar ilə getdi 48 00:02:06,740 --> 00:02:10,060 kiçik həyata Yolma siyahısı bir zamanda element və ya ona verilməsi 49 00:02:10,060 --> 00:02:13,040 onun siyahının başında. 50 00:02:13,040 --> 00:02:16,410 >> Amma bu da bir dəfə biz düşünməyə başladılar riyaziyyat və daha vasitəsilə 51 00:02:16,410 --> 00:02:19,860 şəkil, neçə dəfə haqqında fikir Mən irəli və geri geri gedir və 52 00:02:19,860 --> 00:02:24,090 və irəli, biz pis halda dedi: seçim sort da nə idi? 53 00:02:24,090 --> 00:02:24,960 n kare. 54 00:02:24,960 --> 00:02:27,490 İndi real dünyada, o bilər həqiqətən cüzi daha sürətli ola bilər. 55 00:02:27,490 --> 00:02:30,620 Yenə Çünki, mən saxlamaq yox idi Mən sıralanır idi bir dəfə backtracking ki, 56 00:02:30,620 --> 00:02:31,880 kiçik elementləri. 57 00:02:31,880 --> 00:02:35,090 Amma biz çox böyük n haqqında düşünmək və əgər Siz növ riyaziyyat kimi əgər 58 00:02:35,090 --> 00:02:39,170 Mən n kvadrat ilə board etdi minus bir şey, başqa hər şey 59 00:02:39,170 --> 00:02:41,850 n kare, bir dəfə n başqa həqiqətən böyük olur, yox 60 00:02:41,850 --> 00:02:42,850 həqiqətən çox əhəmiyyətli. 61 00:02:42,850 --> 00:02:45,470 Belə ki, kompüter alimləri kimi, biz sort kiçik bir göz yummaq 62 00:02:45,470 --> 00:02:49,220 amillər və yalnız amilindən mərkəzində etmək olacaq bir ifadə 63 00:02:49,220 --> 00:02:50,330 ən böyük fərq var. 64 00:02:50,330 --> 00:02:52,840 >> Bəli, nəhayət, biz baxdı durub sort edir. 65 00:02:52,840 --> 00:02:56,620 Və bu ruhda oxşar idi, amma iteratively keçir və daha çox 66 00:02:56,620 --> 00:03:01,250 bir də kiçik element birini seçin zaman, mən əvəzinə əl etdi ki, mən 67 00:03:01,250 --> 00:03:04,070 bütün məşğul və mən qərar qəbul edilib sağ, burada məxsusdur. 68 00:03:04,070 --> 00:03:06,160 Sonra növbəti element üçün köçüb və qərara aldı ki, o və ya 69 00:03:06,160 --> 00:03:07,470 o burada idi. 70 00:03:07,470 --> 00:03:08,810 Və sonra mən və köçürülüb. 71 00:03:08,810 --> 00:03:11,780 Və mən, yol boyu üçün güc üçün bu uşaqlar keçmək 72 00:03:11,780 --> 00:03:13,030 onlar üçün otaq etmək. 73 00:03:13,030 --> 00:03:16,880 Belə ki, ruh bərpa cür idi seleksiya sort ki, biz 74 00:03:16,880 --> 00:03:18,630 durub sırala çağırıb. 75 00:03:18,630 --> 00:03:20,810 >> Belə ki, baş bu mövzular real dünyada. 76 00:03:20,810 --> 00:03:23,640 Bir neçə il əvvəl, zaman müəyyən bir senator prezident çalışan edilmişdir 77 00:03:23,640 --> 00:03:27,160 Eric Schmidt, zamanı CEO Google, həqiqətən imkanımız oldu 78 00:03:27,160 --> 00:03:28,040 Onun müsahibə. 79 00:03:28,040 --> 00:03:32,010 Və biz bu YouTube bölüşmək istədiyiniz fikir biz çevirmək bilər, burada sizin üçün kəsmək 80 00:03:32,010 --> 00:03:32,950 həcmi. 81 00:03:32,950 --> 00:03:39,360 >> [Video playback] 82 00:03:39,360 --> 00:03:44,620 >> -İndi, senator, siz Google buradayıq və mən prezidentliyə düşünmək istəyirəm 83 00:03:44,620 --> 00:03:46,042 iş müsahibə kimi. 84 00:03:46,042 --> 00:03:47,770 >> [Gülüş] 85 00:03:47,770 --> 00:03:50,800 >> -İndi almaq çətindir prezident kimi bir iş. 86 00:03:50,800 --> 00:03:52,480 Və vasitəsilə olacaq İndi rigors. 87 00:03:52,480 --> 00:03:54,330 Google bir iş üçün də çətindir. 88 00:03:54,330 --> 00:03:59,610 Biz sualınız və biz xahiş bizim namizədlər suallar. 89 00:03:59,610 --> 00:04:02,250 Və bu bir Larry Schwimmer edir. 90 00:04:02,250 --> 00:04:05,325 >> [Gülüş] 91 00:04:05,325 --> 00:04:06,400 -Siz uşaqlar I söylüyorum alıram mi? 92 00:04:06,400 --> 00:04:08,750 Sağ burada. 93 00:04:08,750 --> 00:04:12,110 Üçün ən səmərəli yolu nədir bir milyon iki-bit integers sort? 94 00:04:12,110 --> 00:04:15,810 >> [Gülüş] 95 00:04:15,810 --> 00:04:18,260 >> -Yaxşı, uh - 96 00:04:18,260 --> 00:04:19,029 >> -Ben üzr. 97 00:04:19,029 --> 00:04:19,745 Bəlkə biz olmalıdır - 98 00:04:19,745 --> 00:04:21,000 >> -Xeyr, heç, heç, heç,. 99 00:04:21,000 --> 00:04:21,470 >> -Bu deyil - 100 00:04:21,470 --> 00:04:22,185 OK. 101 00:04:22,185 --> 00:04:25,328 >> -Mən bubble sırala edəcəklərini düşünürük getmək üçün yanlış yol ola bilər. 102 00:04:25,328 --> 00:04:26,792 >> [Gülüş] 103 00:04:26,792 --> 00:04:28,510 >> [Təzahürat və alqışlarla] 104 00:04:28,510 --> 00:04:31,211 >> Ona izah edən, on-gəlir? 105 00:04:31,211 --> 00:04:32,155 OK. 106 00:04:32,155 --> 00:04:33,350 >> [END video playback] 107 00:04:33,350 --> 00:04:35,070 >> DAVID Malan: Belə ki, orada siz var. 108 00:04:35,070 --> 00:04:39,600 Belə ki, biz bu çalışan hesablamaq başladı dəfə, belə bir şey ilə, danışmaq 109 00:04:39,600 --> 00:04:43,480 olan asimptotik notation adlı yalnız dönüş bizim sort istinad 110 00:04:43,480 --> 00:04:47,420 kor bir o kiçik amillərin göz və yalnız çalışan zaman baxaraq, 111 00:04:47,420 --> 00:04:51,250 bu alqoritmlərin performans, n zamanla həqiqətən böyük olur kimi. 112 00:04:51,250 --> 00:04:55,110 Və belə ki, biz böyük O. və böyük O tətbiq düşündük ki, təmsil bir şey 113 00:04:55,110 --> 00:04:57,000 bir üst bound kimi. 114 00:04:57,000 --> 00:04:59,570 Və həqiqətən, Barry, biz düşürebilirsiniz mic bir az daha? 115 00:04:59,570 --> 00:05:01,040 >> Biz bu bir üst bound edir düşündüm. 116 00:05:01,040 --> 00:05:04,710 N kvadrat vasitələrinin Belə böyük O ki, Ən pis halda, belə bir şey 117 00:05:04,710 --> 00:05:07,780 seleksiya sort edəcək kvadrat addımlar n. 118 00:05:07,780 --> 00:05:10,310 Durub sort kimi və ya bir şey n kvadrat addımlar olacaq. 119 00:05:10,310 --> 00:05:15,150 İndi durub kimi bir şey sort, ən pis halda nə idi? 120 00:05:15,150 --> 00:05:18,200 Bir sıra nəzərə alaraq, nə pis var tapa bilər ki, mümkün ssenari 121 00:05:18,200 --> 00:05:20,650 özünüz ilə üzləşib? 122 00:05:20,650 --> 00:05:21,860 >> Bu doğru, tamamilə geri var? 123 00:05:21,860 --> 00:05:24,530 Tamamilə geri əgər Çünki, Əgər iş bir çox var. 124 00:05:24,530 --> 00:05:26,420 Çünki siz tamamilə geri istəyirsinizsə, Siz tapmaq olacaq 125 00:05:26,420 --> 00:05:28,840 Burada ən böyük element olsa orada aşağı məxsusdur. 126 00:05:28,840 --> 00:05:31,140 Belə ki, sizə, demək bütün doğru olacaq vaxt bu anı, siz burada məxsusdur 127 00:05:31,140 --> 00:05:32,310 belə ki, tək buraxın. 128 00:05:32,310 --> 00:05:35,425 >> Sonra, oh, həyata lənətləmək, mən var Bu qədər kiçik element hərəkət 129 00:05:35,425 --> 00:05:36,470 Siz sol. 130 00:05:36,470 --> 00:05:38,770 Sonra daha nə var və təkrar. 131 00:05:38,770 --> 00:05:41,410 Və mən geri və irəli getdi, əgər fəaliyyətinin hiss sort olacaq 132 00:05:41,410 --> 00:05:45,540 ki, alqoritm, çünki daim mən də aşağı hər kəs shuffling 133 00:05:45,540 --> 00:05:46,510 üçün otaq etmək array. 134 00:05:46,510 --> 00:05:47,750 Belə ki, ən pis halda var. 135 00:05:47,750 --> 00:05:48,570 >> Əksinə - 136 00:05:48,570 --> 00:05:50,320 və bu son dəfə cliffhanger idi - 137 00:05:50,320 --> 00:05:54,065 biz bildirib ki, durub sırala hansı bir omega idi? 138 00:05:54,065 --> 00:05:57,530 Ən yaxşı halda davam nedir durub növ vaxt? 139 00:05:57,530 --> 00:05:58,520 Belə ki, əslində n oldu. 140 00:05:58,520 --> 00:06:00,980 Yəni, biz tərk boş idi şurası son dəfə. 141 00:06:00,980 --> 00:06:03,160 >> Və N omega niyə çünki var? 142 00:06:03,160 --> 00:06:06,630 Yaxşı, ən yaxşı halda, nə var durub sırala təhvil olacaq? 143 00:06:06,630 --> 00:06:09,830 Tamamilə ayrılır ki, Bəli, bir siyahısı artıq, nə minimal çalışır. 144 00:06:09,830 --> 00:06:12,460 Bəs durub sırala haqqında səliqəli var burada başlayır və ona görə ki, 145 00:06:12,460 --> 00:06:15,340 qərar, oh, siz var bir, burada məxsusdur. 146 00:06:15,340 --> 00:06:16,970 Oh, nə qismət. 147 00:06:16,970 --> 00:06:17,740 >> Siz sayı iki istəyirik. 148 00:06:17,740 --> 00:06:19,030 Siz həmçinin burada məxsusdur. 149 00:06:19,030 --> 00:06:21,010 Daha yaxşı sayı üç, Burada məxsusdur. 150 00:06:21,010 --> 00:06:25,210 Bu sonuna olur kimi tezliklə siyahısı, hər durub sırala nin pseudocode 151 00:06:25,210 --> 00:06:28,010 biz şifahi vasitəsilə gəzmiş ki, son dəfə bunu. 152 00:06:28,010 --> 00:06:32,790 Amma seçim sort, əksinə, nə saxlanılır? 153 00:06:32,790 --> 00:06:35,260 >> Saxlanılan siyahısını keçir təkrar və yenidən. 154 00:06:35,260 --> 00:06:39,160 Əsas fikir yalnız idi Siz bütün yol baxdı sonra 155 00:06:39,160 --> 00:06:42,500 siyahısı sonuna, müəyyən ola bilər seçdiyiniz element olduğunu 156 00:06:42,500 --> 00:06:45,560 həqiqətən hazırda kiçik element. 157 00:06:45,560 --> 00:06:48,920 Bu fərqli əqli modellər sonunda Belə ki, çox real-dünya verir up 158 00:06:48,920 --> 00:06:53,130 bizim üçün fərqlər, habelə bu nəzəri asimptotik fərqlər. 159 00:06:53,130 --> 00:06:56,910 >> Belə ki, yalnız n böyük O, sonra, Recap üçün kare, bir neçə belə gördüm 160 00:06:56,910 --> 00:06:58,350 İndiyədək alqoritmləri. 161 00:06:58,350 --> 00:06:59,580 N Böyük O? 162 00:06:59,580 --> 00:07:02,870 Ki, ola bilər alqoritm nədir n böyük O olduğu deyilə? 163 00:07:02,870 --> 00:07:06,930 Ən pis halda, o, edir addımlar xətti nömrəsi. 164 00:07:06,930 --> 00:07:07,810 >> OK, xətti axtarış. 165 00:07:07,810 --> 00:07:10,470 Və pis halda, harada olduğunu element zaman aradığınız 166 00:07:10,470 --> 00:07:12,950 xətti axtarış tətbiq? 167 00:07:12,950 --> 00:07:14,680 >> OK, ən pis halda, hətta mövcud deyil. 168 00:07:14,680 --> 00:07:17,000 Və ya ikinci pis halda, bu, olan sonunda bütün yol, 169 00:07:17,000 --> 00:07:18,880 plus-ya mənfi bir addım fərq. 170 00:07:18,880 --> 00:07:21,180 Belə ki, günün sonunda, biz bu xətti var demək olar. 171 00:07:21,180 --> 00:07:23,910 N Böyük O xətti axtarış olardı, ən pis halda, çünki 172 00:07:23,910 --> 00:07:26,610 element hətta mövcud deyil və ya onun sonunda bütün yolu. 173 00:07:26,610 --> 00:07:29,370 >> Yaxşı, n daxil böyük Ç. 174 00:07:29,370 --> 00:07:32,760 Biz böyük ətraflı danışmaq etməyib Bu, ancaq əvvəl bu gördük. 175 00:07:32,760 --> 00:07:36,840 Nə qondarma loqarifmik çalışır zaman, pis halda? 176 00:07:36,840 --> 00:07:38,500 >> Bəli, belə ki, binar axtarış. 177 00:07:38,500 --> 00:07:42,930 Ən pis halda və ikili axtarış yerdə element ola bilər 178 00:07:42,930 --> 00:07:45,640 orta, və ya haradasa serialın içərisində. 179 00:07:45,640 --> 00:07:48,040 Amma yalnız bir dəfə tapmaq ildə yarısında siyahısı bölmək 180 00:07:48,040 --> 00:07:48,940 yarısı yarısında yarısında. 181 00:07:48,940 --> 00:07:50,200 Və sonra voiture, bu, var. 182 00:07:50,200 --> 00:07:52,500 Və ya yenidən, ən pis halda, hətta mövcud deyil. 183 00:07:52,500 --> 00:07:56,770 Amma orada deyil ki, bilmirəm Siz növ ki, ötən çatmaq qədər 184 00:07:56,770 --> 00:08:00,470 halving tərəfindən alt-Ən çox elementləri və halving və halving. 185 00:08:00,470 --> 00:08:01,400 >> 1 Big Ç. 186 00:08:01,400 --> 00:08:03,540 Beləliklə, biz 3 2 böyük O böyük O bilər. 187 00:08:03,540 --> 00:08:06,260 Yalnız sabit bir sayı istəyirik zaman, biz yalnız sadələşdirmək növ 188 00:08:06,260 --> 00:08:07,280 ki, 1 böyük O kimi. 189 00:08:07,280 --> 00:08:10,440 Hətta real, Sürsə baxmayaraq Bir 2 və ya hətta 100 addımlar, əgər 190 00:08:10,440 --> 00:08:13,680 addımlar sabit sayı, Biz yalnız 1 böyük Ey deyirlər. 191 00:08:13,680 --> 00:08:15,930 Ki, bir alqoritm nədir 1 böyük O? 192 00:08:15,930 --> 00:08:18,350 >> Auditoriya: uzunluğu tapmaq bir dəyişən. 193 00:08:18,350 --> 00:08:21,090 >> DAVID Malan: The tapmaq dəyişən uzunluğu? 194 00:08:21,090 --> 00:08:23,870 >> Auditoriya: Xeyr, uzunluğu artıq sıralaması varsa. 195 00:08:23,870 --> 00:08:24,160 >> DAVID Malan: Yaxşı. 196 00:08:24,160 --> 00:08:27,850 OK, belə ki, bir şey uzunluğu tapmaq əgər kimi ki, bir şey uzunluğu, 197 00:08:27,850 --> 00:08:30,020 bir sıra, bəzi dəyişən saxlanılır. 198 00:08:30,020 --> 00:08:33,380 Yalnız dəyişən oxuya bilərsiniz Çünki və ya dəyişən çap, və ya 199 00:08:33,380 --> 00:08:34,960 yalnız ümumiyyətlə dəyişən olmaq. 200 00:08:34,960 --> 00:08:37,299 Daimi vaxt tələb edir və voiture. 201 00:08:37,299 --> 00:08:38,909 >> Əksinə, danışıq geri edirəm. 202 00:08:38,909 --> 00:08:42,460 C ilk həftə geri düşünün, yalnız printf zəng və çap 203 00:08:42,460 --> 00:08:46,240 ekranda bir şey arguably edir daimi dəfə, o, yalnız edir, çünki 204 00:08:46,240 --> 00:08:50,880 göstərmək üçün CPU dövründən bir sıra Ekranda ki, mətn. 205 00:08:50,880 --> 00:08:52,720 Yoxsa gözləyin - edir? 206 00:08:52,720 --> 00:08:56,430 Necə başqa biz model ola bilər printf yerinə? 207 00:08:56,430 --> 00:09:00,420 Kimsə razı etmək istəyirəm ki, bəlkə həqiqətən daimi vaxt deyil? 208 00:09:00,420 --> 00:09:03,600 Printf çalışan nin hansı mənada vaxt, həqiqətən bir string çap 209 00:09:03,600 --> 00:09:05,580 ekranın bir şey ola daimi başqa. 210 00:09:05,580 --> 00:09:07,860 >> Auditoriya: [işitilemez]. 211 00:09:07,860 --> 00:09:08,230 >> DAVID Malan: Bəli. 212 00:09:08,230 --> 00:09:09,300 Belə ki, bizim perspektiv asılıdır. 213 00:09:09,300 --> 00:09:13,390 Biz, həqiqətən, üçün daxil düşünüyorsanız simli kimi printf və 214 00:09:13,390 --> 00:09:16,380 Ona görə də biz ki, ölçüsü ölçmək onun uzunluğu giriş - belə zəng edək 215 00:09:16,380 --> 00:09:17,780 eləcə də ki, uzunluğu n - 216 00:09:17,780 --> 00:09:21,990 arguably, printf özü n böyük o siz n addımlar olacaq, çünki 217 00:09:21,990 --> 00:09:24,750 o n hər çap çox güman simvol. 218 00:09:24,750 --> 00:09:27,730 Ən azı biz güman dərəcədə Bəlkə loop üçün istifadə ki, 219 00:09:27,730 --> 00:09:28,560 başlıq altında. 220 00:09:28,560 --> 00:09:30,860 >> Ancaq biz baxmaq olardı daha yaxşı anlamaq kodu. 221 00:09:30,860 --> 00:09:33,650 And olsun ki, bir dəfə uşaqlar başlamaq Siz, öz alqoritmlər lazımdır təhlil 222 00:09:33,650 --> 00:09:34,900 sözün yalnız bunu. 223 00:09:34,900 --> 00:09:37,765 Göz almasının Sort kodunuzu və hesab edirəm ki, haqqında - Bütün sağ, mən bu loop var 224 00:09:37,765 --> 00:09:41,870 burada və ya burada iç-içə loops var n şeyi n dəfə, nə olacaq ki, 225 00:09:41,870 --> 00:09:46,050 və səbəbi yol çeşidləyə bilərsiniz kodu ilə, hətta bu 226 00:09:46,050 --> 00:09:47,980 pseudocode və faktiki kodu. 227 00:09:47,980 --> 00:09:49,730 >> Belə ki, kvadrat N omega haqqında nə? 228 00:09:49,730 --> 00:09:53,582 Alqoritm nə idi ki, ən yaxşı halda, hələ də aldı n kvadrat addımlar? 229 00:09:53,582 --> 00:09:54,014 Bəli? 230 00:09:54,014 --> 00:09:54,880 >> Auditoriya: [işitilemez]. 231 00:09:54,880 --> 00:09:55,900 >> DAVID Malan: Bu seçim növ. 232 00:09:55,900 --> 00:09:59,150 Ki, problem həqiqətən azaldıb Çünki yenə bilmirəm ki, 233 00:09:59,150 --> 00:10:02,600 Mən qədər mövcud kiçik gördük Mən bütün darn elementləri yoxlanılır etdik. 234 00:10:02,600 --> 00:10:08,050 N, demək, belə Omega, biz yalnız bir ilə gəldi. 235 00:10:08,050 --> 00:10:09,300 Durub növ. 236 00:10:09,300 --> 00:10:12,370 Siyahısına sıralanır olur artıq, ən yaxşı halda, biz yalnız var 237 00:10:12,370 --> 00:10:15,090 onun vasitəsilə bir pass etmək, hansı emin nöqtədə. 238 00:10:15,090 --> 00:10:17,890 Və sonra deyilə bilər ki, əmin, xətti olmalıdır. 239 00:10:17,890 --> 00:10:20,570 >> 1 omega haqqında nə? 240 00:10:20,570 --> 00:10:23,790 Ən yaxşı halda bilər nə addımlar sabit bir sayı? 241 00:10:23,790 --> 00:10:27,220 Belə xətti axtarış, yalnız şanslı almaq əgər və siz aradığınız element 242 00:10:27,220 --> 00:10:31,000 , siyahının başında sağ Siz başlanğıc olduğunuz ki, əgər 243 00:10:31,000 --> 00:10:33,070 O siyahıda xətti traversal. 244 00:10:33,070 --> 00:10:35,180 >> Bu bir həqiqətdir şeylər sayı. 245 00:10:35,180 --> 00:10:37,660 Məsələn, hətta ikili axtarış 1 omega edir. 246 00:10:37,660 --> 00:10:40,310 Həqiqətən darn nə almaq Çünki əgər ortasında uğurlu və tam-dab 247 00:10:40,310 --> 00:10:42,950 Sizin array sayı aradığınız? 248 00:10:42,950 --> 00:10:45,730 Beləliklə, siz həmçinin, orada uğurlu əldə edə bilərsiniz. 249 00:10:45,730 --> 00:10:49,190 >> Bu, nəhayət, n log N omega. 250 00:10:49,190 --> 00:10:52,573 Belə n log n, biz, həqiqətən etmədi hələ danışmaq, ancaq - 251 00:10:52,573 --> 00:10:53,300 >> Auditoriya: sort Birleştirme? 252 00:10:53,300 --> 00:10:53,960 >> DAVID Malan: Merge növ. 253 00:10:53,960 --> 00:10:56,920 Bu, ötən vaxt cliffhanger oldu Biz təklif və biz göstərdi yerləşir 254 00:10:56,920 --> 00:10:58,600 vizual, alqoritmlər var. 255 00:10:58,600 --> 00:11:02,470 Və yalnız belə bir növ daxil əsaslı sürətli ki, alqoritmi 256 00:11:02,470 --> 00:11:03,450 Bu digər uşaqlar bir çox. 257 00:11:03,450 --> 00:11:07,800 Əslində, yalnız qısa birləşməsi ən pis, ən yaxşı halda n log n, 258 00:11:07,800 --> 00:11:09,460 halda n log n. 259 00:11:09,460 --> 00:11:14,540 Və bu təsadüf zaman omega və böyük O eyni şey olan? 260 00:11:14,540 --> 00:11:17,310 Biz, həqiqətən, nə ki, təsvir edə bilərsiniz O, baxmayaraq ki, teta adlı 261 00:11:17,310 --> 00:11:18,220 az az ümumi. 262 00:11:18,220 --> 00:11:21,730 Lakin bu, yalnız iki həddi deməkdir bu halda, eynidir. 263 00:11:21,730 --> 00:11:25,770 >> Belə növ birləşməsi, bu nə bizim üçün həqiqətən aşağı qaynatmaq? 264 00:11:25,770 --> 00:11:27,000 Yaxşı, motivasiya xatırlayıram. 265 00:11:27,000 --> 00:11:30,340 Mənə bir animasiya qədər çəkin edək biz sonuncu dəfə baxmadı. 266 00:11:30,340 --> 00:11:33,390 Bu, eyni fikir, lakin bir az daha böyük var. 267 00:11:33,390 --> 00:11:36,160 Və mən irəli getmək və qeyd etmək gidiyorum birinci - biz durub növ var 268 00:11:36,160 --> 00:11:39,410 üst sol, sonra seçim sort, bubble sırala digər növ bir neçə - 269 00:11:39,410 --> 00:11:42,670 shell və sürətli - danışdıq deyil ki, haqqında və yığın və sort daxil. 270 00:11:42,670 --> 00:11:47,090 >> Ən azı gözlerini diqqət cəhd Belə ki, sonra sol üç top və 271 00:11:47,090 --> 00:11:49,120 Mən tıkladığınızda növ daxil bu yaşıl arrow. 272 00:11:49,120 --> 00:11:51,900 Amma yalnız, onlara bütün run edək edəcəyik Siz müxtəliflik hissi vermək 273 00:11:51,900 --> 00:11:53,980 dünyada mövcud alqoritmlərin. 274 00:11:53,980 --> 00:11:56,180 Mən bu run imkan gidiyorum yalnız bir neçə saniyə üçün. 275 00:11:56,180 --> 00:11:59,640 Və sizin gözləri diqqət əgər - Bir seçin yalnız üçün alqoritm, bunu 276 00:11:59,640 --> 00:12:02,970 saniyə - siz görmək başlamaq lazımdır o həyata ki, model. 277 00:12:02,970 --> 00:12:04,530 >> Birləşməsi sort, bildiriş edilir. 278 00:12:04,530 --> 00:12:06,430 Yığın sort, sürətli sort, shell - 279 00:12:06,430 --> 00:12:09,480 biz üç təqdim belə görünür pis alqoritmləri keçən həftə. 280 00:12:09,480 --> 00:12:12,960 Amma ki, biz bu gün burada olduğunu yaxşı birləşməsi sort baxmaq, onlardan biri 281 00:12:12,960 --> 00:12:16,500 asan olanları, hətta baxmaq üçün yəqin ki, sizin fikrinizi əymək baxmayaraq 282 00:12:16,500 --> 00:12:17,490 Bir az. 283 00:12:17,490 --> 00:12:21,130 Burada biz görürük yalnız nə qədər Seçim Sıralama gücünü zaptetti. 284 00:12:21,130 --> 00:12:24,600 >> Amma flip tərəfdən, bu, həyata keçirmək həqiqətən asan. 285 00:12:24,600 --> 00:12:28,160 Və bəlkə P Set 3 ki, biri siz həyata keçirilməsi üçün seçdi alqoritmlər 286 00:12:28,160 --> 00:12:28,960 Standard Edition üçün. 287 00:12:28,960 --> 00:12:30,970 Mükəmməl düzgün, mükəmməl gözəl. 288 00:12:30,970 --> 00:12:35,210 >> Ancaq yenə də, n böyük olur kimi, əgər daha sürətli alqoritm həyata keçirmək üçün seçin 289 00:12:35,210 --> 00:12:39,020 sort birləşməsi kimi, bahis böyük və böyük giriş, kodu yalnız 290 00:12:39,020 --> 00:12:39,800 daha sürətli run gedir. 291 00:12:39,800 --> 00:12:41,090 Sizin veb daha yaxşı işləmək olacaq. 292 00:12:41,090 --> 00:12:42,650 Sizin istifadəçi xoşbəxt olacaq. 293 00:12:42,650 --> 00:12:45,280 Və belə ki, bu təsiri var əslində verilməsi 294 00:12:45,280 --> 00:12:47,350 bizə bir daha dərin düşündüm. 295 00:12:47,350 --> 00:12:49,990 >> Elə birləşməsi nə bir nəzər edək sort haqqında əslində. 296 00:12:49,990 --> 00:12:52,992 Bu sərin şey daxil ki, sort yalnız bu deyil. 297 00:12:52,992 --> 00:12:56,300 Bu adlı ne, təkrar edir pseudocode, pseudocode varlıq 298 00:12:56,300 --> 00:12:57,720 İngilis-kimi sintaksis. 299 00:12:57,720 --> 00:12:59,890 Və sadəlik edir maraqlı növü. 300 00:12:59,890 --> 00:13:02,840 >> Belə n elementlərinin yığımı - belə ki, yalnız deməkdir, burada bir sıra var. 301 00:13:02,840 --> 00:13:04,000 Bu n şeylər var. 302 00:13:04,000 --> 00:13:05,370 Yəni biz deyən etdiyiniz bütün var. 303 00:13:05,370 --> 00:13:07,560 >> N 2-dən az olarsa, qayıtmaq. 304 00:13:07,560 --> 00:13:08,640 Belə ki, yalnız mənasız halda var. 305 00:13:08,640 --> 00:13:12,580 N az 2, onda açıq-aydın var 1 və ya 0, bu halda şey 306 00:13:12,580 --> 00:13:14,780 artıq çeşidlənir və ya mövcud deyil, belə ki, yalnız geri. 307 00:13:14,780 --> 00:13:15,900 Heç bir əlaqəsi yoxdur. 308 00:13:15,900 --> 00:13:18,360 Belə ki, yoluq-yoluq etmək üçün sadə bir işi var. 309 00:13:18,360 --> 00:13:20,110 >> Başqa, biz üç addımlar var. 310 00:13:20,110 --> 00:13:23,650 Elementlərin sol yarısı, sort Sort elementləri hüququ yarısı, 311 00:13:23,650 --> 00:13:26,650 və sonra sıralanır yarıya indirir daxil. 312 00:13:26,650 --> 00:13:29,400 Burada maraqlı olduğunu Mən sağ, punting növü Ben? 313 00:13:29,400 --> 00:13:32,300 Dairəvi müəyyən növ var bu alqoritmi. 314 00:13:32,300 --> 00:13:35,986 Bu alqoritm nə mənada deyil definition dairəvi? 315 00:13:35,986 --> 00:13:37,850 >> Auditoriya: [işitilemez]. 316 00:13:37,850 --> 00:13:41,670 >> DAVID Malan: Bəli, mənim çeşidlənməsi alqoritmi, onun addımlar iki "sort var 317 00:13:41,670 --> 00:13:44,640 ki, begs ki, bir şey. "Və sual, yaxşı, nə istifadə gedirəm 318 00:13:44,640 --> 00:13:46,460 sol yarım düzmək üçün və sağ yarım? 319 00:13:46,460 --> 00:13:49,600 Və burada gözəllik ki, hətta yenidən, bu mind-əyilmə edir 320 00:13:49,600 --> 00:13:54,030 hissəsi potensial, siz eyni istifadə edə bilərsiniz sol yarım düzmək üçün alqoritmi. 321 00:13:54,030 --> 00:13:54,700 >> Amma bir dəqiqə gözləyin. 322 00:13:54,700 --> 00:13:57,070 Siz düzmək deyib etdiyiniz zaman sol yarım, iki nə 323 00:13:57,070 --> 00:13:58,240 addımlar növbəti olacaq? 324 00:13:58,240 --> 00:14:00,550 Biz sol yarısı düzmək lazımdır sol yarısı və sağ 325 00:14:00,550 --> 00:14:01,420 sol yarısının yarısı. 326 00:14:01,420 --> 00:14:04,430 Lanet olsun, necə bu iki sort yoxdur yarıya indirir və ya dörddə indi? 327 00:14:04,430 --> 00:14:05,260 >> Amma ki, OK. 328 00:14:05,260 --> 00:14:07,830 Biz burada bir çeşidlənməsi alqoritm var. 329 00:14:07,830 --> 00:14:10,660 Və siz narahat ola bilər, baxmayaraq ki, ilk bu sonsuz növü 330 00:14:10,660 --> 00:14:12,780 loop, bu heç olan bir dövrü var son gedir - bu gedir 331 00:14:12,780 --> 00:14:15,770 nə bir dəfə başa? 332 00:14:15,770 --> 00:14:16,970 Bir n az 2 olur. 333 00:14:16,970 --> 00:14:19,180 Hansı nəhayət, baş verəcək saxlamaq əgər halving görə 334 00:14:19,180 --> 00:14:23,020 Bu yarıya indirir halving ildə halving, şübhəsiz ki, nəticədə siz başa olacaq 335 00:14:23,020 --> 00:14:25,350 yalnız 1 və ya 0 elementləri ilə. 336 00:14:25,350 --> 00:14:28,500 Olan nöqtə, bu alqoritm hazırda Bitirdiğinizde deyir. 337 00:14:28,500 --> 00:14:31,020 >> Belə ki, bu real sehrli alqoritm olmaq görünür 338 00:14:31,020 --> 00:14:33,470 ki, son addım, birləşməsi. 339 00:14:33,470 --> 00:14:37,190 Yalnız iki birləşmə ki, sadə ideya əşyalar, nəticə etibarilə neler var 340 00:14:37,190 --> 00:14:40,920 Bizim bir sıra düzmək üçün imkan, edək, səkkiz elementləri deyirlər. 341 00:14:40,920 --> 00:14:44,410 Belə ki, mən daha səkkiz stress top var burada səkkiz kağız parçaları və bir 342 00:14:44,410 --> 00:14:45,500 Google Glass - 343 00:14:45,500 --> 00:14:46,140 I saxlamaq almaq. 344 00:14:46,140 --> 00:14:46,960 >> [Gülüş] 345 00:14:46,960 --> 00:14:48,970 >> DAVID Malan: biz səkkiz ala bilər könüllü və bir-görək biz əgər 346 00:14:48,970 --> 00:14:51,430 Belə ki, bu həyata oynayır. 347 00:14:51,430 --> 00:14:52,500 Wow, OK. 348 00:14:52,500 --> 00:14:53,565 Kompüter elm fun əldə edilir. 349 00:14:53,565 --> 00:14:54,320 Bütün hüquqlar. 350 00:14:54,320 --> 00:14:57,770 Belə ki, necə haqqında üç, var ən böyük əl. 351 00:14:57,770 --> 00:14:58,580 Geri dörd. 352 00:14:58,580 --> 00:15:02,220 Və necə ki, biz bunu edəcəyik Bu sırada üç? 353 00:15:02,220 --> 00:15:03,390 Ön və dörd. 354 00:15:03,390 --> 00:15:04,920 Belə ki, səkkiz up gəlib. 355 00:15:04,920 --> 00:15:12,060 >> [Gülüş] 356 00:15:12,060 --> 00:15:13,450 >> DAVID Malan: Mən, həqiqətən, Ben onu nə əmin olun. 357 00:15:13,450 --> 00:15:14,810 Bu stress top mu? 358 00:15:14,810 --> 00:15:16,510 Bu masa lampaları? 359 00:15:16,510 --> 00:15:18,650 Maddi? 360 00:15:18,650 --> 00:15:19,680 İnternet? 361 00:15:19,680 --> 00:15:20,160 >> OK. 362 00:15:20,160 --> 00:15:21,310 Belə up gəlib. 363 00:15:21,310 --> 00:15:22,310 Kim istərdim - 364 00:15:22,310 --> 00:15:23,570 qədər gələn saxlamaq. 365 00:15:23,570 --> 00:15:24,240 In nəzər salaq. 366 00:15:24,240 --> 00:15:26,460 Və bu yerdə sizə qoyur - 367 00:15:26,460 --> 00:15:27,940 Əgər yer bir istəyirik. 368 00:15:27,940 --> 00:15:28,670 UH-oh, bir dəqiqə gözləyin. 369 00:15:28,670 --> 00:15:30,760 1, 2, 3, 4, 5, 6, 7 - yaxşı, oh. 370 00:15:30,760 --> 00:15:31,310 Bütün sağ, biz yaxşı istəyirik. 371 00:15:31,310 --> 00:15:35,130 Bütün sağ, belə hər kəs bir oturacaq var lakin Google Glass haqqında. 372 00:15:35,130 --> 00:15:36,475 Mənə növbə bu qədər edək. 373 00:15:36,475 --> 00:15:37,115 Sizin adınız nədir? 374 00:15:37,115 --> 00:15:37,440 >> Michelle: Michelle. 375 00:15:37,440 --> 00:15:38,090 >> DAVID Malan: Michelle? 376 00:15:38,090 --> 00:15:42,000 Bütün sağ, sizin kimi baxmaq almaq ki, turk, OK ki, əgər. 377 00:15:42,000 --> 00:15:44,625 Bəli, mən də, mən güman, yalnız bir an. 378 00:15:44,625 --> 00:15:45,875 Gözləmə Bütün hüquqlar. 379 00:15:45,875 --> 00:15:48,510 380 00:15:48,510 --> 00:15:50,950 Biz ilə gəlmək üçün çalışırıq olduğunuz Google Glass üçün halda istifadə və biz 381 00:15:50,950 --> 00:15:53,750 bunu yalnız əyləncə olardı düşündüm bu xalq səhnədə olduqda. 382 00:15:53,750 --> 00:15:57,120 Biz dünyada qeyd edəcək onların perspektiv. 383 00:15:57,120 --> 00:15:58,410 Bütün hüquqlar. 384 00:15:58,410 --> 00:15:59,830 Heç yəqin ki, nə Google nəzərdə tutulub. 385 00:15:59,830 --> 00:16:02,260 Əgər ağla deyil əgər bütün hüququ, qalıcı növbəti yöndəmsiz dəqiqə bu, 386 00:16:02,260 --> 00:16:03,150 ki, gözəl olardı. 387 00:16:03,150 --> 00:16:08,620 >> Bütün sağ, biz burada bir sıra var elementləri, habelə düşən dizi, 388 00:16:08,620 --> 00:16:11,480 Bu insanlar kağız parçaları ' əlləri, hazırda Sıralanmamış edir. 389 00:16:11,480 --> 00:16:12,050 >> Michelle: Oh, belə ki, qəribə deyil. 390 00:16:12,050 --> 00:16:12,810 >> DAVID Malan: Bu olduqca çox təsadüfi deyil. 391 00:16:12,810 --> 00:16:15,760 Və yalnız bir anda, biz cəhd olacaq birlikdə sort daxil həyata keçirilməsi 392 00:16:15,760 --> 00:16:17,950 əsas fikir olduğu və görürük. 393 00:16:17,950 --> 00:16:21,970 Və birləşməsi növ ilə burada oyun deyil biz hələ güman deyil ki, bir şey. 394 00:16:21,970 --> 00:16:24,030 Biz, həqiqətən, bəzi lazımdır əlavə yer. 395 00:16:24,030 --> 00:16:26,650 Beləliklə, nə xüsusilə olacaq Bu barədə Maraqlıdır ki, bu 396 00:16:26,650 --> 00:16:29,270 uşaqlar bir az ətrafında hərəkət edir bit, çünki mən varsaymaktayım ki, 397 00:16:29,270 --> 00:16:31,880 yer əlavə array var onlara arxasında, deyirlər. 398 00:16:31,880 --> 00:16:34,570 >> Onların kafedrasının arxasında istəyirik, əgər orta sıra var. 399 00:16:34,570 --> 00:16:36,960 Onlar burada oturmuş istəyirsinizsə, var əsas array. 400 00:16:36,960 --> 00:16:40,170 Amma bu var ki, bir resurs deyil bubble ilə indiyədək kullanılarak geliştirilebiliyor deyil 401 00:16:40,170 --> 00:16:42,040 sort, seçim növ ilə, durub növ ilə. 402 00:16:42,040 --> 00:16:44,600 Keçən həftə Xatırladaq, hər kəs yalnız cür yer qarışdırılmış. 403 00:16:44,600 --> 00:16:46,840 Onlar heç bir əlavə yaddaş istifadə etməmişdir. 404 00:16:46,840 --> 00:16:49,310 Biz insanlar üçün otaq etdi ətrafında insanların hərəkət. 405 00:16:49,310 --> 00:16:50,580 >> Belə ki, bu da əsas fikir deyil. 406 00:16:50,580 --> 00:16:53,410 Bu ticarət-off ümumiyyətlə, var resursların informatika. 407 00:16:53,410 --> 00:16:55,800 Əgər bir şey sürətləndirmək istəyirsinizsə, müddət kimi, siz olacaq 408 00:16:55,800 --> 00:16:56,900 qiymət ödəməli olurlar. 409 00:16:56,900 --> 00:17:00,750 Və bu qiymətləri bir çox tez-tez yer, yaddaş məbləği və ya ağır 410 00:17:00,750 --> 00:17:01,700 istifadə etdiyiniz disk space. 411 00:17:01,700 --> 00:17:03,640 Və ya, səmimi, məbləği proqramçı vaxt. 412 00:17:03,640 --> 00:17:06,700 Ne kadar insan, sizi zaman, əslində bir daha həyata keçirmək 413 00:17:06,700 --> 00:17:07,829 mürəkkəb alqoritmi. 414 00:17:07,829 --> 00:17:09,760 Amma bu gün üçün, ticarət-off zaman və məkan deyil. 415 00:17:09,760 --> 00:17:11,930 >> Uşaqlar yalnız almaq bilər, belə ki, sizin Sizə olduğunu nömrələri görə bilərsiniz 416 00:17:11,930 --> 00:17:15,839 həqiqətən 4, 2, 6, 1, 3, 7, 8 uyğun. 417 00:17:15,839 --> 00:17:16,599 Əla. 418 00:17:16,599 --> 00:17:19,520 Beləliklə, mən orkestra üçün cəhd gidiyorum əşyalar, əgər uşaqlar bilərsiniz yalnız 419 00:17:19,520 --> 00:17:21,800 burada mənim qurğuşun edin. 420 00:17:21,800 --> 00:17:26,650 >> Buna görə ilk həyata keçirəcəyik edirəm olan pseudocode ilk addım 421 00:17:26,650 --> 00:17:29,440 n Əgər n elementləri daxil haqqında 2-dən az, sonra qayıdırlar. 422 00:17:29,440 --> 00:17:31,370 Aydındır ki, yox müraciət, biz keçin. 423 00:17:31,370 --> 00:17:33,340 Belə ki, elementləri sol yarısı Sıralama. 424 00:17:33,340 --> 00:17:36,220 Belə ki, mən diqqət gidiyorum deməkdir mənim Bu yalnız bir an diqqət 425 00:17:36,220 --> 00:17:37,310 Burada dörd uşaqlar. 426 00:17:37,310 --> 00:17:39,774 Bütün sağ, mən gələn nə etməliyəm? 427 00:17:39,774 --> 00:17:40,570 >> Auditoriya: sol yarısı Sort. 428 00:17:40,570 --> 00:17:42,780 >> DAVID Malan: Belə ki, indi mən düzmək üçün Bu uşaqlar sol yarısı. 429 00:17:42,780 --> 00:17:45,580 Yenə Çünki özünüz üçün güman məqsədi sol yarısı düzmək üçün edir. 430 00:17:45,580 --> 00:17:46,440 Necə ki etməliyəm? 431 00:17:46,440 --> 00:17:49,140 Yalnız belə, təlimatlara əməl edin yenə bunu edirik, baxmayaraq ki. 432 00:17:49,140 --> 00:17:50,160 Belə ki, sol yarım Sıralama. 433 00:17:50,160 --> 00:17:52,030 İndi mən bu iki uşaqlar çeşidlənməsi alıram. 434 00:17:52,030 --> 00:17:53,563 Nədir gəlir? 435 00:17:53,563 --> 00:17:54,510 >> Auditoriya: sol yarısı Sort. 436 00:17:54,510 --> 00:17:55,460 >> DAVID Malan: sol yarısı Sort. 437 00:17:55,460 --> 00:18:00,680 Belə ki, indi bu, burada bu oturacaq, ölçüsü 1 siyahısı. 438 00:18:00,680 --> 00:18:01,365 Və adı nə yenidən? 439 00:18:01,365 --> 00:18:02,390 >> PRINCESS DAISY: Princess Daisy. 440 00:18:02,390 --> 00:18:03,690 >> DAVID Malan: Princess Daisy burada. 441 00:18:03,690 --> 00:18:07,470 Və belə ki, o, artıq çeşidlənir çünki siyahısı ölçüsü 1 edir. 442 00:18:07,470 --> 00:18:09,490 İndi nə etməliyəm? 443 00:18:09,490 --> 00:18:13,680 O siyahıda, çünki OK, qayıtmaq 2-dən az olan ölçüsü 1. 444 00:18:13,680 --> 00:18:14,320 Daha sonra növbəti addım nədir? 445 00:18:14,320 --> 00:18:17,490 İndi cür var fikrinizi backtrack. 446 00:18:17,490 --> 00:18:19,340 >> Olan doğru yarım, sort - 447 00:18:19,340 --> 00:18:19,570 Sizin adınız nədir? 448 00:18:19,570 --> 00:18:20,220 >> LINDA: Linda. 449 00:18:20,220 --> 00:18:20,980 >> DAVID Malan: Linda. 450 00:18:20,980 --> 00:18:23,210 Və biz indi nə etməliyəm biz ölçüsü 1 bir siyahısını var? 451 00:18:23,210 --> 00:18:24,440 >> Auditoriya: qayıt. 452 00:18:24,440 --> 00:18:24,760 >> DAVID Malan: Qayğıkeş. 453 00:18:24,760 --> 00:18:29,540 Biz ilk qayıtmaq və indi üçüncü addım - və mən əgər növ ilə təsvir 454 00:18:29,540 --> 00:18:33,490 İndi, indi iki oturacaqlar qucaqlayan Bu iki elementlər daxil etmək üçün var. 455 00:18:33,490 --> 00:18:35,530 Belə ki, indi təəssüf ki, elementləri məqsədilə həyata. 456 00:18:35,530 --> 00:18:39,920 Amma o burada birləşdirilməsi prosesi var çekici almaq üçün başlayır. 457 00:18:39,920 --> 00:18:42,410 >> Uşaqlar yalnız durmaq bilər Belə ki, əgər bir an, mən, siz lazımdır gidiyorum 458 00:18:42,410 --> 00:18:44,170 an, sizin kafedrasının arxasında addım. 459 00:18:44,170 --> 00:18:46,480 Və əgər Linda, 2 çünki 4-dən kiçik, nə deyil 460 00:18:46,480 --> 00:18:48,130 ilk ətrafında gəlir? 461 00:18:48,130 --> 00:18:48,690 Orada qalın. 462 00:18:48,690 --> 00:18:50,520 Linda Belə ki, ilk ətrafında gəlir. 463 00:18:50,520 --> 00:18:53,820 >> İndi əslində yalnız bir sıra əgər biz yalnız real vaxt onun hərəkət edə bilər 464 00:18:53,820 --> 00:18:55,360 Kafedrada bu spot. 465 00:18:55,360 --> 00:18:57,770 Belə ki, bəzi sabit etdi ki, təsəvvür addımlar 1 nömrəsi. 466 00:18:57,770 --> 00:18:58,480 İndi - 467 00:18:58,480 --> 00:19:01,490 Biz sizə qoymaq lazımdır burada birinci yer. 468 00:19:01,490 --> 00:19:03,930 >> İndi siz ətrafında gəlmək bilər həmçinin, biz olacaq 469 00:19:03,930 --> 00:19:06,300 yeri iki ola bilər. 470 00:19:06,300 --> 00:19:09,120 Və bu kimi, bu hiss olsa belə, Bir müddət alaraq, artıq gözəl nə var 471 00:19:09,120 --> 00:19:14,710 ki, sol yarım sol yarısı indi çeşidlənir. 472 00:19:14,710 --> 00:19:18,010 Indi əgər Növbəti addım nə idi hekayə daha geri? 473 00:19:18,010 --> 00:19:18,980 >> Auditoriya: Sağ yarısı. 474 00:19:18,980 --> 00:19:19,900 >> DAVID Malan: sağ yarısı Sort. 475 00:19:19,900 --> 00:19:21,320 Belə ki, uşaqlar, eləcə də bu var. 476 00:19:21,320 --> 00:19:23,510 Siz durmaq bilər Belə ki, əgər yalnız bir an üçün? 477 00:19:23,510 --> 00:19:25,192 Və adı nədir? 478 00:19:25,192 --> 00:19:25,540 >> Jess: Jess. 479 00:19:25,540 --> 00:19:25,870 >> DAVID Malan: Jess. 480 00:19:25,870 --> 00:19:29,720 OK, belə ki, Jess indi sola sağ yarısının yarısı. 481 00:19:29,720 --> 00:19:31,400 Və o ölçüsü 1 bir siyahısı var. 482 00:19:31,400 --> 00:19:32,380 O, açıq-aydın sıralaması var. 483 00:19:32,380 --> 00:19:33,070 Və adı yenidən? 484 00:19:33,070 --> 00:19:33,630 >> Michelle: Michelle. 485 00:19:33,630 --> 00:19:35,340 >> DAVID Malan: Michelle açıq-aydın deyil ölçüsü 1 siyahısı. 486 00:19:35,340 --> 00:19:36,050 O, artıq sıralaması var. 487 00:19:36,050 --> 00:19:38,690 Belə ki, indi sehrli, baş ki, birləşmə prosesi. 488 00:19:38,690 --> 00:19:39,790 Belə ki, kim birinci gəlmək olacaq? 489 00:19:39,790 --> 00:19:41,560 Aydındır Michelle. 490 00:19:41,560 --> 00:19:43,280 Geri ətrafında gəlmək bilər əgər. 491 00:19:43,280 --> 00:19:47,090 Indi onun üçün mövcud yer Burada bu kafedra arxasında deyil. 492 00:19:47,090 --> 00:19:51,580 İndi siz də qayıda bilər, indi iki, aydın olmaq, var 493 00:19:51,580 --> 00:19:53,810 yarıya indirir, ölçüsü 2 hər - 494 00:19:53,810 --> 00:19:57,090 və yalnız anlatımı xatirinə, əgər boşluq bir az edə bilər - 495 00:19:57,090 --> 00:19:59,780 biri yarım burada sol burada sağ yarısı. 496 00:19:59,780 --> 00:20:01,160 >> Hekayə daha geri keçmək. 497 00:20:01,160 --> 00:20:02,270 Nə addım gələcək? 498 00:20:02,270 --> 00:20:03,030 >> Auditoriya: Birleştirme. 499 00:20:03,030 --> 00:20:04,160 >> DAVID Malan: Belə ki, indi biz daxil etmək üçün var. 500 00:20:04,160 --> 00:20:07,490 Belə OK, belə ki, indi, təşəkkürlə, biz yalnız dörd stul qədər azad. 501 00:20:07,490 --> 00:20:11,480 Beləliklə, biz çox yaddaş kimi iki dəfə istifadə olunan, lakin sonra biz flip-flopping arasında verə bilər 502 00:20:11,480 --> 00:20:12,330 iki seriallarda. 503 00:20:12,330 --> 00:20:14,190 Yəni sayı ilk gəlib? 504 00:20:14,190 --> 00:20:14,850 Belə ki, açıq-aydın, Michelle. 505 00:20:14,850 --> 00:20:16,680 Belə ki, ətrafında gəlib almaq burada oturacaq. 506 00:20:16,680 --> 00:20:19,120 Və sonra 2 saylı açıq-aydın deyil Növbəti, belə ki, buraya. 507 00:20:19,120 --> 00:20:21,520 Sayı 4, 6 saylı. 508 00:20:21,520 --> 00:20:23,390 Və yenə bir var olsa belə, cəlb gəzinti az bit, 509 00:20:23,390 --> 00:20:26,010 həqiqətən, bu, dərhal baş verə bilər - bir hərəkət 510 00:20:26,010 --> 00:20:26,880 OK, yaxşı oynadıq. 511 00:20:26,880 --> 00:20:28,350 >> [Gülüş] 512 00:20:28,350 --> 00:20:29,680 >> DAVID Malan: Və indi biz istəyirik olduqca yaxşı vəziyyətdə. 513 00:20:29,680 --> 00:20:34,910 Bütün olan sol yarısı input indi sıralanır edilmişdir. 514 00:20:34,910 --> 00:20:37,370 Bütün sağ, belə ki, bu uşaqlar idi mənim üstünlüyü - 515 00:20:37,370 --> 00:20:40,340 necə bütün qızlar başa etməyib sol və sağ bütün oğlanlar? 516 00:20:40,340 --> 00:20:42,450 >> OK, belə ki, uşaqlar artıq dönüb. 517 00:20:42,450 --> 00:20:44,680 Beləliklə, mən size yol deyil Bu addımlar. 518 00:20:44,680 --> 00:20:46,550 Biz yeniden bilər görəcəyik Eyni pseudocode. 519 00:20:46,550 --> 00:20:50,050 Siz irəlidə getmək və ayağa istəyirsinizsə və uşaqlar, mənə mic verim. 520 00:20:50,050 --> 00:20:52,990 Əgər kopya deyil bilərsiniz əgər baxın nə Biz yalnız burada etdi 521 00:20:52,990 --> 00:20:53,880 siyahısı digər sonu. 522 00:20:53,880 --> 00:20:59,530 Kim, ilk danışmaq lazımdır alqoritmi əsasında? 523 00:20:59,530 --> 00:21:03,210 Belə ki, əvvəl işle izah Hər hansı bir ayaq hərəkətləri edir. 524 00:21:03,210 --> 00:21:05,930 >> HOPARLÖR 1: Yaxşı, belə-ci ildən Mən də sol yarısı am 525 00:21:05,930 --> 00:21:07,790 sol yarım, mən qaytarın. 526 00:21:07,790 --> 00:21:08,730 Sağ? 527 00:21:08,730 --> 00:21:09,250 >> DAVID Malan: Yaxşı. 528 00:21:09,250 --> 00:21:10,350 >> Sonra: - HOPARLÖR 1 529 00:21:10,350 --> 00:21:11,800 >> DAVID Malan: kim mic növbəti getmək? 530 00:21:11,800 --> 00:21:12,920 >> HOPARLÖR 1: Next nömrəsi. 531 00:21:12,920 --> 00:21:14,720 >> HOPARLÖR 2: Mən sağ yarım Ben Bu sol yarım 532 00:21:14,720 --> 00:21:17,830 sol yarım, mən qaytarın. 533 00:21:17,830 --> 00:21:18,050 >> DAVID Malan: Yaxşı. 534 00:21:18,050 --> 00:21:18,550 Siz geri. 535 00:21:18,550 --> 00:21:21,855 Belə ki, indi iki növbəti up nədir? 536 00:21:21,855 --> 00:21:23,740 >> HOPARLÖR 2: Biz kiçik olan görmək istəyirik. 537 00:21:23,740 --> 00:21:24,200 >> DAVID Malan: Eynilə elə. 538 00:21:24,200 --> 00:21:24,940 Biz daxil etmək istəyirik. 539 00:21:24,940 --> 00:21:27,590 Biz daxil etmək üçün istifadə etmək niyyətində olduğunuz yer Əgər onlar olmalarına baxmayaraq, daxil 540 00:21:27,590 --> 00:21:30,250 açıq-aydın artıq sorted, biz olacaq eyni alqoritm riayət edin. 541 00:21:30,250 --> 00:21:31,560 Belə ki, kim geri İlk gedir? 542 00:21:31,560 --> 00:21:35,720 3 Beləliklə, sonra 7. 543 00:21:35,720 --> 00:21:38,570 İndi isə mic gedir Bu uşaqlar, OK? 544 00:21:38,570 --> 00:21:43,590 >> HOPARLÖR 3: Mən hüququ yarım Ben sol yarısı, və n-dən az deyil 545 00:21:43,590 --> 00:21:45,048 1, mən yalnız qəbul etmək gidiyorum - 546 00:21:45,048 --> 00:21:46,380 >> DAVID Malan: Yaxşı. 547 00:21:46,380 --> 00:21:49,450 >> HOPARLÖR 4: Mən hüququ yarım Ben sağ sağ yarısı yarısı və Ben 548 00:21:49,450 --> 00:21:51,740 da bir adam, mən deyiləm geri gedir. 549 00:21:51,740 --> 00:21:52,990 Belə ki, indi biz birləşməsi. 550 00:21:52,990 --> 00:21:55,140 551 00:21:55,140 --> 00:21:56,150 >> HOPARLÖR 3: Beləliklə, biz geri. 552 00:21:56,150 --> 00:21:57,160 >> DAVID Malan: Beləliklə, siz geri daxil. 553 00:21:57,160 --> 00:21:59,200 Belə ki, 5 ardından 8, ilk gedir. 554 00:21:59,200 --> 00:22:01,240 Ki, olan və indi auditoriya, indi geri üçün addım 555 00:22:01,240 --> 00:22:02,200 beynimizdə geri? 556 00:22:02,200 --> 00:22:02,940 >> Auditoriya: Birleştirme. 557 00:22:02,940 --> 00:22:07,270 >> DAVID Malan: Birləşdirən sol yarısı və sağ orijinal sol yarısının yarısı. 558 00:22:07,270 --> 00:22:08,840 Belə ki, indi - 559 00:22:08,840 --> 00:22:10,520 və yalnız bu aydın etmək kosmik bir az etmək 560 00:22:10,520 --> 00:22:11,690 sizin aranızda iki uşaqlar. 561 00:22:11,690 --> 00:22:13,800 Belə ki, indi iki siyahıları ki, sol və sağ. 562 00:22:13,800 --> 00:22:18,320 Belə ki, necə biz indi uşaqlar daxil daxil yoxdur Oturacaqların ön sırada yenə? 563 00:22:18,320 --> 00:22:19,600 >> 3 ilk gedir. 564 00:22:19,600 --> 00:22:20,850 Sonra 5, açıq-aydın. 565 00:22:20,850 --> 00:22:23,110 566 00:22:23,110 --> 00:22:27,330 Sonra 7, indi 8. 567 00:22:27,330 --> 00:22:28,710 OK, indi biz? 568 00:22:28,710 --> 00:22:29,650 >> Auditoriya: etmədi. 569 00:22:29,650 --> 00:22:32,440 >> DAVID Malan: görülmüş işlər deyil, çünki Aydındır ki, qalan bir addım var. 570 00:22:32,440 --> 00:22:35,720 Ancaq yenə də, səbəbi mən bu kullanıyorum "fikrinizi geri" kimi jargon 571 00:22:35,720 --> 00:22:37,160 ki, həqiqətən, çünki bu neler. 572 00:22:37,160 --> 00:22:39,610 Biz bu addımlar bütün vasitəsilə olacaq lakin biz üçün duraklatarak növ istəyirik 573 00:22:39,610 --> 00:22:42,480 daxil anı, dalğıc dərin alqoritmi, bir an üçün duraklatarak, 574 00:22:42,480 --> 00:22:45,840 alqoritmi daxil dərin dalış, və indi bizim geri növ var 575 00:22:45,840 --> 00:22:49,430 ağıl və bu təbəqələrin bütün əvvəlki halına qaytar biz növ gözləməyə qoymaq etdiyiniz. 576 00:22:49,430 --> 00:22:51,790 >> Belə ki, indi biz ölçüsü 4 iki siyahıları var. 577 00:22:51,790 --> 00:22:54,790 Uşaqlar son bir dəfə ayağa bilər və burada yer bir az etmək 578 00:22:54,790 --> 00:22:57,230 Bu sol olduğunu aydın etmək orijinal, yarısı 579 00:22:57,230 --> 00:22:58,620 orijinal sağ yarısı. 580 00:22:58,620 --> 00:23:01,060 Kim birinci sayının ki, biz geri daxil çəkmək lazımdır? 581 00:23:01,060 --> 00:23:01,870 Əlbəttə Michelle. 582 00:23:01,870 --> 00:23:03,230 >> Belə ki, biz burada Michelle qoydu. 583 00:23:03,230 --> 00:23:05,080 Və kim 2 nömrəli var? 584 00:23:05,080 --> 00:23:06,440 2 nömrəli geri eləcə də gəlir. 585 00:23:06,440 --> 00:23:07,800 Sayı 3? 586 00:23:07,800 --> 00:23:08,510 Əla. 587 00:23:08,510 --> 00:23:16,570 Sayı 4, nömrə 5, 6 saylı, 7 saylı və sayı 8. 588 00:23:16,570 --> 00:23:18,850 >> OK, belə ki, bir çox kimi hiss addımlar, əmin üçün. 589 00:23:18,850 --> 00:23:22,390 Amma indi biz təsdiq edə bilmirsinizsə Bakalým sort daxilən ki, bu 590 00:23:22,390 --> 00:23:26,190 əsaslı alqoritm, xüsusilə n, biz gördük ki, həqiqətən böyük olur 591 00:23:26,190 --> 00:23:29,170 Animasiyalar ilə deyil, əsaslı sürətli. 592 00:23:29,170 --> 00:23:33,400 Mən pis, bu alqoritm iddia ən yaxşı halda halda, hətta 593 00:23:33,400 --> 00:23:36,160 n dəfə log n böyük Ey edir. 594 00:23:36,160 --> 00:23:39,160 Yəni bu bəzi aspekti var n addımlar atır, lakin alqoritmi 595 00:23:39,160 --> 00:23:43,110 digər aspekti yerdə var ki iteration ki, loop ki, 596 00:23:43,110 --> 00:23:44,410 log n addımlar atır. 597 00:23:44,410 --> 00:23:49,154 Nə o bizim barmaq qoya bilər iki ədəd istinad olunur? 598 00:23:49,154 --> 00:23:51,320 Bəli, burada - 599 00:23:51,320 --> 00:23:54,160 mic Hara gedəcəklər? 600 00:23:54,160 --> 00:23:58,660 >> HOPARLÖR 1: daxil n olacaq iki bizi qopur - 601 00:23:58,660 --> 00:23:59,630 mahiyyətcə, iki bölünməsi. 602 00:23:59,630 --> 00:24:00,120 >> DAVID Malan: Eynilə elə. 603 00:24:00,120 --> 00:24:03,000 Biz hər hansı bir alqoritm görmək heç bir zaman uzaq, bu model olub 604 00:24:03,000 --> 00:24:04,200 , ayırıcı ayırıcı, ayırıcı. 605 00:24:04,200 --> 00:24:05,700 Və adətən azaldıla oldu ki, bir şey etmək 606 00:24:05,700 --> 00:24:07,100 loqarifmik, log baza 2. 607 00:24:07,100 --> 00:24:10,180 Amma bu, həqiqətən, bir şey ola bilər lakin baza 2 daxil edin. 608 00:24:10,180 --> 00:24:11,330 >> İndi n haqqında nə? 609 00:24:11,330 --> 00:24:14,550 Düşünürəm ki, biz növ siz bölünür görə bilərsiniz uşaqlar - Siz bölünür, siz bölünür 610 00:24:14,550 --> 00:24:15,910 siz bölünür, siz bölünür. 611 00:24:15,910 --> 00:24:18,760 Sonunda haradan gelir? 612 00:24:18,760 --> 00:24:19,810 >> Belə ki, birləşmə var. 613 00:24:19,810 --> 00:24:20,610 Bu barədə Çünki düşünürəm. 614 00:24:20,610 --> 00:24:25,420 Birlikdə səkkiz nəfər daxil zaman, onların yarısı dörd bir sıra var vasitəsi 615 00:24:25,420 --> 00:24:27,770 və digər yarısı digər var dörd dəsti, siz necə getmək yoxdur 616 00:24:27,770 --> 00:24:28,820 ki, birləşmə etdiyini izah? 617 00:24:28,820 --> 00:24:30,830 Yaxşı, uşaqlar bunu ədalətli daxilən. 618 00:24:30,830 --> 00:24:34,140 >> Mən əvəzinə bunu Amma əgər bir az daha metodiki, mən qeyd ola bilər 619 00:24:34,140 --> 00:24:38,090 mənim sol ilə ilk leftmost şəxs tərəfdən, leftmost adam da qeyd 620 00:24:38,090 --> 00:24:42,080 ki, sağ əli ilə yarım və yalnız sonradan vasitəsilə getdi 621 00:24:42,080 --> 00:24:46,990 ən kiçik element də işarə siyahısı, Hər dəfə mənim barmaq hərəkət və 622 00:24:46,990 --> 00:24:48,970 ərzində siyahısı boyunca lazımdır. 623 00:24:48,970 --> 00:24:51,890 Amma nə bu birləşmə haqqında əsas var proses Mən bu cüt müqayisə alıram edir 624 00:24:51,890 --> 00:24:53,460 elementlərinin. 625 00:24:53,460 --> 00:24:57,270 Sağ yarısı və soldan yarım, bir backtracking heç alıram. 626 00:24:57,270 --> 00:25:00,570 >> Belə ki, birləşməsi özü edir artıq addımlar n artıq. 627 00:25:00,570 --> 00:25:03,250 Və neçə dəfə var idi birləşmə ki, bunu? 628 00:25:03,250 --> 00:25:07,150 Yaxşı, n daha çox, yox, və biz yalnız son birləşməsi ilə gördüm. 629 00:25:07,150 --> 00:25:13,120 Və belə edir ki, bir şey, əgər , n addımlar n dəfə, və ya əksinə daxil 630 00:25:13,120 --> 00:25:15,210 Bu, bizə n dəfə log n vermək olacaq. 631 00:25:15,210 --> 00:25:16,310 >> Və niyə bu daha yaxşıdır? 632 00:25:16,310 --> 00:25:19,600 Yaxşı, biz artıq log bilirsinizsə n n daha yaxşıdır - sağ? 633 00:25:19,600 --> 00:25:22,590 Biz, ikili axtarış telefon kitab gördüm Məsələn, log n mütləq idi 634 00:25:22,590 --> 00:25:23,760 xətti daha yaxşı. 635 00:25:23,760 --> 00:25:28,420 Deməkdir n dəfə log n Belə ki, başqa n dəfədən çox mütləq yaxşı 636 00:25:28,420 --> 00:25:30,390 n, AKA n kvadrat. 637 00:25:30,390 --> 00:25:32,400 Və biz nəticədə hiss budur. 638 00:25:32,400 --> 00:25:34,928 >> Alqış Belə böyük dəyirmi, əgər biz bu uşaqlar üçün ola bilər. 639 00:25:34,928 --> 00:25:38,920 >> [Alqış] 640 00:25:38,920 --> 00:25:41,550 >> DAVID Malan: Və ayrılıq hədiyyələr - Siz nömrələri saxlaya bilər 641 00:25:41,550 --> 00:25:44,010 Əgər istəyirsinizsə. 642 00:25:44,010 --> 00:25:45,620 Və ayrılıq hədiyyə, adi kimi. 643 00:25:45,620 --> 00:25:47,290 Oh, və biz sizə göndərir ki, görüntülər, Michelle. 644 00:25:47,290 --> 00:25:48,343 Təşəkkür edirik. 645 00:25:48,343 --> 00:25:49,250 Bütün hüquqlar. 646 00:25:49,250 --> 00:25:50,400 Bir stress topu özünüzü kömək edir. 647 00:25:50,400 --> 00:25:54,110 >> Və mənə arada, qoparmaq imkan təklif etmək bizim dostumuz Rob Bowden 648 00:25:54,110 --> 00:25:59,520 Bu barədə bir qədər fərqli baxış, bu barədə düşünmək bilər-ci ildən 649 00:25:59,520 --> 00:26:01,280 bir qədər baş verən addımlar müxtəlif yol. 650 00:26:01,280 --> 00:26:04,750 Haqqında Rob nə üçün əslində, set-up bizə göstərmək üçün biz var güman edir ki, 651 00:26:04,750 --> 00:26:09,030 artıq ayırıcı qədər həyata səkkiz kiçik siyahıları böyük siyahısı, 652 00:26:09,030 --> 00:26:10,570 ölçüsü 1 hər. 653 00:26:10,570 --> 00:26:13,350 >> Belə ki, biz pseudocode dəyişən edirik az yalnız almaq və düzmək üçün 654 00:26:13,350 --> 00:26:15,320 işlərin birləşdirilməsi necə əsas fikir. 655 00:26:15,320 --> 00:26:17,600 Amma nə çalışan zaman etmək haqqında o var hələ 656 00:26:17,600 --> 00:26:19,110 eyni olacaq. 657 00:26:19,110 --> 00:26:23,540 Və yenə, burada set-up o var ki, ölçüsü 1 səkkiz siyahıları ilə başlayıb. 658 00:26:23,540 --> 00:26:27,730 Belə ki, o olduğu hissəsi buraxılmış sonra əslində log n, log n, log n görülən 659 00:26:27,730 --> 00:26:31,205 giriş və bölünməsi. 660 00:26:31,205 --> 00:26:32,120 >> [Video playback] 661 00:26:32,120 --> 00:26:33,615 >> Addım bir it-var. 662 00:26:33,615 --> 00:26:38,270 Dəfələrlə addım iki üçün siyahıları cüt birləşməsi. 663 00:26:38,270 --> 00:26:39,210 >> DAVID Malan: Hm. 664 00:26:39,210 --> 00:26:41,270 Yalnız audio gəlir mənim kompüter həyata. 665 00:26:41,270 --> 00:26:42,520 Nin yenidən cəhd edək. 666 00:26:42,520 --> 00:26:45,330 667 00:26:45,330 --> 00:26:48,310 >> -Just özbaşına hansı seçin - indi biz dörd siyahıları var. 668 00:26:48,310 --> 00:26:51,590 669 00:26:51,590 --> 00:26:52,120 Əvvəl əldə edin. 670 00:26:52,120 --> 00:26:53,040 >> DAVID Malan: biz də gedin. 671 00:26:53,040 --> 00:27:00,510 >> -Birləşdirən 108 və 15, biz son up ilə siyahıda 15, 108. 672 00:27:00,510 --> 00:27:07,170 Biz, 50 və 4 birləşmə 4, 50 ilə başa. 673 00:27:07,170 --> 00:27:12,990 Biz, 8 və 42 birləşdirilməsi 8, 42 ilə başa. 674 00:27:12,990 --> 00:27:19,970 Və biz, 23 və 16 birləşdirilməsi , 16, 23 olacaq. 675 00:27:19,970 --> 00:27:23,270 >> İndi bütün siyahıları ölçüsü 2 edir. 676 00:27:23,270 --> 00:27:26,690 Qeyd edək ki, hər dörd siyahıları çeşidlənir. 677 00:27:26,690 --> 00:27:29,450 Beləliklə, biz birləşmə başlaya bilərsiniz yenidən siyahıları cüt. 678 00:27:29,450 --> 00:27:38,420 Biz, 15 və 108 və 4 və 50 birləşdirilməsi ilk, sonra, sonra 15, 4 almaq 679 00:27:38,420 --> 00:27:41,500 50, daha sonra 108. 680 00:27:41,500 --> 00:27:50,610 , 23 8, 42 və 16 birləşməsi, biz ilk almaq 8, daha sonra 16, sonra 23, 681 00:27:50,610 --> 00:27:52,700 sonra 42. 682 00:27:52,700 --> 00:27:57,600 >> Belə ki, indi biz ölçüsü yalnız iki siyahıları var 4, çeşidlənir hər biri. 683 00:27:57,600 --> 00:28:01,170 Belə ki, indi biz bu iki siyahıları birləşməsi. 684 00:28:01,170 --> 00:28:11,835 Birincisi, 4 almaq, sonra almaq 8, sonra biz sonra, 16, sonra 15 almaq 685 00:28:11,835 --> 00:28:19,456 Sonra sonra 23, 42, 50, 108. 686 00:28:19,456 --> 00:28:19,872 >> [END video playback] 687 00:28:19,872 --> 00:28:23,430 >> DAVID Malan: Yenə, bildiriş, o, heç vaxt müəyyən bir fincan bir çox dəfə toxunub 688 00:28:23,430 --> 00:28:24,860 onun hüdudlarından kənara irəlilədikdən sonra. 689 00:28:24,860 --> 00:28:26,200 O təkrar heç oldu. 690 00:28:26,200 --> 00:28:29,850 Belə ki, o, həmişə, yan hərəkət edir biz n aldığı və var. 691 00:28:29,850 --> 00:28:33,290 >> Niyə bir animasiya qoparmaq imkan Bayaq gördüm, amma bu dəfə 692 00:28:33,290 --> 00:28:35,110 birləşməsi sort yalnız diqqət. 693 00:28:35,110 --> 00:28:38,030 Mənə irəli getmək və zoom edək burada üzrə. 694 00:28:38,030 --> 00:28:42,530 Birinci Mənə bir təsadüfi giriş seçin edək, bu uca, siz bax çeşidləyə bilərsiniz 695 00:28:42,530 --> 00:28:46,600 biz verilən əvvəllər üçün etmişdir nə daxil sort həqiqətən edir. 696 00:28:46,600 --> 00:28:50,330 >> Siz və ya bu yarıya indirir almaq, belə ki, qeyd ki, bu rüb və ya bu eighths 697 00:28:50,330 --> 00:28:53,140 problem birdən-birə yaxşı forma almaq üçün başlayın. 698 00:28:53,140 --> 00:28:57,070 Və sonra nəhayət, siz görmək çox sonuna ki, bam, 699 00:28:57,070 --> 00:28:58,860 hər şey birlikdə birləşmə. 700 00:28:58,860 --> 00:29:01,690 >> Belə ki, bu yalnız üç müxtəlif eyni fikri qalır. 701 00:29:01,690 --> 00:29:05,980 Amma yalnız uçurum kimi əsas fikir, və ilk sinfində qalib 702 00:29:05,980 --> 00:29:10,640 biz elə bölmək qərara idi ki, böyük bir şey, daxil problem 703 00:29:10,640 --> 00:29:14,760 ruh eyni bir şey sort lakin kiçik və daha kiçik və daha kiçik 704 00:29:14,760 --> 00:29:15,660 və kiçik. 705 00:29:15,660 --> 00:29:18,420 >> Düşünürəm düzmək üçün indi başqa əyləncə yolu Bu barədə, hətta baxmayaraq ki, deyil 706 00:29:18,420 --> 00:29:20,520 eyni intuitiv verir anlaşma edir 707 00:29:20,520 --> 00:29:21,640 aşağıdakı animasiya. 708 00:29:21,640 --> 00:29:25,400 Beləliklə, bu birlikdə qoymaq bir video biri ki, müxtəlif bağlı 709 00:29:25,400 --> 00:29:29,970 üçün müxtəlif əməliyyatları ilə səsləri durub sırala birləşməsi sort üçün, 710 00:29:29,970 --> 00:29:31,150 digər bir neçə. 711 00:29:31,150 --> 00:29:32,330 Belə ki, bir anda, mən Play olmaq üçün gedirəm. 712 00:29:32,330 --> 00:29:33,600 Bu uzun haqqında bir dəqiqə var. 713 00:29:33,600 --> 00:29:37,410 Və hələ də görə bilərsiniz, hətta nümunələri, siz bu dəfə baş 714 00:29:37,410 --> 00:29:41,420 Bu alqoritmlər nə də eşitmək fərqli və həyata 715 00:29:41,420 --> 00:29:43,950 qədər müxtəlif nümunələri. 716 00:29:43,950 --> 00:29:45,830 >> Bu durub sortudur. 717 00:29:45,830 --> 00:29:50,400 >> [Melodiyalar PLAYING] 718 00:29:50,400 --> 00:29:52,400 >> DAVID Malan: Bu yenidən çalışır hər element əlavə etmək üçün 719 00:29:52,400 --> 00:29:52,900 o aid olduğu daxil. 720 00:29:52,900 --> 00:29:54,628 Bu bubble sortudur. 721 00:29:54,628 --> 00:30:10,097 >> [Melodiyalar PLAYING] 722 00:30:10,097 --> 00:30:13,630 >> DAVID Malan: Və hissi çeşidləyə bilərsiniz nisbətən az bunu necə işləmək 723 00:30:13,630 --> 00:30:15,834 hər addım. 724 00:30:15,834 --> 00:30:20,470 Bu bıkdırıcılıq kimi səslənir edir. 725 00:30:20,470 --> 00:30:21,472 >> [Melodiyalar PLAYING] 726 00:30:21,472 --> 00:30:25,222 >> DAVID Malan: Bu seçim sortudur, Biz istəyirik element seçin yerləşir 727 00:30:25,222 --> 00:30:28,845 daha keçir və təkrar və əvvəlində qoymuşdur. 728 00:30:28,845 --> 00:30:37,674 >> [Melodiyalar PLAYING] 729 00:30:37,674 --> 00:30:43,970 >> DAVID Malan: Bu birləşməsi sortudur, hansı həqiqətən hiss başlaya bilərsiniz. 730 00:30:43,970 --> 00:30:51,810 >> [Melodiyalar PLAYING] 731 00:30:51,810 --> 00:30:54,770 >> [Gülüş] 732 00:30:54,770 --> 00:30:58,395 >> DAVID Malan: gnome deyilən şey biz baxdı olmayan sort. 733 00:30:58,395 --> 00:31:13,630 >> [Melodiyalar PLAYING] 734 00:31:13,630 --> 00:31:17,910 >> DAVID Malan: Yəni, indi mənə bax bildirin Siz inşallah tərəfindən kimi çevirirsən 735 00:31:17,910 --> 00:31:21,110 Mən bir az sürüşmək bilər musiqi, Burada riyaziyyat bit. 736 00:31:21,110 --> 00:31:24,850 Belə ki, biz dördüncü yolu vardır bu nə deməkdir haqqında düşünmək 737 00:31:24,850 --> 00:31:29,210 sürətli fərqli ola funksiyaları biz əvvəl gördüm ki. 738 00:31:29,210 --> 00:31:32,470 Və sizdən kurs gələn edirsinizsə, riyaziyyat fon, siz 739 00:31:32,470 --> 00:31:36,030 həqiqətən artıq bəlkə bilirik ki, siz bu texnika bir müddət sillə bilər - 740 00:31:36,030 --> 00:31:40,400 yəni recursion, funksiyanı ki, birtəhər özünü çağırır. 741 00:31:40,400 --> 00:31:44,780 >> Və yenə ki, birləşmə sort Xatırladaq pseudocode mənada recursive idi 742 00:31:44,780 --> 00:31:48,460 ki, birləşmə sort nin addımlardan biri Sıralama zəng etmək üçün idi - 743 00:31:48,460 --> 00:31:49,740 ki, özü edir. 744 00:31:49,740 --> 00:31:52,480 Amma təşəkkürlə, çünki biz saxlanılır , sort zəng və ya sort daxil 745 00:31:52,480 --> 00:31:55,880 Xüsusilə, daha kiçik və daha kiçik və kiçik siyahısı, biz nəhayət 746 00:31:55,880 --> 00:32:00,005 dediyimiz olacaq nə üçün bottomed thanks bir baza halda, sabit kodlu halda ki, 747 00:32:00,005 --> 00:32:04,270 siyahısı kiçik olarsa, az 2 deyib bu halda, yalnız dərhal qayıtmaq. 748 00:32:04,270 --> 00:32:07,550 Ki, xüsusi halda yox idi varsa, alqoritm alt həyata, heç vaxt 749 00:32:07,550 --> 00:32:11,010 və həqiqətən bir nəzərə almaq olardı həqiqətən əbədi sonsuz loop. 750 00:32:11,010 --> 00:32:14,330 >> Amma biz indi qoymaq istədilər güman Bu bəzi nömrələri, yenə, n istifadə 751 00:32:14,330 --> 00:32:15,660 giriş və ölçüsü kimi. 752 00:32:15,660 --> 00:32:18,680 Və mən nə var, xahiş etmək istəyirdi cəlb ümumi vaxtını 753 00:32:18,680 --> 00:32:19,800 birləşməsi sort çalışan? 754 00:32:19,800 --> 00:32:22,960 Və ya ümumiyyətlə, nə var vaxtında dəyəri? 755 00:32:22,960 --> 00:32:24,730 >> Yaxşı ki ölçmək üçün olduqca asandır. 756 00:32:24,730 --> 00:32:29,010 N az 2 olarsa, vaxt cəlb n elementləri çeşidlənməsi ilə, 757 00:32:29,010 --> 00:32:30,480 N 2 olduğu 0 edir. 758 00:32:30,480 --> 00:32:31,410 Biz yalnız geri edir. 759 00:32:31,410 --> 00:32:32,510 Edilməsi üçün heç bir iş yoxdur. 760 00:32:32,510 --> 00:32:35,660 İndi arguably, bəlkə bu bir addım və ya iki məbləğ anlamaq üçün addımlar 761 00:32:35,660 --> 00:32:38,420 işləmək, lakin bu 0 kifayət qədər yaxın ki, Mən heç bir iş demək gidiyorum 762 00:32:38,420 --> 00:32:40,940 siyahısı, kiçik əgər tələb maraqsız olunacaq. 763 00:32:40,940 --> 00:32:42,580 >> Amma bu halda maraqlıdır. 764 00:32:42,580 --> 00:32:47,320 Bu recursive halda filialı oldu başqa bildirib ki, pseudocode, sort 765 00:32:47,320 --> 00:32:52,000 sol yarısı, sağ düzmək yarım, iki yarıya indirir daxil. 766 00:32:52,000 --> 00:32:55,530 İndi niyə bu ifadə edir ki, xərc təmsil? 767 00:32:55,530 --> 00:32:58,690 Yaxşı, n T yalnız deməkdir n elementləri düzmək üçün vaxt. 768 00:32:58,690 --> 00:33:03,070 Və sonra da sağ tərəfində orada işarə bərabər, n T bölünür 769 00:33:03,070 --> 00:33:06,600 2 nə dəyəri istinad olunur? 770 00:33:06,600 --> 00:33:07,570 Sol yarım çeşidlənməsi. 771 00:33:07,570 --> 00:33:10,990 2 bölünür n digər t ehtimalla üçün dəyəri istinad 772 00:33:10,990 --> 00:33:12,390 sağ yarım Sıralama. 773 00:33:12,390 --> 00:33:14,590 >> Və sonra plus n? 774 00:33:14,590 --> 00:33:15,420 Ki, birləşmə edilir. 775 00:33:15,420 --> 00:33:19,120 Çünki iki siyahıları, biri varsa ölçüsü 2-dən çox n və başqa ölçüsü n 776 00:33:19,120 --> 00:33:22,580 2-dən artıq, siz mahiyyətcə toxunmaq yalnız Rob kimi bu elementlərin hər biri 777 00:33:22,580 --> 00:33:24,990 Fincan hər toxunub və yalnız biz hər qeyd kimi 778 00:33:24,990 --> 00:33:26,310 səhnədə könüllü. 779 00:33:26,310 --> 00:33:28,790 Belə n birləşməsi hesabına edir. 780 00:33:28,790 --> 00:33:31,780 >> İndi təəssüf ki, bu formula özü recursive edir. 781 00:33:31,780 --> 00:33:36,390 N əgər Belə ki, demək, sual 16, əgər səhnədə 16 nəfər var 782 00:33:36,390 --> 00:33:40,670 və ya video 16 fincan, neçə ümumi addımlar onlara düzmək üçün sürer 783 00:33:40,670 --> 00:33:41,550 birləşməsi növ ilə? 784 00:33:41,550 --> 00:33:45,790 Bu, həqiqətən, açıq-aydın bir cavab deyil İndi düzmək, çünki 785 00:33:45,790 --> 00:33:48,500 recursively bu formula cavab. 786 00:33:48,500 --> 00:33:51,190 >> Mənə təklif edək, çünki Lakin ki, OK biz aşağıdakı ki. 787 00:33:51,190 --> 00:33:56,670 16 nəfər sort və ya cəlb vaxt 16 fincan təmsil olunacaq gedir 788 00:33:56,670 --> 00:33:58,020 ümumiyyətlə 16 T kimi. 789 00:33:58,020 --> 00:34:01,400 Amma o görə, bərabərdir bizim əvvəlki formula, 2 dəfə artıq 790 00:34:01,400 --> 00:34:04,780 vaxt bu sort edir 8 fincan plus 16. 791 00:34:04,780 --> 00:34:08,590 Və yenə, üstəgəl 16, birləşdirmə zamanı və 8 iki dəfə T edir 792 00:34:08,590 --> 00:34:10,790 sol yarısı və sağ yarım düzmək üçün vaxt. 793 00:34:10,790 --> 00:34:11,989 >> Ancaq yenə də, bu, kifayət deyil. 794 00:34:11,989 --> 00:34:13,210 Biz dərin dalış lazımdır. 795 00:34:13,210 --> 00:34:16,409 Bu, cavab deməkdir sual, 8 T nədir? 796 00:34:16,409 --> 00:34:19,610 Quyu 8 T yalnız 2 4 plus 8 dəfə T. 797 00:34:19,610 --> 00:34:20,520 Yaxşı, 4 T nədir? 798 00:34:20,520 --> 00:34:23,780 4 T 2 plus 4 yalnız 2 dəfə T-dir. 799 00:34:23,780 --> 00:34:25,489 Yaxşı, 2 T nədir? 800 00:34:25,489 --> 00:34:29,030 2 T 1 plus 2 yalnız 2 dəfə T-dir. 801 00:34:29,030 --> 00:34:31,940 >> Və yenə, biz əldə cür istəyirik Bu dövrü yapışdırılır. 802 00:34:31,940 --> 00:34:34,790 Amma bu barədə hit ki, baza halda deyilən. 803 00:34:34,790 --> 00:34:37,310 1 T ne Çünki, biz iddia idi? 804 00:34:37,310 --> 00:34:37,810 0. 805 00:34:37,810 --> 00:34:39,730 Belə ki, indi nəhayət, biz geri işləyə bilər. 806 00:34:39,730 --> 00:34:44,290 >> 1 T 0, mən indi bir geri bilərsiniz Bu oğlan xətti və mən 807 00:34:44,290 --> 00:34:46,330 1 T 0 plug. 808 00:34:46,330 --> 00:34:51,770 Belə ki, o deməkdir ki, o, 2 dəfə sıfra bərabər başqa 0, plus 2 kimi tanınır. 809 00:34:51,770 --> 00:34:53,739 Və belə ki, bütün ifadə 2-dir. 810 00:34:53,739 --> 00:34:58,740 >> Mən onun cavab 2 T, almaq İndi əgər 2, orta xətt, T onu yerləşdirin 811 00:34:58,740 --> 00:35:02,740 4, mənə 2 dəfə verir 2 plus 4, 8 belə. 812 00:35:02,740 --> 00:35:07,080 Mən sonra əvvəlki 8 plug edin xətti, mənə 2 dəfə 8, 16 verir. 813 00:35:07,080 --> 00:35:12,470 Və biz sonra ilə davam edərsə, 24 16 əlavə, nəhayət, biz almaq 814 00:35:12,470 --> 00:35:13,820 64 dəyər. 815 00:35:13,820 --> 00:35:18,480 >> İndi özü və sort bilir ki, n notation üçün heç bir şey ki, 816 00:35:18,480 --> 00:35:20,700 böyük O, biz etdiyiniz Omega bəhs edilmişdir. 817 00:35:20,700 --> 00:35:24,890 Lakin bu 64 həqiqətən çıxır ki, 16 giriş ölçüsü, 818 00:35:24,890 --> 00:35:27,110 16 baza 2 daxil edin. 819 00:35:27,110 --> 00:35:30,200 Bu, bir az yad əgər yalnız geri hesab edirəm ki, və geri gəlmək lazımdır 820 00:35:30,200 --> 00:35:30,700 siz nəhayət. 821 00:35:30,700 --> 00:35:33,775 Bu günlük baza 2 olarsa, bu, 2 kimi nə siz 16 verir qaldırdı? 822 00:35:33,775 --> 00:35:36,380 Oh, 4, belə ki, 16 dəfə 4 var. 823 00:35:36,380 --> 00:35:39,380 >> Və yenə bir böyük deyil, bu halda bir dumanlı yaddaş sort indi. 824 00:35:39,380 --> 00:35:43,720 Amma indi üçün, iman götürmək 16 günlük 16 64 edir. 825 00:35:43,720 --> 00:35:46,590 Və, həqiqətən, bu sadə ağlı başında olma ilə yoxlamaq, biz təsdiq etdik - 826 00:35:46,590 --> 00:35:48,250 lakin rəsmi sübuta - 827 00:35:48,250 --> 00:35:52,800 ki, birləşmə və çalışan zaman Sıralama həqiqətən n n daxil edin. 828 00:35:52,800 --> 00:35:53,790 >> Belə ki, pis deyil. 829 00:35:53,790 --> 00:35:57,260 Bu daha mütləq yaxşı Biz bu günə qədər görülən və sonra alqoritmlər 830 00:35:57,260 --> 00:36:00,710 biz kullanılarak geliştirilebiliyor etdik, çünki bu, bir var recursion adlandırılan bir texniki. 831 00:36:00,710 --> 00:36:03,880 Ki, daha, lakin daha maraqlı ayırıcı və fəth anlayışı. 832 00:36:03,880 --> 00:36:07,460 Yenə, həqiqətən həftə 0 stuff ki, İndi hətta bir təkrarlanan olunur 833 00:36:07,460 --> 00:36:08,740 daha çekici yol. 834 00:36:08,740 --> 00:36:11,750 >> İndi bir əyləncə az həyata, siz var əgər Bunu heç vaxt - və yəqin 835 00:36:11,750 --> 00:36:14,660 olmazdı, çünki normal sort nəfər bunu düşünmürəm. 836 00:36:14,660 --> 00:36:20,650 Amma google.com və əgər Əgər Mən bir şey öyrənmək istəyirəm 837 00:36:20,650 --> 00:36:22,356 recursion daxil edin. 838 00:36:22,356 --> 00:36:25,106 839 00:36:25,106 --> 00:36:29,058 >> [Gülüş] 840 00:36:29,058 --> 00:36:32,030 [Daha çox gülüş] 841 00:36:32,030 --> 00:36:33,385 DAVID Malan: Bad zarafat yavaş-yavaş yayılır. 842 00:36:33,385 --> 00:36:34,450 [Gülüş] 843 00:36:34,450 --> 00:36:36,970 DAVID Malan: Just halda, bu, var. 844 00:36:36,970 --> 00:36:38,710 Mən bunu yanlış yazım vermədi, və zarafat var. 845 00:36:38,710 --> 00:36:40,810 Bütün hüquqlar. 846 00:36:40,810 --> 00:36:42,950 Siz yanında insanlara izah əgər kifayət qədər yalnız hələ tıklayan deyil. 847 00:36:42,950 --> 00:36:47,650 Lakin recursion, ümumiyyətlə, aiddir zəng funksiyası prosesinə 848 00:36:47,650 --> 00:36:51,430 özü və ya daha çox, ümumiyyətlə, bir-birindən ayıran ola bilər ki, bir şey problem 849 00:36:51,430 --> 00:36:56,220 eyni həlli ilə tədricən həll nümayəndəsi problemləri. 850 00:36:56,220 --> 00:36:58,400 >> Yaxşı, edək dəyişiklik Gears yalnız bir an. 851 00:36:58,400 --> 00:37:00,840 Biz müəyyən cliffhangers də başa istəyirəm belə müəyyən başlamaq edək 852 00:37:00,840 --> 00:37:05,870 mərhələ, bir neçə dəqiqə çox sadə fikir - 853 00:37:05,870 --> 00:37:07,620 iki element dəyişdirmə ki, sağ? 854 00:37:07,620 --> 00:37:10,040 Bütün bu alqoritmlərin biz oldum keçmiş neçə söhbət 855 00:37:10,040 --> 00:37:12,420 mühazirələr bəzi cəlb dəyişdirmə növ. 856 00:37:12,420 --> 00:37:14,630 Bu gün onların əldə görüntülenmeyecektir edilib öz kafedra həyata 857 00:37:14,630 --> 00:37:18,570 gəzir, amma kodu, biz ki, yalnız bir array bir element almaq 858 00:37:18,570 --> 00:37:20,370 və başqa daxil Plop bu. 859 00:37:20,370 --> 00:37:21,880 >> Biz bunu haqqında necə gedirik? 860 00:37:21,880 --> 00:37:24,850 Yaxşı, mənə davam və yazmaq imkan burada tez program. 861 00:37:24,850 --> 00:37:31,600 Mən irəli getmək və nə üçün gidiyorum Bu, aşağıdakı kimi. 862 00:37:31,600 --> 00:37:33,910 Gəlin bu zəng - 863 00:37:33,910 --> 00:37:38,070 Bu bir zəng etmək üçün nə istəyirsiniz? 864 00:37:38,070 --> 00:37:38,650 >> Əslində, yox. 865 00:37:38,650 --> 00:37:39,420 Mənə geri edək. 866 00:37:39,420 --> 00:37:41,220 Mən bunu istəmirəm hələ cliffhanger. 867 00:37:41,220 --> 00:37:42,270 Bu fun korlamaq olacaq. 868 00:37:42,270 --> 00:37:43,600 Əvəzinə bunu edək. 869 00:37:43,600 --> 00:37:47,430 >> Mən bir az yazmaq istəyirəm Güman proqram və indi bu əhatə 870 00:37:47,430 --> 00:37:48,700 recursion ideyası. 871 00:37:48,700 --> 00:37:50,370 I növ var qabaqda özümü var. 872 00:37:50,370 --> 00:37:51,420 Mən aşağıdakı gedirəm. 873 00:37:51,420 --> 00:38:00,220 >> Birincisi, sürətli, standart io.h daxildir cs50.h. habelə bir daxil 874 00:38:00,220 --> 00:38:03,200 Və sonra irəli getmək gidiyorum və int əsas etibarsız elan 875 00:38:03,200 --> 00:38:04,360 adi qaydada. 876 00:38:04,360 --> 00:38:07,920 Mən fayl misnamed sonra həyata, belə ki, mənə yalnız burada belə bir. c uzadılması əlavə etmək istərdim 877 00:38:07,920 --> 00:38:09,510 biz düzgün tərtib edə bilər. 878 00:38:09,510 --> 00:38:10,970 Bu funksiya başlayın. 879 00:38:10,970 --> 00:38:13,290 >> Və funksiyası Mən yazmaq istəyirəm Sadəcə, soruşur ki biridir 880 00:38:13,290 --> 00:38:16,210 sonra bir sıra istifadəçi və əlavə arasında bütün nömrələri 881 00:38:16,210 --> 00:38:19,920 sayı və, demək, 0. 882 00:38:19,920 --> 00:38:22,510 Belə ki, birinci mən irəli getmək gidiyorum və int n bəyan edir. 883 00:38:22,510 --> 00:38:24,760 Sonra bəzi kodu kopyalayın ki, biz bir müddət istifadə etdik. 884 00:38:24,760 --> 00:38:26,660 Şey doğru olsa. 885 00:38:26,660 --> 00:38:28,000 Mən bir anda ki, qayıda bilərsiniz. 886 00:38:28,000 --> 00:38:29,010 >> Mən nə etmək istəyirsiniz? 887 00:38:29,010 --> 00:38:33,460 Mən printf müsbət demək istəyirəm tam edin. 888 00:38:33,460 --> 00:38:36,130 Və sonra mən gidiyorum n int almaq olur deyirlər. 889 00:38:36,130 --> 00:38:38,800 Belə ki, yenə də, bəzi Demirbaş kodu biz əvvəl istifadə etdiyiniz. 890 00:38:38,800 --> 00:38:40,810 Və mən bunu gidiyorum n az 1 edir. 891 00:38:40,810 --> 00:38:44,120 Belə ki, bu təmin edəcək istifadəçi Mənə bir müsbət tam verir. 892 00:38:44,120 --> 00:38:45,490 >> İndi isə aşağıdakı gedirəm. 893 00:38:45,490 --> 00:38:51,020 Mən nömrələri bütün əlavə etmək istəyirəm n, və ya 0 və n 1 arasında və 894 00:38:51,020 --> 00:38:52,570 equivalently, ümumi məbləği almaq üçün. 895 00:38:52,570 --> 00:38:55,100 Belə ki, böyük sigma simvolu Siz geri bilər. 896 00:38:55,100 --> 00:38:59,050 Beləliklə, mən birinci çağırışının bunu gidiyorum sigma adlı funksiyası, 897 00:38:59,050 --> 00:39:06,030 n bu keçən, sonra mən gidiyorum printf demək, cavab hüququ vardır. 898 00:39:06,030 --> 00:39:08,180 >> Belə ki, qısa, mən almaq və istifadəçi Int. 899 00:39:08,180 --> 00:39:09,280 Mən bunu müsbət var təmin edir. 900 00:39:09,280 --> 00:39:12,700 Mən dəyişən deyilən cavab bəyan bu növü int və mağaza qaytarılması 901 00:39:12,700 --> 00:39:15,610 giriş kimi n keçən sigma dəyəri. 902 00:39:15,610 --> 00:39:17,060 Və sonra mən ki, cavab çap. 903 00:39:17,060 --> 00:39:19,550 >> Təəssüf ki, sigma səslənir, hətta ola bilər ki, bir şey kimi 904 00:39:19,550 --> 00:39:24,040 ki, math.h fayl, onun bəyannamə, bu, həqiqətən deyil. 905 00:39:24,040 --> 00:39:24,690 Belə ki, OK. 906 00:39:24,690 --> 00:39:26,170 Mən bu özümü həyata keçirə bilərlər. 907 00:39:26,170 --> 00:39:29,160 Mən adlı bir funksiyası həyata gidiyorum Siqma və bu almaq olacaq 908 00:39:29,160 --> 00:39:29,900 parametri - 909 00:39:29,900 --> 00:39:32,100 Gəlin yalnız m zəng, yalnız belə fərqli. 910 00:39:32,100 --> 00:39:35,910 Və sonra burada, mən demək gidiyorum m 1-dən az olduğu halda yaxşı, - bu, 911 00:39:35,910 --> 00:39:38,180 çox proqram maraqsız. 912 00:39:38,180 --> 00:39:41,700 Beləliklə, mən davam gedən və alıram dərhal 0 qaytarın. 913 00:39:41,700 --> 00:39:45,920 Bu, yalnız bütün əlavə etmək üçün mənada etmir 1 və m əgər arasında nömrələri 914 00:39:45,920 --> 00:39:48,470 özü 0 və ya mənfi. 915 00:39:48,470 --> 00:39:50,900 >> Və sonra irəli getmək gidiyorum və çox iteratively bunu. 916 00:39:50,900 --> 00:39:53,090 Mən köhnə məktəb bu cür etmək gidiyorum və mən irəli getmək gidiyorum 917 00:39:53,090 --> 00:39:57,150 və mən gidiyorum ki, 0 olmağa məbləğ bəyan edir. 918 00:39:57,150 --> 00:39:59,630 Sonra Mən gedirəm int loop üçün - 919 00:39:59,630 --> 00:40:02,820 və mənə bu, bizim uyğun edək distribution kodu, belə surəti 920 00:40:02,820 --> 00:40:07,500 evdə. int i qədər 1 olur i daha az və ya m bərabərdir. 921 00:40:07,500 --> 00:40:09,430 i plus plus. 922 00:40:09,430 --> 00:40:11,430 Və sonra daxili loop üçün bu - 923 00:40:11,430 --> 00:40:12,440 biz demək olar ki, orada etdiyiniz - 924 00:40:12,440 --> 00:40:15,810 cəmi məbləğin plus 1 olur. 925 00:40:15,810 --> 00:40:17,670 Və sonra məbləği geri gedirəm. 926 00:40:17,670 --> 00:40:19,420 >> Beləliklə, mən tez bunu olduqca admittedly. 927 00:40:19,420 --> 00:40:22,775 Ancaq yenə də, əsas funksiyası olduqca var biz var Məcəlləsinə əsasən, sadə 928 00:40:22,775 --> 00:40:23,190 İndiyədək yazılı. 929 00:40:23,190 --> 00:40:25,610 Müsbət almaq üçün ikili loop istifadə edir istifadəçi Int. 930 00:40:25,610 --> 00:40:29,870 Mən sonra yeni funksiya ki, int keçmək n, yenidən, bu zəng, sigma çağırıb. 931 00:40:29,870 --> 00:40:33,100 Və mən qaytarılması dəyər, cavab saxlamaq Hal-hazırda qara qutusu 932 00:40:33,100 --> 00:40:35,460 dəyişəndə, sigma kimi tanınan cavab çağırıb. 933 00:40:35,460 --> 00:40:36,580 Sonra o yazdırın. 934 00:40:36,580 --> 00:40:39,090 >> Indi hekayə davam etsəniz, sigma necə həyata keçirilir? 935 00:40:39,090 --> 00:40:40,840 Mən aşağıdakı kimi həyata keçirilməsi üçün təklif. 936 00:40:40,840 --> 00:40:43,560 Səhv yoxlanılması Birincisi, bir az istifadəçi deyil əmin etmək üçün 937 00:40:43,560 --> 00:40:46,480 Mənimlə messing və keçən bəzi mənfi və ya 0 dəyəri. 938 00:40:46,480 --> 00:40:49,710 Sonra adlı dəyişən elan məbləği və bu 0 seçin. 939 00:40:49,710 --> 00:40:55,910 >> İndi Mən bərabər hərəkət başlayacaq 1 Bütün yol və m o cümlədən, 940 00:40:55,910 --> 00:41:00,130 Mən bütün daxil etmək istəyirəm, çünki m vasitəsilə bir nömrələri, daxil. 941 00:41:00,130 --> 00:41:04,350 Və daxili loop üçün bu, mən yalnız bunu məbləği indi nə edir, üstəgəl 942 00:41:04,350 --> 00:41:08,900 i dəyəri. 943 00:41:08,900 --> 00:41:10,370 I Plus dəyəri. 944 00:41:10,370 --> 00:41:14,090 >> Bir kənara kimi, bu görmürsənmi olduğunuz halda əvvəl, bəzi sintaktik şəkər var 945 00:41:14,090 --> 00:41:14,870 bu xətt üçün. 946 00:41:14,870 --> 00:41:21,120 Üstəgəl i təşkil kimi, bu yeniden redaktə edəbilərsiniz yalnız özüm bir neçə tuş vuruşlarını saxlamaq 947 00:41:21,120 --> 00:41:22,570 və bir az soyuq baxmaq. 948 00:41:22,570 --> 00:41:23,140 Lakin bütün deyil. 949 00:41:23,140 --> 00:41:24,660 Bu funksional eyni şey var. 950 00:41:24,660 --> 00:41:26,710 >> Təəssüf ki, bu Məcəlləsinin hələ tərtib etmək niyyətində deyil. 951 00:41:26,710 --> 00:41:31,600 Mən necə sigma 0, etmək çalıştırıyorsanız Mən yelled almaq üçün gedir? 952 00:41:31,600 --> 00:41:33,473 Nə kimi deyil olacaq? 953 00:41:33,473 --> 00:41:35,740 >> Auditoriya: [işitilemez]. 954 00:41:35,740 --> 00:41:37,800 >> DAVID Malan: Bəli, mən bəyan etməyib üst, sağ? up funksiyası 955 00:41:37,800 --> 00:41:40,590 C, mehriban axmaq olduğunu yalnız ki, Bunu demək nə, və 956 00:41:40,590 --> 00:41:41,880 ki bunu etmək lazımdır. 957 00:41:41,880 --> 00:41:45,910 Burada Enter düyməsini basın, əgər belə, mən gedirəm sigma barədə xəbərdarlıq örtülü almaq 958 00:41:45,910 --> 00:41:46,860 Bəyannamə. 959 00:41:46,860 --> 00:41:48,120 >> Oh, heç bir problem. 960 00:41:48,120 --> 00:41:50,370 Mən üst qədər getmək bilər, və mən bütün sağ, demək, bir dəqiqə gözləyin. 961 00:41:50,370 --> 00:41:54,240 Sigma qaytarır ki, bir funksiyası var bir int və bunu gözləsin bir 962 00:41:54,240 --> 00:41:56,620 giriş, nöqtəli vergül kimi int. 963 00:41:56,620 --> 00:41:59,550 Yoxsa Mən bütün funksiyası qoymaq bilər əsas yuxarıda, amma ümumilikdə, mən had 964 00:41:59,550 --> 00:42:02,260 bu, çünki ona qarşı gəlir həmişə üst belə olan əsas üçün gözəl 965 00:42:02,260 --> 00:42:06,310 sağ dalış və bilə bilməz nə proqram ilk əsas oxuyaraq əməlindəndir. 966 00:42:06,310 --> 00:42:07,930 >> Belə ki, indi mənə ekranı silmək imkan verir. 967 00:42:07,930 --> 00:42:09,330 Yeniden yapmak sigma 0. 968 00:42:09,330 --> 00:42:10,340 Bütün kontrol görünür. 969 00:42:10,340 --> 00:42:11,970 Mənə sigma 0 run edək. 970 00:42:11,970 --> 00:42:12,770 Müsbət inter. 971 00:42:12,770 --> 00:42:15,580 Mən bunu sayı verərəm 3 sadə saxlamaq. 972 00:42:15,580 --> 00:42:18,710 Belə ki, mənə 3 verməlidir plus 2 plus 1, belə ki, 6. 973 00:42:18,710 --> 00:42:20,750 Daxil edin və həqiqətən Mən 6 almaq. 974 00:42:20,750 --> 00:42:21,820 >> Mən böyük bir şey edə bilərsiniz - 975 00:42:21,820 --> 00:42:24,080 50, 12, 75. 976 00:42:24,080 --> 00:42:27,690 Bir toxunan kimi, Mən gedirəm həqiqətən böyük kimi gülməli bir şey 977 00:42:27,690 --> 00:42:30,375 sayı, Oh, həqiqətən işləyib ki, - 978 00:42:30,375 --> 00:42:31,600 eh, mən doğru hesab etmirəm. 979 00:42:31,600 --> 00:42:32,810 In nəzər salaq. 980 00:42:32,810 --> 00:42:34,060 Nin həqiqətən bu mess edək. 981 00:42:34,060 --> 00:42:37,150 982 00:42:37,150 --> 00:42:38,400 >> Bu problem var. 983 00:42:38,400 --> 00:42:43,180 984 00:42:43,180 --> 00:42:44,970 Nə olacaq? 985 00:42:44,970 --> 00:42:46,050 Kod pis deyil. 986 00:42:46,050 --> 00:42:48,470 Bu hələ xətti var. 987 00:42:48,470 --> 00:42:50,810 Vıyıltı baxmayaraq, yaxşı təsir edir. 988 00:42:50,810 --> 00:42:52,060 Nə olacaq? 989 00:42:52,060 --> 00:42:54,700 990 00:42:54,700 --> 00:42:55,620 >> Mən bunu eşidəndə əgər əmin deyil. 991 00:42:55,620 --> 00:42:57,620 Belə çıxır - və bu bir kənara kimi. 992 00:42:57,620 --> 00:42:59,400 Bu etmək üçün əsas deyil recursion ideyası. 993 00:42:59,400 --> 00:43:02,480 Mən çalışıram, çünki çıxır , ən çox belə bir böyük sayı təmsil edir 994 00:43:02,480 --> 00:43:06,980 güman ki, təhrif edib müsbət deyil nömrəsi kimi C, 995 00:43:06,980 --> 00:43:09,980 ancaq mənfi nömrəsi. 996 00:43:09,980 --> 00:43:12,690 >> Biz bu barədə danışmışıq, lakin onu mənfi nömrələri var çıxır 997 00:43:12,690 --> 00:43:14,210 Bundan əlavə dünyada müsbət nömrələri. 998 00:43:14,210 --> 00:43:16,290 Və siz vasitələri mənfi sayı təmsil edir 999 00:43:16,290 --> 00:43:19,530 mahiyyətcə, bir istifadə olunur göstərmək üçün xüsusi bit 1000 00:43:19,530 --> 00:43:20,400 mənfi üzərində müsbət. 1001 00:43:20,400 --> 00:43:22,950 Qeyd edək ki, bir az daha kompleks var amma ki, əsas fikirdir. 1002 00:43:22,950 --> 00:43:26,740 >> Belə ki, təəssüf ki, C bir qarışıqdır əgər həqiqətən mənasını həmin bit, 1003 00:43:26,740 --> 00:43:30,790 oh, bu mənfi, mənim loop Burada, məsələn, həqiqətən, heç vaxt 1004 00:43:30,790 --> 00:43:31,740 dayandırmaq gedir. 1005 00:43:31,740 --> 00:43:33,850 Mən, həqiqətən, bir şey çap edilmişdir Belə ki, əgər təkrar, biz ki, 1006 00:43:33,850 --> 00:43:34,650 bir çox görürük. 1007 00:43:34,650 --> 00:43:36,220 Ancaq yenə də, bu baxımdan yanaşı edir. 1008 00:43:36,220 --> 00:43:38,590 Bu, həqiqətən, yalnız bir növ deyil biz lazımdır ki, intellektual maraq 1009 00:43:38,590 --> 00:43:39,550 nəhayət geri. 1010 00:43:39,550 --> 00:43:43,400 Amma hələlik bu bir doğru həyata keçirilməsi biz güman əgər ki, 1011 00:43:43,400 --> 00:43:45,970 istifadəçi ints təmin edəcək ki, ints ərzində uyğun. 1012 00:43:45,970 --> 00:43:49,370 >> Amma ki, bu kodu, səmimi iddia çox daha çox sadəcə edilə bilər. 1013 00:43:49,370 --> 00:43:54,060 Əl məqsəd bir sıra almaq Əgər kimi m və bütün əlavə 1014 00:43:54,060 --> 00:43:59,510 İT və 1, və ya əksinə arasında nömrələr 1 və o, mən iddia 1015 00:43:59,510 --> 00:44:03,380 Mən birləşməsi ki, bu fikir borc bilər ki, sort bir problem edirdi ki, var idi 1016 00:44:03,380 --> 00:44:05,660 Bu ölçüsü və onun bölünməsi kiçik bir şey. 1017 00:44:05,660 --> 00:44:09,875 Bəlkə yarım, lakin kiçik, lakin representatively eyni. 1018 00:44:09,875 --> 00:44:12,130 Eyni fikir, lakin kiçik bir problem. 1019 00:44:12,130 --> 00:44:15,470 >> Beləliklə, mən, həqiqətən, Ben - Mənə bu faylı bildirin fərqli buraxılış nömrəsi ilə. 1020 00:44:15,470 --> 00:44:17,670 Biz bu versiyası zəng edəcəyik 1 əvəzinə 0. 1021 00:44:17,670 --> 00:44:20,790 Və Mən, həqiqətən, can iddia bu cür bu reimplement 1022 00:44:20,790 --> 00:44:22,160 mind-əyilmə yol. 1023 00:44:22,160 --> 00:44:23,710 >> Mən tək bir hissəsi tərk etmək gedirəm. 1024 00:44:23,710 --> 00:44:27,710 M azdırsa demək gidiyorum çox və ya 0 hətta bərabər - 1025 00:44:27,710 --> 00:44:29,280 Mən yalnız bir az olmaq gidiyorum daha anal bu dəfə 1026 00:44:29,280 --> 00:44:30,520 - mənim səhv yoxlanılması ilə 1027 00:44:30,520 --> 00:44:33,190 Mən irəli getmək və 0 qayıtmaq üçün gedirəm. 1028 00:44:33,190 --> 00:44:34,490 Bu əsassız deyil. 1029 00:44:34,490 --> 00:44:37,500 Mən sadəcə qərar qəbul edirəm əgər istifadəçi Mənə bir mənfi verir, Ben 1030 00:44:37,500 --> 00:44:41,490 0 qaytarılması və onlar oxumaq olmalıdır sənədlərin daha yaxından. 1031 00:44:41,490 --> 00:44:42,170 >> Else - 1032 00:44:42,170 --> 00:44:44,070 Mən gedirəm nə görürsünüz. 1033 00:44:44,070 --> 00:44:49,260 Else I m plus qayıtmaq üçün gedirəm - 1034 00:44:49,260 --> 00:44:51,010 m sigma nədir? 1035 00:44:51,010 --> 00:44:56,710 Yaxşı, m plus m minus 1 Sigma, plus m mənfi 2, üstəgəl m mənfi 3. 1036 00:44:56,710 --> 00:44:58,030 Mən ki, bütün yazmaq istəmirəm. 1037 00:44:58,030 --> 00:44:59,120 Niyə ayaqla zərbə yalnız deyil? 1038 00:44:59,120 --> 00:45:05,080 Recursively bir qədər ilə özüm zəng kiçik problem, nöqtəli vergül, 1039 00:45:05,080 --> 00:45:06,840 və bir gün zəng? 1040 00:45:06,840 --> 00:45:07,040 >> Sağ? 1041 00:45:07,040 --> 00:45:10,980 İndi burada da hiss və ya narahat ola bilər Bu Ben bir sonsuz loop ki, 1042 00:45:10,980 --> 00:45:15,450 Mən həyata edirəm vasitəsi fahişəliyə cəlb edilməsi maddələri, zəng sigma tərəfindən sigma. 1043 00:45:15,450 --> 00:45:20,342 Amma ki, mükəmməl OK mən bir xətləri olan əlavə qabaqda fikir? 1044 00:45:20,342 --> 00:45:22,600 >> Auditoriya: [işitilemez]. 1045 00:45:22,600 --> 00:45:25,430 >> DAVID Malan: 23 26, hansı Mənim əgər şərtdir. 1046 00:45:25,430 --> 00:45:28,390 Haqqında gözəl nə Çünki burada toplama işlemi, mən saxlamaq çünki 1047 00:45:28,390 --> 00:45:31,180 verilməsi sigma kiçik problemləri, kiçik problemləri, kiçik - bu deyil 1048 00:45:31,180 --> 00:45:31,870 yarısı ölçüsü. 1049 00:45:31,870 --> 00:45:34,380 Bu kiçik yalnız bir körpə addım amma ki, OK. 1050 00:45:34,380 --> 00:45:38,050 Nəhayət, biz işləmək lazımdır, çünki aşağı 1 və ya 0 yolumuza. 1051 00:45:38,050 --> 00:45:41,630 Və bir dəfə biz 0 hit, sigma deyil artıq özü zəng etmək üçün gedir. 1052 00:45:41,630 --> 00:45:43,590 Bu dərhal 0 qayıtmaq olacaq. 1053 00:45:43,590 --> 00:45:47,960 >> Belə ki, təsiri, külək siz sort bu halda qədər nəzərə, m plus əlavə edir 1054 00:45:47,960 --> 00:45:52,740 m mənfi 1, üstəgəl m mənfi 2, üstəgəl m minus 3, üstəgəl nöqtə, nöqtə, nöqtə, m minus 1055 00:45:52,740 --> 00:45:57,820 m, nəticədə siz 0 verilməsi və təsiri bütün əlavə etmək üçün sonda edir 1056 00:45:57,820 --> 00:45:59,070 birlikdə bu şeylər. 1057 00:45:59,070 --> 00:46:02,380 Beləliklə, biz, recursion ilə yoxdur problemi həll ki, 1058 00:46:02,380 --> 00:46:03,470 əvvəl həll edə bilməmişik. 1059 00:46:03,470 --> 00:46:06,840 Həqiqətən, versiyası, bu 0 və hər tarixi problem, caiz olmuşdur 1060 00:46:06,840 --> 00:46:09,980 yalnız loops istifadə və ya isə loops və ya oxşar yaradır. 1061 00:46:09,980 --> 00:46:13,150 >> Amma recursion, mən daresay, bizə verir haqqında düşünür farklı bir yol 1062 00:46:13,150 --> 00:46:17,010 problemləri, biz edə bilərsiniz vasitəsi əgər problem, bir şey onu bölmək 1063 00:46:17,010 --> 00:46:22,340 qədər bir şey qədər böyük kiçik, biz bunu həll edə bilər ki, iddia 1064 00:46:22,340 --> 00:46:26,040 bəlkə bir az daha zərif baxımından dizayn daha az kodu ilə 1065 00:46:26,040 --> 00:46:30,980 və bəlkə hətta ki, problemlərin həlli biz nəhayət rəftar kimi, daha ola 1066 00:46:30,980 --> 00:46:33,280 sırf iteratively həll oldu. 1067 00:46:33,280 --> 00:46:35,980 >> Mən ki Amma cliffhanger bizə tərk etmək istəyirəm bu idi. 1068 00:46:35,980 --> 00:46:40,720 Mənə davam və açmaq edək bir fayl up - 1069 00:46:40,720 --> 00:46:44,300 Əslində, getməmə və Bu real sürətli bunu. 1070 00:46:44,300 --> 00:46:46,875 Mənə davam və təklif edək aşağıdakı. 1071 00:46:46,875 --> 00:46:51,160 1072 00:46:51,160 --> 00:46:54,785 Bu gün code arasında bu faylı burada. 1073 00:46:54,785 --> 00:47:01,090 1074 00:47:01,090 --> 00:47:03,050 Bu bir, noswap. 1075 00:47:03,050 --> 00:47:06,260 >> Belə ki, bu bir axmaq az proqramı Mən iddia etmək qədər çırpılmış 1076 00:47:06,260 --> 00:47:06,940 aşağıdakı. 1077 00:47:06,940 --> 00:47:10,140 Əsas, bu ilk bir bəyan int x adlandırıldı və verir 1078 00:47:10,140 --> 00:47:11,100 1 dəyər. 1079 00:47:11,100 --> 00:47:13,520 Sonra bir int y elan edir və bu dəyəri 2 atar. 1080 00:47:13,520 --> 00:47:15,310 Sonra x və y nə çap edir. 1081 00:47:15,310 --> 00:47:17,781 Sonra, nöqtə nöqtə nöqtə dəyişdirmə, deyir. 1082 00:47:17,781 --> 00:47:21,670 >> Sonra bir funksiyası zəng iddia x keçən və svop adlı 1083 00:47:21,670 --> 00:47:24,290 ki, inşallah ki, fikir olan y, x və y qayıdacaqlarını 1084 00:47:24,290 --> 00:47:25,620 müxtəlif, qarşı. 1085 00:47:25,620 --> 00:47:27,110 Sonra dəyişdirildikdə iddia! 1086 00:47:27,110 --> 00:47:28,420 ünlem işareti ilə. 1087 00:47:28,420 --> 00:47:30,190 Sonra x və y çap edir. 1088 00:47:30,190 --> 00:47:33,480 >> Lakin bu çıxır ki, bu çox aşağı sadə nümayiş 1089 00:47:33,480 --> 00:47:35,570 burada həqiqətən arabası deyil. 1090 00:47:35,570 --> 00:47:38,870 Mən müvəqqəti elan alıram baxmayaraq dəyişən və müvəqqəti bir qoyaraq 1091 00:47:38,870 --> 00:47:42,010 ki, sonra reassigning alıram b dəyəri - 1092 00:47:42,010 --> 00:47:45,080 Mən var, çünki ki, ağlabatan hiss temp bir surəti saxlanılır. 1093 00:47:45,080 --> 00:47:48,410 Sonra bərabər b güncelleyin temp-ci ildə nə oldu. 1094 00:47:48,410 --> 00:47:51,610 Bir hərəkət shell oyun bu sort Bu istifadə edərək daxil daxil b və b 1095 00:47:51,610 --> 00:47:54,360 orta-man temp hiss çağırıb mükəmməl məqbul. 1096 00:47:54,360 --> 00:47:57,270 >> Mən bu çalıştırdığınızda Amma iddia kodu, İndi nə olacaq kimi - 1097 00:47:57,270 --> 00:47:59,490 Mənə irəli getmək və burada yapışdırıb imkan verir. 1098 00:47:59,490 --> 00:48:01,995 Mən bu noswap.c zəng edəcəyik. 1099 00:48:01,995 --> 00:48:05,630 Adı təklif kimi, bu deyil düzgün proqram olacaq. 1100 00:48:05,630 --> 00:48:09,460 Noswap olun. / No Swap. 1101 00:48:09,460 --> 00:48:12,110 x 1, y, 2 dəyişdirmə, dəyişdirildikdə. 1102 00:48:12,110 --> 00:48:14,220 x 1, y 2-dir. 1103 00:48:14,220 --> 00:48:16,920 Bu, hətta kökündən yanlış Bu mükəmməl görünür baxmayaraq 1104 00:48:16,920 --> 00:48:17,730 mənə ağlabatan. 1105 00:48:17,730 --> 00:48:21,330 Və orada bir səbəb, lakin biz deyilik yalnız hələ səbəbi ortaya gedir. 1106 00:48:21,330 --> 00:48:24,610 >> Mən istəyirdim ikinci cliffhanger indi sizi tərk etmək, bu 1107 00:48:24,610 --> 00:48:27,120 kupon kodları növ elan. 1108 00:48:27,120 --> 00:48:31,590 Mərhum gün ilə yenilik bu il qeyri-mənasız sayı təhrik etdi 1109 00:48:31,590 --> 00:48:33,830 suallar, hansı idi bizim niyyətimiz. 1110 00:48:33,830 --> 00:48:36,590 Bu kupon kodları niyyəti, qovuşdurmağımız siz problemin bir hissəsidir əgər 1111 00:48:36,590 --> 00:48:39,850 Beləliklə, əlavə gün alınması, erkən müəyyən uşaqlar kömək etmək üçün həqiqətən 1112 00:48:39,850 --> 00:48:42,420 özünüzü erkən, sort başlamaq Siz incentivizing tərəfindən. 1113 00:48:42,420 --> 00:48:44,880 Bizə arasında yük yaymaq kömək edir ofis saat daha yaxşı ki, 1114 00:48:44,880 --> 00:48:45,740 bu qazan-qazan növ var. 1115 00:48:45,740 --> 00:48:48,860 >> Təəssüf ki, mən göstəriş edirəm Belə ki, tarix üçün çox aydın, olmamışdır 1116 00:48:48,860 --> 00:48:52,230 Mən bu həftə sonu geri getdi və yenilənir etmək üçün daha böyük, bolder mətn spec 1117 00:48:52,230 --> 00:48:53,600 Bu kimi güllə izah edir. 1118 00:48:53,600 --> 00:48:56,900 Və yalnız, daha açıq demək Default, problem dəstləri Cümə axşamı bağlıdır 1119 00:48:56,900 --> 00:48:58,400 günorta saatlarında proqramları təşkil edir. 1120 00:48:58,400 --> 00:49:02,030 Siz hissəsi başa erkən başlamaq edin 12:00 Çərşənbə tərəfindən müəyyən edilmiş problem 1121 00:49:02,030 --> 00:49:05,170 PM, bir kupon aid olan hissəsi kodu, fikri siz uzada bilər ki, 1122 00:49:05,170 --> 00:49:07,710 üçün sizin son tarix P Cümə gününə qədər seçin. 1123 00:49:07,710 --> 00:49:10,890 Bu bit P kiçik bir hissəsi off edir adətən nə nisbətən müəyyən 1124 00:49:10,890 --> 00:49:13,200 böyük problem və siz almaq özünüz əlavə gün. 1125 00:49:13,200 --> 00:49:15,190 Yenə də, bu barədə düşünürük siz alır problem set, siz olur 1126 00:49:15,190 --> 00:49:16,380 ofis saat tez. 1127 00:49:16,380 --> 00:49:20,670 Lakin kupon kodu problem hələ də siz onu təqdim etməyən belə, tələb olunur. 1128 00:49:20,670 --> 00:49:23,340 >> Amma daha compellingly bu. 1129 00:49:23,340 --> 00:49:26,520 (Mərhələ Whisper) və bu insanlar tərk erkən peşman mý var. 1130 00:49:26,520 --> 00:49:28,620 Kimi balkon insanlar var. 1131 00:49:28,620 --> 00:49:32,510 Üzrə insanlar əvvəlcədən üzr istəyirik olacaq səbəblərdən balkon 1132 00:49:32,510 --> 00:49:33,920 yalnız bir anda sil. 1133 00:49:33,920 --> 00:49:37,050 >> Beləliklə, biz bir üçün uğurlu Da CS50 keçmiş baş müəllim yoldaşları 1134 00:49:37,050 --> 00:49:39,302 dropbox.com adlı bir şirkət. 1135 00:49:39,302 --> 00:49:45,500 Onlar çox səxavətlə bir hədiyyəsində tapıldı Bu çox yer üçün bura kupon kodu, 1136 00:49:45,500 --> 00:49:48,180 dən olan qədər adi 2 gigabaytlık. 1137 00:49:48,180 --> 00:49:51,740 Ona görə də mən fikir nə biz bu barədə nə olardı final qeyd, bir yarışma bir az nə edir 1138 00:49:51,740 --> 00:49:55,380 yalnız bir anda, biz ortaya çıxaracaq vasitəsi qalib edən kupon var 1139 00:49:55,380 --> 00:49:57,980 Əgər onların to kodu veb-bu yazın və voiture, almaq 1140 00:49:57,980 --> 00:50:01,370 Sizin üçün bütövlükdə çox Dropbox yer cihaz və şəxsi faylları. 1141 00:50:01,370 --> 00:50:05,690 >> Və ilk kim iştirak etmək istəyirəm Bu rəsm? 1142 00:50:05,690 --> 00:50:09,630 OK, indi ki, daha çox əyləncə edir. 1143 00:50:09,630 --> 00:50:14,010 Bu 25 gigabyte qəbul edən şəxs kupon kodu - uzaq olan 1144 00:50:14,010 --> 00:50:16,150 Mərhum daha çekici İndi, bəlkə də, gün - 1145 00:50:16,150 --> 00:50:20,620 bir üst oturacağı olan biridir var olan altında oturacaq yastığı 1146 00:50:20,620 --> 00:50:21,620 ki, kupon kodu. 1147 00:50:21,620 --> 00:50:23,480 İndi altında ola bilər Sizin oturacaq yastığı. 1148 00:50:23,480 --> 00:50:28,710 1149 00:50:28,710 --> 00:50:29,680 >> [Video playback] 1150 00:50:29,680 --> 00:50:31,620 >> -Bir, iki, üç. 1151 00:50:31,620 --> 00:50:35,015 >> [Qışqırmağa] 1152 00:50:35,015 --> 00:50:35,985 >> -Siz avtomobil almaq! 1153 00:50:35,985 --> 00:50:36,670 Siz avtomobil almaq! 1154 00:50:36,670 --> 00:50:37,970 >> DAVID Malan: Biz görəcəksiniz Çərşənbə günü siz. 1155 00:50:37,970 --> 00:50:38,904 >> -Siz avtomobil almaq! 1156 00:50:38,904 --> 00:50:39,371 Siz avtomobil almaq! 1157 00:50:39,371 --> 00:50:40,305 Siz avtomobil almaq! 1158 00:50:40,305 --> 00:50:41,706 Siz avtomobil almaq! 1159 00:50:41,706 --> 00:50:43,107 Siz avtomobil almaq! 1160 00:50:43,107 --> 00:50:45,530 >> DAVID Malan: Balkon insanlar gəlib aşağı burada ön, 1161 00:50:45,530 --> 00:50:46,866 figüran olduq yerləşir. 1162 00:50:46,866 --> 00:50:50,282 >> -Hər bir avtomobil olur! 1163 00:50:50,282 --> 00:50:52,234 Hər bir avtomobil olur! 1164 00:50:52,234 --> 00:50:52,722 >> [END video playback] 1165 00:50:52,722 --> 00:50:54,590 >> Dastançı: növbəti CS50 hazırda - 1166 00:50:54,590 --> 00:51:00,374 >> HOPARLÖR 5: Gosh Gosh Gosh Gosh Aman Gosh Gosh Gosh Gosh Gosh Gosh - 1167 00:51:00,374 --> 00:51:02,106 >> [UKELELE Plays]