1 00:00:00,000 --> 00:00:00,479 2 00:00:00,479 --> 00:00:10,830 >> [Muusika mängib] 3 00:00:10,830 --> 00:00:12,080 [MUSIC - Rossini "RANZ DES VACHES "William SOOVITA] 4 00:00:12,080 --> 00:00:24,222 5 00:00:24,222 --> 00:00:25,472 >> [MUSIC - INGLISE BEAT "MÄRTS OF pöörlev HEADS "] 6 00:00:25,472 --> 00:02:24,538 7 00:02:24,538 --> 00:02:31,510 >> [APLAUS JA cheering] 8 00:02:31,510 --> 00:02:33,520 >> DAVID Malan: Nii et see on CS50. 9 00:02:33,520 --> 00:02:34,730 Minu nimi on David Malan. 10 00:02:34,730 --> 00:02:39,250 Ja 73%, mida ei ole varasemat kogemust koos arvutiteadus, 11 00:02:39,250 --> 00:02:41,300 vastupidiselt võite arvata. 12 00:02:41,300 --> 00:02:45,290 Nii et täna me arvasime me Seeläbi sel teadmatus, aga ka 13 00:02:45,290 --> 00:02:48,970 annab sulle tunde, neile, rohkem mugavust, mis suunas 14 00:02:48,970 --> 00:02:50,550 võid minna see semester. 15 00:02:50,550 --> 00:02:51,890 >> Alustame sellega. 16 00:02:51,890 --> 00:02:55,490 Ma tõesti ei tea, mis seal sees on arvuti, kuigi, nagu te ma 17 00:02:55,490 --> 00:02:56,780 kasuta seda iga päev. 18 00:02:56,780 --> 00:03:00,000 Aga see on mingi kast ja seal mitte palju sisendite ta. 19 00:03:00,000 --> 00:03:01,350 Minimaalselt, seal on, mida? 20 00:03:01,350 --> 00:03:03,120 Tõenäoliselt toitejuhe. 21 00:03:03,120 --> 00:03:06,640 >> Ja tõepoolest see üks koostisosa, elekter, me ilmselt suutma 22 00:03:06,640 --> 00:03:09,490 teeb üsna vähe neid päevi. 23 00:03:09,490 --> 00:03:12,130 Aga lõpus päeval, me on esindada asjad 24 00:03:12,130 --> 00:03:12,860 et me hoolime. 25 00:03:12,860 --> 00:03:15,240 Me peame esindama info mingis vormis. 26 00:03:15,240 --> 00:03:18,365 Ja sa oled ilmselt vähemalt ähmaselt tuttav idee poolt binaarne või 27 00:03:18,365 --> 00:03:21,370 bits ühel või teisel moel, arvutid vähendatakse nulli ja ones. 28 00:03:21,370 --> 00:03:26,320 Aga me saame omaks seda ja vähemalt pane natuke valgust, mis? 29 00:03:26,320 --> 00:03:28,880 >> Nii et mul on neid vähe laualambid siin. 30 00:03:28,880 --> 00:03:30,450 Mul on vooluvõrku siin. 31 00:03:30,450 --> 00:03:33,930 Ja ma lähen ettepaneku sees mu arvuti on vähemalt üks 32 00:03:33,930 --> 00:03:37,300 need asjad, mida saab , mida on sisse või välja lülitatud. 33 00:03:37,300 --> 00:03:40,200 Sellisel juhul on see tõepoolest laualamp, kuid madalamal tasemel, see on midagi 34 00:03:40,200 --> 00:03:41,500 nimetatakse transistor. 35 00:03:41,500 --> 00:03:44,730 >> Aga meie maailm, see on laualamp, nii Ma lähen edasi minna ja ühendada see 36 00:03:44,730 --> 00:03:47,990 minu elektri siin. 37 00:03:47,990 --> 00:03:52,970 Ja ma väita, et kasutades seda lihtsat, lihtne seade, see lihtne lüliti, I 38 00:03:52,970 --> 00:03:54,850 võib kujutada teavet. 39 00:03:54,850 --> 00:03:58,090 Näiteks praegu, olen esindavad midagi, eks? 40 00:03:58,090 --> 00:04:01,820 Ma kujutan ma helistan 0 või vale, vastand midagi 41 00:04:01,820 --> 00:04:03,130 viibiks. 42 00:04:03,130 --> 00:04:07,050 Aga kui ma keerake seda lülitit, nüüd ma olen esindatud 1. 43 00:04:07,050 --> 00:04:10,720 Seega kasutades seda väga lihtne tükk mälu, kui soovite, võin esindada 44 00:04:10,720 --> 00:04:11,450 teavet. 45 00:04:11,450 --> 00:04:14,350 >> Nüüd kahjuks minu arvuti ei saa seda teha kõik, et palju. 46 00:04:14,350 --> 00:04:17,430 See võib esindada vaid kaks väärtust kogu maailmas - 47 00:04:17,430 --> 00:04:18,620 0 või 1. 48 00:04:18,620 --> 00:04:21,839 Aga mis on ilmne lahendus, nüüd, kui me tahame laiendada oma arvuti 49 00:04:21,839 --> 00:04:25,120 mälu ja esindama rohkem kui ainult 0 ja 1? 50 00:04:25,120 --> 00:04:27,060 >> Noh, ostke teine ​​selline natuke. 51 00:04:27,060 --> 00:04:30,260 Olgem haarata teise lüliti, teine transistor, aga sa tahaks 52 00:04:30,260 --> 00:04:31,130 mõtle selle peale. 53 00:04:31,130 --> 00:04:34,170 Lubage mul minna ja ühendage see minu arvuti samuti. 54 00:04:34,170 --> 00:04:38,270 Ja ma lähen väidab nüüd, et kasutades natuke rohkem elektrit ja 55 00:04:38,270 --> 00:04:42,290 keerates mitu neist lülitid ja off, ma ei esinda enam sellist 56 00:04:42,290 --> 00:04:43,020 teavet. 57 00:04:43,020 --> 00:04:44,660 >> Nii kohe, et see on 1. 58 00:04:44,660 --> 00:04:48,120 Kui ma tahan nüüd moodustavad 2, ma ei tee seda. 59 00:04:48,120 --> 00:04:51,510 Aga tavaliselt, printsiibist, paneme lõpuks näha, on mul seda teha. 60 00:04:51,510 --> 00:04:55,260 Nii et see on 0, see on 1. 61 00:04:55,260 --> 00:04:56,720 See oleks 2. 62 00:04:56,720 --> 00:04:59,920 Ja see ei ole üllatav, et see oleks 3. 63 00:04:59,920 --> 00:05:02,610 >> Nii et sel viisil, ikka, saab loeme üles veelgi? 64 00:05:02,610 --> 00:05:06,500 Kui ma saan kolmanda bit, kolmas lüliti, Milline on suurim arv suudan nüüd 65 00:05:06,500 --> 00:05:09,720 loendama kuni 0? 66 00:05:09,720 --> 00:05:12,020 Nii 7 kui ma hakkan 0, eks? 67 00:05:12,020 --> 00:05:15,980 Sest kui ma omakorda seda valgust ja tegelikult plug see kolmas ja viimane 68 00:05:15,980 --> 00:05:20,090 valguseks mu pistikupesa siin siis mul on võime esindada 69 00:05:20,090 --> 00:05:24,930 iga kahe väärtused siin, kaks väärtust siin, kaks väärtust siin - 70 00:05:24,930 --> 00:05:32,610 ja nii ma saan esitada 2 korda 2 korda 2 või kaheksa võimalikud väärtused. 71 00:05:32,610 --> 00:05:36,340 Ja kui ma hakkan raamatupidamist 0, seega see on 0, 1, 2, 3, 4, 5, 6, 7. 72 00:05:36,340 --> 00:05:37,480 >> Nii et see binaarne. 73 00:05:37,480 --> 00:05:39,420 See on tõesti nii lihtne. 74 00:05:39,420 --> 00:05:41,930 Ja ma tahaks väita, et see on tegelikult üsna tuttav paljudele 75 00:05:41,930 --> 00:05:43,180 kõik selles ruumis. 76 00:05:43,180 --> 00:05:45,710 Lubage mul minna ja avada väike tekstiredaktor siin. 77 00:05:45,710 --> 00:05:49,040 >> Ja võite mäletate algkool et meil oli asju sadu 78 00:05:49,040 --> 00:05:51,970 koht, kümneid koht, ja need, koht. 79 00:05:51,970 --> 00:05:55,040 Ja meenutada, et kui sul oli mingi kohaga number, nagu midagi juhuslikku 80 00:05:55,040 --> 00:05:59,470 nagu 123, siis oleks sisuliselt kirjutada, et välja kujul 81 00:05:59,470 --> 00:06:00,450 Nende kolme veergu. 82 00:06:00,450 --> 00:06:04,070 Ja miks on 1, 2, 3, mida me teame, kui 123? 83 00:06:04,070 --> 00:06:11,220 Noh, kõige vasakpoolsema veeru meil üks 100 pluss kaks 10s, nii et see on 120, 84 00:06:11,220 --> 00:06:14,250 pluss kolm 1s, et on 123. 85 00:06:14,250 --> 00:06:17,990 >> Nüüd on see maailm, mida me lihtsalt põlema on täpselt sama 86 00:06:17,990 --> 00:06:21,150 olete olnud tuttavad juba aastaid, välja arvatud nüüd, meie kolonnid 87 00:06:21,150 --> 00:06:22,060 ei ole volitusi 10. 88 00:06:22,060 --> 00:06:23,780 Nad on lihtsalt volitusi 2. 89 00:06:23,780 --> 00:06:27,830 Nii et see on need olemas, see saab olema kahekesi koht, see on 90 00:06:27,830 --> 00:06:29,540 saab olema püksid koht. 91 00:06:29,540 --> 00:06:33,260 >> Ja kuna ma kasutan ainult lihtsamaid mehhanismide omakorda asju 92 00:06:33,260 --> 00:06:37,100 sisse ja välja lülitada - elekter voolab või elekter ei voola - 93 00:06:37,100 --> 00:06:40,880 Ma ei ole päris sama väljendusrikas vahemikku 0 kuni üheksa. 94 00:06:40,880 --> 00:06:43,270 Me läheme, et hoida seda super lihtne selles maailmas arvuteid. 95 00:06:43,270 --> 00:06:45,060 Mul on ainult 0 või 1 - 96 00:06:45,060 --> 00:06:47,890 sisse või välja, on õige või väär. 97 00:06:47,890 --> 00:06:52,610 >> Ja mis ma kujutan kohe on 1, 1, 1, sest iga 98 00:06:52,610 --> 00:06:54,000 tuled ei põle. 99 00:06:54,000 --> 00:06:59,600 Noh, see annab mulle üks 4 ja üks 2, nii see on 6 pluss üks 1, ja see on 7. 100 00:06:59,600 --> 00:07:03,450 Ja ergo teeb seda kolmest järjestikusest bitti esindama number 7. 101 00:07:03,450 --> 00:07:06,330 >> Nii et kõik see aeg, sees oma arvuti, on toimunud mitmeid 102 00:07:06,330 --> 00:07:08,090 transistorid, iga bittide arv. 103 00:07:08,090 --> 00:07:10,380 Aga lõpus päeval, me võib esindada info 104 00:07:10,380 --> 00:07:12,560 nii lihtsalt kui seda. 105 00:07:12,560 --> 00:07:16,770 Nüüd kahjuks oleme Arvestatakse kuni 7 CS50 siiani, kuid 106 00:07:16,770 --> 00:07:18,550 loodetavasti saame teha natuke paremini. 107 00:07:18,550 --> 00:07:19,550 Ja tõepoolest suudame. 108 00:07:19,550 --> 00:07:23,570 >> Oletame, et me inimestel lihtsalt otsustasin, et me 109 00:07:23,570 --> 00:07:28,750 seostama numbrid nagu 1 ja 2, 3, 4, 5, 6, 7, konkreetsed tähed 110 00:07:28,750 --> 00:07:29,410 tähestikku. 111 00:07:29,410 --> 00:07:32,350 Ja ajaloolistel põhjustel ma lähen alustada mõnevõrra meelevaldselt, aga ma olen 112 00:07:32,350 --> 00:07:36,880 kavatse öelda inimestele, me otsustada, kui standard, ülemaailmselt, et 113 00:07:36,880 --> 00:07:43,200 65 tähistab number täht A. 66 esindab B. Dot, dot, dot. 114 00:07:43,200 --> 00:07:45,140 90 esindab täht Z. 115 00:07:45,140 --> 00:07:48,000 >> Ja oletame, et kui me tõesti teinud mõningaid mõelnud, siis me võiks tulla 116 00:07:48,000 --> 00:07:50,860 numbritega jaoks hüüumärgi ja väiketähti, ja tõepoolest, 117 00:07:50,860 --> 00:07:52,710 teised inimesed on teinud, et meie jaoks. 118 00:07:52,710 --> 00:07:56,410 Nüüd oli meil bitti, mille abil saame esindavad numbrid, arv, mille 119 00:07:56,410 --> 00:08:00,130 saame esindada tähtede ja kirju saab nüüd hakkate 120 00:08:00,130 --> 00:08:02,650 e-kirju ja sümbolite ekraanil. 121 00:08:02,650 --> 00:08:05,850 >> Nii et lubage mul paluda, kui suutsin, Kaheksa vaprat vabatahtlikud - 122 00:08:05,850 --> 00:08:09,200 kes ei pahanda ilmumise mitte ainult kaamera vaid internetis - 123 00:08:09,200 --> 00:08:13,130 tulla siia ja esindavad kaheksa selline bitti, mitte need kolm. 124 00:08:13,130 --> 00:08:14,380 Niisiis, kuidas üks, kaks? 125 00:08:14,380 --> 00:08:16,290 Kuidas umbes kolm? 126 00:08:16,290 --> 00:08:20,230 Kuidas neli valguses sinine, viis otsas? 127 00:08:20,230 --> 00:08:21,250 Keegi siin? 128 00:08:21,250 --> 00:08:25,320 Kuus ees, seitse ees, ja kaheksa ees, samuti. 129 00:08:25,320 --> 00:08:29,050 >> Nii et ma lihtsalt juhtus nii, et tulevad valmis koos terve hunnik paberilipakad. 130 00:08:29,050 --> 00:08:34,150 Ja need paberitükid on numbrid mis esindavad mida veerud 131 00:08:34,150 --> 00:08:35,809 kutid hakkavad esindama. 132 00:08:35,809 --> 00:08:36,740 Nii et teil on - Mis su nimi on? 133 00:08:36,740 --> 00:08:37,570 >> Üliõpilane: Anna Lea. 134 00:08:37,570 --> 00:08:40,370 >> DAVID Malan: Anna Lea sa saab 128s veerus. 135 00:08:40,370 --> 00:08:41,059 Sa oled? 136 00:08:41,059 --> 00:08:41,510 >> Üliõpilane: Chris. 137 00:08:41,510 --> 00:08:43,620 >> DAVID Malan: Chris tahe olla 64s veerus. 138 00:08:43,620 --> 00:08:44,070 Sa oled? 139 00:08:44,070 --> 00:08:44,540 >> Üliõpilane: Dan. 140 00:08:44,540 --> 00:08:46,970 >> DAVID Malan: Dan olla 32s veerus. 141 00:08:46,970 --> 00:08:47,470 >> Üliõpilane: Pramit. 142 00:08:47,470 --> 00:08:49,430 >> DAVID Malan: Pramit tahe olla 16s veerus. 143 00:08:49,430 --> 00:08:50,290 >> Üliõpilane: Lillian. 144 00:08:50,290 --> 00:08:51,904 >> DAVID Malan: Lillian on 8s. 145 00:08:51,904 --> 00:08:52,768 >> Üliõpilane: Jill. 146 00:08:52,768 --> 00:08:55,025 >> DAVID Malan: Jill tahe olema 4s veerus. 147 00:08:55,025 --> 00:08:55,400 >> Üliõpilane: Mary. 148 00:08:55,400 --> 00:08:57,000 >> DAVID Malan: Mary on 2s ja? 149 00:08:57,000 --> 00:08:57,470 >> Üliõpilane: David. 150 00:08:57,470 --> 00:08:59,220 >> DAVID Malan: David olema 1s veerus. 151 00:08:59,220 --> 00:09:02,030 Nii et kui te poisid võiks tõhustada vähe ettepoole, nii et igaüks võib näha. 152 00:09:02,030 --> 00:09:05,370 Mis te ei näe, et on tagasi need paberilipakad on 153 00:09:05,370 --> 00:09:09,760 vähe petma lehte, mis on umbes juhendada neid kaheksa bitti kas 154 00:09:09,760 --> 00:09:12,380 tõsta oma käsi või mitte tõsta oma käsi. 155 00:09:12,380 --> 00:09:14,100 Kui oma käsi läheb üles, et nad moodustab 1. 156 00:09:14,100 --> 00:09:17,120 Kui nende käsi jääb maha, nad on esindavad 0. 157 00:09:17,120 --> 00:09:21,410 >> Vahepeal me publikule peaks olema võimalik aru saada, põhinevad 158 00:09:21,410 --> 00:09:26,490 kaardistamine, mida kolmetäheline sõna need inimesed on umbes täpsustada. 159 00:09:26,490 --> 00:09:29,700 Nii et üks hetk, sa lähed loe esimene rida välja tagasi 160 00:09:29,700 --> 00:09:32,880 sinu petma lehte, ja sa oled kas tõstan või ei tõsta oma käsi. 161 00:09:32,880 --> 00:09:35,710 Kui sa oled 1, siis tõsta, kui sa oled 0, seisad seal 162 00:09:35,710 --> 00:09:38,594 kohmakalt, just niimoodi. 163 00:09:38,594 --> 00:09:40,386 Mine. 164 00:09:40,386 --> 00:09:43,945 Mis number, ennekõike on need poisid esindavad? 165 00:09:43,945 --> 00:09:47,140 166 00:09:47,140 --> 00:09:48,860 >> 66. 167 00:09:48,860 --> 00:09:49,560 66, eks? 168 00:09:49,560 --> 00:09:52,400 Meil on 1 64s veeru 1 2s veerus. 169 00:09:52,400 --> 00:09:56,340 See annab mulle 66, nii et tundub, tuleb esindavad B. Seega 170 00:09:56,340 --> 00:09:57,075 kutid on kirjutatud - 171 00:09:57,075 --> 00:09:58,300 OK, sellest piisab. 172 00:09:58,300 --> 00:09:59,430 B. 173 00:09:59,430 --> 00:10:01,610 >> Nüüd liigume peale meie teine ​​kiri. 174 00:10:01,610 --> 00:10:03,530 Mine. 175 00:10:03,530 --> 00:10:06,860 Kes on kiireim matemaatikat siin? 176 00:10:06,860 --> 00:10:07,750 Nii 79. 177 00:10:07,750 --> 00:10:11,840 Jällegi, kui liidame kokku kõik veerud kus seal on 1, praegu, just 178 00:10:11,840 --> 00:10:14,840 nagu me tegime enne lihtsaim näited 7, nüüd 179 00:10:14,840 --> 00:10:16,140 saada number 79. 180 00:10:16,140 --> 00:10:19,910 Mis meie kaardistamine on kiri O. Nii et me oleme peaaegu kohal. 181 00:10:19,910 --> 00:10:22,590 B, O. Ja viimaks minema. 182 00:10:22,590 --> 00:10:26,420 183 00:10:26,420 --> 00:10:30,120 >> Mida nad esindavad nüüd? 184 00:10:30,120 --> 00:10:31,370 Vähem üksmeel. 185 00:10:31,370 --> 00:10:34,660 186 00:10:34,660 --> 00:10:36,460 See on lihtsalt absoluutne kahin. 187 00:10:36,460 --> 00:10:40,090 Jah, see on tegelikult 87. 188 00:10:40,090 --> 00:10:40,490 Hea. 189 00:10:40,490 --> 00:10:44,480 >> Nii et kui me nüüd map et tagasi kuni - olgem alustada kutsudes meie ASCII tabel, 190 00:10:44,480 --> 00:10:46,450 American Standard Code Infovahetuse. 191 00:10:46,450 --> 00:10:47,700 See annab meile kiri - 192 00:10:47,700 --> 00:10:51,260 193 00:10:51,260 --> 00:10:54,810 mitte "bo", vaid "vibu". Ja see on ideaalne kii kutid võtta vibu 194 00:10:54,810 --> 00:10:56,100 ja pea tagasi. 195 00:10:56,100 --> 00:10:56,980 Suur aitäh. 196 00:10:56,980 --> 00:10:57,886 >> [APLAUS] 197 00:10:57,886 --> 00:10:59,136 >> DAVID Malan: Saate hoida neid. 198 00:10:59,136 --> 00:11:01,850 199 00:11:01,850 --> 00:11:05,942 Kuigi tegelikult peaks keegi nagu laualamp, ka? 200 00:11:05,942 --> 00:11:07,300 >> [Huilgama vaatajaskonna] 201 00:11:07,300 --> 00:11:08,390 >> DAVID Malan: laualamp? 202 00:11:08,390 --> 00:11:10,850 >> [Naer] 203 00:11:10,850 --> 00:11:11,860 >> DAVID Malan: Kas tõesti? 204 00:11:11,860 --> 00:11:13,230 Laualambid kõigi jaoks? 205 00:11:13,230 --> 00:11:14,310 Hea küll. 206 00:11:14,310 --> 00:11:20,990 Nii alustades väga lihtsamaid põhimõtted, oleme praegu mitte ainult arvestata 207 00:11:20,990 --> 00:11:24,750 kuni 0 kogu tee kuni 7 oleme Eeldatakse, et lihtsalt visates rohkem 208 00:11:24,750 --> 00:11:28,080 bitti või rohkem, tuled või enam transistori selles probleem, saame 209 00:11:28,080 --> 00:11:32,680 esindama suuremaks numbreid ja ergo, suuremaks valikuid 210 00:11:32,680 --> 00:11:33,780 tähestikku, nagu inglise keeles. 211 00:11:33,780 --> 00:11:37,770 Ja lihtsalt võtame usul täna et samamoodi võiks hakkame 212 00:11:37,770 --> 00:11:42,220 esindavad graafika ja video ning mitmeid muid meedia, kellega me oleme 213 00:11:42,220 --> 00:11:43,610 tuttav täna. 214 00:11:43,610 --> 00:11:49,240 >> Nii et see on CS50 ja selles klassis kõrval teist on jällegi väga palju 215 00:11:49,240 --> 00:11:53,050 klassikaaslastega, kes on nii vähe kogemus kui sina. 216 00:11:53,050 --> 00:11:57,730 Ja ma mainin seda vaid seetõttu üsna sageli, sealhulgas hiljuti, üks 217 00:11:57,730 --> 00:12:01,860 uustulnuk nõustamine sündmuste ja Keväällinen üliõpilane nõustamine 218 00:12:01,860 --> 00:12:06,420 sündmus, mida me sageli kuuleme õpilased loobuma tulles kuni CS tabel, noh, 219 00:12:06,420 --> 00:12:10,070 Ma olen mõelnud võtmist intro klass, aga ma ei ole tõesti 220 00:12:10,070 --> 00:12:11,120 arvuti inimene. 221 00:12:11,120 --> 00:12:13,220 Või, kuid igaüks kindlasti teab rohkem kui mina. 222 00:12:13,220 --> 00:12:17,340 Ja panin selle suurim font võimalik, et selle sõnumi, et 223 00:12:17,340 --> 00:12:18,730 see ei ole tegelikult nii. 224 00:12:18,730 --> 00:12:21,100 >> Ja kui sa ei tea, peaks Ma tegelikult siin olla? 225 00:12:21,100 --> 00:12:25,950 Mõistma, et mitte ainult see kursuse pealkiri Sissejuhatus Arvuti 226 00:12:25,950 --> 00:12:31,740 Teadus on Sissejuhatus Arvuti Teadus I. Seega on tõepoolest 227 00:12:31,740 --> 00:12:33,170 Teine selline sissetoomine. 228 00:12:33,170 --> 00:12:35,390 Nii et sa pole tegelikult vales kohas. 229 00:12:35,390 --> 00:12:39,000 Ja vahel eesmärgid on mul täna leevendada selliseid probleeme te 230 00:12:39,000 --> 00:12:42,430 Võib-olla, kuid ka maalida pildi sellest, mis on poe 231 00:12:42,430 --> 00:12:45,720 õpilased vähem ja mugavamaks sarnased seda muidugi. 232 00:12:45,720 --> 00:12:49,320 >> Aga kõigepealt paar sõna ühe jaotusmaterjalide sul on täna, mille hulgas 233 00:12:49,320 --> 00:12:50,780 On mitmeid KKK. 234 00:12:50,780 --> 00:12:54,290 See on olnud nägemus meie juba mõnda aega nüüd kasutusele uue hindamissüsteemi 235 00:12:54,290 --> 00:12:57,010 valikuvõimalus seda muidugi - nimelt, SAT / UNSAT. 236 00:12:57,010 --> 00:13:01,930 Filosoofiliselt minu jaoks, see on palju palju, palju olulisem, et 237 00:13:01,930 --> 00:13:05,050 klassi õpilaste arvust suhelda materjal, saab vaidlustada 238 00:13:05,050 --> 00:13:09,800 materjal, ja muret palju, palju vähem umbes mehaanika tegelik skoori 239 00:13:09,800 --> 00:13:12,590 ja kirja klassid kell semestri end, kuid tõeliselt omaks 240 00:13:12,590 --> 00:13:13,970 kursuse ja selle materjal. 241 00:13:13,970 --> 00:13:18,140 Ja tegelikult see tundub üldisemalt mida on huvitav neile, et 242 00:13:18,140 --> 00:13:21,390 tunnen vaidlustada ja premeerida, kuid kartmata läbikukkumist. 243 00:13:21,390 --> 00:13:25,030 >> Ja tõepoolest, see liiga on korduv teema selles jm sissejuhatav 244 00:13:25,030 --> 00:13:28,680 kursusi teistes valdkondades, et teil on see hirmunud, kui tegemist on 245 00:13:28,680 --> 00:13:31,040 paneb oma varbad harjumatu vetes. 246 00:13:31,040 --> 00:13:34,880 Ma ise, aastal 1995, oli uustulnuk. 247 00:13:34,880 --> 00:13:37,990 Ma olin väga keskendunud olemine Gov koondaja siin. 248 00:13:37,990 --> 00:13:41,060 Ja veel ma alati üles kasvanud natuke ning huvi infotehnoloogia. 249 00:13:41,060 --> 00:13:42,180 Ma olin alati uudishimulik. 250 00:13:42,180 --> 00:13:47,610 >> Aga tollal, isegi, mul oli see hirm isegi astu CS50, nii palju 251 00:13:47,610 --> 00:13:49,420 nii et ma isegi ei osta see uustulnuk aastal. 252 00:13:49,420 --> 00:13:53,460 Ja ainus põhjus, miks ma panna jalga uks üliõpilane aastas oli, sest ma 253 00:13:53,460 --> 00:13:55,340 lubati võtta see katse läbimise / mitteläbimise. 254 00:13:55,340 --> 00:13:58,920 Kuid isegi positiivse / negatiivse vaja, et ma saan üles julgust panna 255 00:13:58,920 --> 00:14:01,970 professor Kernehan ajal, toob see suur paberileht ja paluge 256 00:14:01,970 --> 00:14:04,470 teda tema allkiri ja tema luba, et uurida 257 00:14:04,470 --> 00:14:05,700 neid harjumatu vetes. 258 00:14:05,700 --> 00:14:09,030 >> Ja see ei ole aidanud viimastel aastatel et kui teed seda CS50, kui me 259 00:14:09,030 --> 00:14:12,500 varem läbimise / mitteläbimise sarnaselt oleks kümneid või sadu oma klassikaaslastega 260 00:14:12,500 --> 00:14:15,970 välja tulla, Jumal hoidku, kell ees Sanders seda vormi, et 261 00:14:15,970 --> 00:14:19,520 mõnel mõtetes kujutab suutmatus Julgen öelda, et täita 262 00:14:19,520 --> 00:14:20,800 on oma eakaaslastega tasandil. 263 00:14:20,800 --> 00:14:23,410 Mis on naeruväärne, aga ma arvan, seal on see mentaliteet. 264 00:14:23,410 --> 00:14:27,210 Ja seal pole kunagi olnud selles kultuuris ja SAT / UNSAT või positiivse / negatiivse rohkem 265 00:14:27,210 --> 00:14:30,610 üldiselt, seda muidugi, või tõesti on see campus. 266 00:14:30,610 --> 00:14:32,310 >> Nii et sel aastal me muutnud. 267 00:14:32,310 --> 00:14:35,630 Oleksin ekstaatiline poole Selle klassi või rohkem lõppenud 268 00:14:35,630 --> 00:14:38,700 asumist CS50 SAT / UNSAT. 269 00:14:38,700 --> 00:14:42,130 Ühe aasta jooksul, see oleks suurepärane kui peaaegu kõik on. 270 00:14:42,130 --> 00:14:44,410 Seejärel võib-olla me töö letter klassid Harvardi 271 00:14:44,410 --> 00:14:45,480 College üldisemalt. 272 00:14:45,480 --> 00:14:48,900 Aga nüüd, et me teeks seda meie oma valdkonnas, ja ma südamest 273 00:14:48,900 --> 00:14:53,400 soovitame teil vaadata need KKK ja küsida küsimusi nagu näed, nii et 274 00:14:53,400 --> 00:14:58,000 loodetavasti teile, erinevalt mind, mitte päris on sama hirm tegur 275 00:14:58,000 --> 00:15:01,040 uurida, mida on ilmselt võõras kohas. 276 00:15:01,040 --> 00:15:02,786 >> Mis on CS50? 277 00:15:02,786 --> 00:15:06,150 See on sissejuhatus intellektuaalse ettevõtete arvuti 278 00:15:06,150 --> 00:15:07,700 teaduse ja kunsti programmeerimine. 279 00:15:07,700 --> 00:15:08,770 Aga mida see tegelikult tähendab? 280 00:15:08,770 --> 00:15:12,510 >> Noh, seni oleme rääkinud väga lühidalt umbes esindavad andmed. 281 00:15:12,510 --> 00:15:15,070 Aga oletame, et me tegelikult tahame midagi teha sellega. 282 00:15:15,070 --> 00:15:17,890 Me peame kasutusele mõiste mida me kutsume algoritm. 283 00:15:17,890 --> 00:15:21,540 Algoritm on protseduur, protsess, juhistega 284 00:15:21,540 --> 00:15:22,780 midagi. 285 00:15:22,780 --> 00:15:25,620 >> Ja algoritm saab midagi super lihtne. 286 00:15:25,620 --> 00:15:28,660 Näiteks näide, millega mõned võite olla tuttav on see 287 00:15:28,660 --> 00:15:29,350 asi siin. 288 00:15:29,350 --> 00:15:32,510 Nii et see raamat on siin järjest kuupäevaga, aga kunagi ammu, see 289 00:15:32,510 --> 00:15:34,720 sisaldas kogu palju nimesid ja telefoninumbreid. 290 00:15:34,720 --> 00:15:37,710 Ja tõepoolest, kui ma tahtsin, et leida keegi selles telefoniraamat - 291 00:15:37,710 --> 00:15:39,800 öelda, keegi nimega Mike Smith - 292 00:15:39,800 --> 00:15:43,810 Ma võiksin leida Mike Smith igal number küllaltki lihtne viisil. 293 00:15:43,810 --> 00:15:47,700 Ma võiks alustada algusest ja liikuda lehele 1, ei ole seal. 294 00:15:47,700 --> 00:15:49,240 Lehekülg 2, ei ole seal. 295 00:15:49,240 --> 00:15:49,960 Page 3. 296 00:15:49,960 --> 00:15:53,430 Kas see algoritm, on see, et protsess, on õige? 297 00:15:53,430 --> 00:15:54,620 >> Nii et see on õige, eks? 298 00:15:54,620 --> 00:15:58,070 Ma olen selline idioot teeb seda sel viisil, kuid lõpuks ma 299 00:15:58,070 --> 00:16:02,670 leida perekonnanimi S ja loodetavasti Mike on selles osas ja ma muutunud 300 00:16:02,670 --> 00:16:04,100 teha oma algoritm. 301 00:16:04,100 --> 00:16:05,440 Aga kindlasti see ei ole intuitiivne. 302 00:16:05,440 --> 00:16:08,020 Enamik iga mõistlik inimene selles ruumi ei oleks seda teinud. 303 00:16:08,020 --> 00:16:10,180 Mida te olete teinud? 304 00:16:10,180 --> 00:16:11,480 >> Sa on läinud otse keskele, eks? 305 00:16:11,480 --> 00:16:12,000 Umbes, et keskel. 306 00:16:12,000 --> 00:16:16,310 Ja sa mõistad, oh, need on pr Nii Mike Smith, perekonnanimi on Smith, 307 00:16:16,310 --> 00:16:19,050 ei ole selge, siis vasakul pool raamatut. 308 00:16:19,050 --> 00:16:21,040 Ta peab olema poole S on õiges. 309 00:16:21,040 --> 00:16:24,090 Ja selles punktis, kuigi enamik meist ei tee seda tegelikult, saame 310 00:16:24,090 --> 00:16:27,125 sõna otseses mõttes pisar selle probleemi poole. 311 00:16:27,125 --> 00:16:27,640 >> [Cheering JA APLAUS] 312 00:16:27,640 --> 00:16:28,950 >> DAVID Malan: Aitäh. 313 00:16:28,950 --> 00:16:30,150 >> [Cheering JA APLAUS] 314 00:16:30,150 --> 00:16:34,660 >> DAVID Malan: Võid sõna otseses mõttes pisar see probleem pooleks, jättes mulle, 315 00:16:34,660 --> 00:16:36,120 sõna otseses mõttes, probleem pool nii suur. 316 00:16:36,120 --> 00:16:39,750 Nii et kui see telefoniraamat oli - ja see ilmselt oli - umbes 1000 lehekülge, nüüd 317 00:16:39,750 --> 00:16:40,840 see on ainult 500. 318 00:16:40,840 --> 00:16:44,710 Kui ma seda uuesti ja ma mõistan, oh, Kurat, ma läksin liiga kaugele, ma olen Ts 319 00:16:44,710 --> 00:16:46,480 osa, ma ei saa samamoodi - 320 00:16:46,480 --> 00:16:48,030 piltlikult või sõna otseses mõttes - 321 00:16:48,030 --> 00:16:50,260 rip telefoniraamat - see oli tegelikult palju lihtsam sel ajal. 322 00:16:50,260 --> 00:16:53,610 Ma sõna otseses mõttes rip telefoniraamat pooleks, jättes mind nüüd 323 00:16:53,610 --> 00:16:55,186 ei 1000, ei 500 - 324 00:16:55,186 --> 00:16:56,680 250 lehekülge. 325 00:16:56,680 --> 00:17:00,210 Ja ma ei saa minna 125, ja pool sellest, ja pool sellest, ja pool sellest, 326 00:17:00,210 --> 00:17:04,760 kuni lõpuks ma ei jää vaid üks lehekülg. 327 00:17:04,760 --> 00:17:06,430 >> [Naer] 328 00:17:06,430 --> 00:17:07,589 >> DAVID Malan: See on I osa ebaõnnestuda. 329 00:17:07,589 --> 00:17:10,400 Ühele lehele, kus Mike loodetavasti on. 330 00:17:10,400 --> 00:17:14,630 Nüüd neid erinevaid algoritme võib olla justkui hinnata või hinnatakse 331 00:17:14,630 --> 00:17:15,270 erinevalt. 332 00:17:15,270 --> 00:17:17,300 Esimene oli väga lineaarne, eks? 333 00:17:17,300 --> 00:17:18,500 Lülita lehel otsima Mike. 334 00:17:18,500 --> 00:17:19,630 Lülita lehel otsima Mike. 335 00:17:19,630 --> 00:17:20,560 See on väga lineaarne. 336 00:17:20,560 --> 00:17:23,339 Kui seal on veel üks leht on telefoni raamat, see on ilmselt läheb mind 337 00:17:23,339 --> 00:17:27,380 veel üks teine, veel üks ajaühik, aga me arvutamise kord. 338 00:17:27,380 --> 00:17:32,470 >> Nii et ma võiks teha niimoodi see rida siin, kusjuures nagu suurus 339 00:17:32,470 --> 00:17:34,700 Probleem suureneb vasakult paremale - 340 00:17:34,700 --> 00:17:37,480 telefoniraamat muutub väiksemaks, et suurem - 341 00:17:37,480 --> 00:17:41,080 ja aeg läheb tõusta vertikaalteljel, seda suurem 342 00:17:41,080 --> 00:17:42,030 telefoniraamat on. 343 00:17:42,030 --> 00:17:46,180 Nii n on vaid üldine muutuja, mis arvuti teadlased kasutavad esindama 344 00:17:46,180 --> 00:17:48,210 mingi väärtus, mingi number. 345 00:17:48,210 --> 00:17:50,740 Nii n läheb suureneb lineaarselt. 346 00:17:50,740 --> 00:17:53,040 Kahekordistada telefoniraamat, see on kavatseme mind kaks korda nii palju 347 00:17:53,040 --> 00:17:54,780 aega, on üsna tõenäoline, et leida Mike. 348 00:17:54,780 --> 00:17:56,390 >> Nüüd ma ei olnud tark sellest, eks? 349 00:17:56,390 --> 00:17:57,800 Ma imestasin igav kiiresti. 350 00:17:57,800 --> 00:17:58,910 Oleks võinud teha seda kahekesi. 351 00:17:58,910 --> 00:18:01,870 Nii kaks lehekülge, siis neli, siis kuus, siis kaheksa. 352 00:18:01,870 --> 00:18:05,220 Ja ma võiks alustada sõidavad läbi vähe kiiremini, kuigi risk väike 353 00:18:05,220 --> 00:18:09,210 ületamise Mike, kuid et kõver ei ole saab olema kõik, mis erinevad. 354 00:18:09,210 --> 00:18:12,550 See on ikka saab olema sirge line, kuid veidi kiirem. 355 00:18:12,550 --> 00:18:13,710 >> Aga mida ma tegin? 356 00:18:13,710 --> 00:18:15,845 Ma tegelikult ei midagi fundamentaalselt parem. 357 00:18:15,845 --> 00:18:21,990 Ma saavutanud, mida me kutsume logaritmiline ajal log n, kusjuures see roheline 358 00:18:21,990 --> 00:18:27,730 line on palju, palju, palju vähem sirge serv ta. 359 00:18:27,730 --> 00:18:33,050 Ja mitte, see ütleb, sest see omamoodi läheneb lõpmatusele kunagi nii järk-järgult, 360 00:18:33,050 --> 00:18:36,700 et ma võiks tegelikult võtta 1000-leheküljeline telefoniraamat, kahekordistada oma suurus 361 00:18:36,700 --> 00:18:39,610 järgmisel aastal - kuna arvan palju rohkem inimesed liiguvad linnas. 362 00:18:39,610 --> 00:18:43,250 >> Nüüd mul on 2000 lehekülge, aga kuidas palju rohkem samme, et targemaks 363 00:18:43,250 --> 00:18:45,200 algoritm läheb võtma? 364 00:18:45,200 --> 00:18:46,060 Lihtsalt üks. 365 00:18:46,060 --> 00:18:48,060 Ma mõtlen, et see on võimas asi. 366 00:18:48,060 --> 00:18:51,400 Kui läheme 4000 lehekülge järgmisel aastal et aega võtab mind 367 00:18:51,400 --> 00:18:53,020 ainult kaks sammu. 368 00:18:53,020 --> 00:18:56,500 Nii et sa ei viska suuremaks probleemid mind, ei ole erinevalt veebis on 369 00:18:56,500 --> 00:18:59,560 viskamine suuremaks probleeme iga päev kell Googles ja Facebooks kohta 370 00:18:59,560 --> 00:19:01,590 maailmas, ja see ei ole nii suur asi. 371 00:19:01,590 --> 00:19:05,840 Sest ma panen rohkem mõelnud ja hooldus arvesse minu algoritm, mille abil saaks lahendada 372 00:19:05,840 --> 00:19:07,020 probleeme tõhusalt. 373 00:19:07,020 --> 00:19:09,260 >> Ja tõepoolest, see on üks eesmärgid selle käigus. 374 00:19:09,260 --> 00:19:11,230 Soovite, mööda teed, õppida, kuidas programmi. 375 00:19:11,230 --> 00:19:13,360 Te õpite, kuidas programmeerida iga keelte arvu. 376 00:19:13,360 --> 00:19:16,670 Aga lõpus päeval, muidugi on umbes probleemide lahendamine ja saada 377 00:19:16,670 --> 00:19:20,490 paremini lahendada probleeme - ja nagu juhtudel, probleemide lahendamine 378 00:19:20,490 --> 00:19:22,030 tõhusamalt. 379 00:19:22,030 --> 00:19:23,990 >> Nüüd siiani oleme seda teinud üsna intuitiivselt. 380 00:19:23,990 --> 00:19:27,420 Olgem tutvustada midagi üsna geneerilise nimega pseudokoodi. 381 00:19:27,420 --> 00:19:29,150 Nii me lõpuks saada, seda muidugi, et 382 00:19:29,150 --> 00:19:30,570 erinevaid programmeerimiskeeli. 383 00:19:30,570 --> 00:19:34,280 Aga täna me teeme seda inglise moodi süntaks, kus sa lihtsalt omamoodi öelda 384 00:19:34,280 --> 00:19:37,330 mida sa mõtled, kuid sa oled kunagi nii sisutihe ja te ei muretse 385 00:19:37,330 --> 00:19:38,960 grammatika ja terveid lauseid. 386 00:19:38,960 --> 00:19:41,600 Sa lihtsalt väljendada ennast lühidalt kui võimalik. 387 00:19:41,600 --> 00:19:45,400 >> Nii pseudokoodi on inglise moodi süntaks, mis tähistab 388 00:19:45,400 --> 00:19:46,750 programmeerimiskeelt. 389 00:19:46,750 --> 00:19:51,170 Ja suunas, et lõpuks, andke mulle ettepaneku, et me nüüd modelleerida protsessi me lihtsalt 390 00:19:51,170 --> 00:19:54,990 kirjeldatud lugedes midagi veidi teisiti, seekord võetakse 391 00:19:54,990 --> 00:19:59,040 vaata seda viieminutiline video toodetud Meie sõbrad TED et 392 00:19:59,040 --> 00:20:03,170 määratleb pseudokoodi on määratletud, mida algoritm mõtlemine on, ja isegi 393 00:20:03,170 --> 00:20:07,030 kuigi näiteks sa parasjagu näha on iseenesest super lihtne, see on 394 00:20:07,030 --> 00:20:09,820 kavatse hakata meile vaimse mudel, sõnavara, mille abil 395 00:20:09,820 --> 00:20:14,588 teha palju, palju keerulisem algoritme üsna kiiresti. 396 00:20:14,588 --> 00:20:15,576 >> [BEGIN VIDEO PLAYBACK] 397 00:20:15,576 --> 00:20:29,920 >> [Muusika mängib] 398 00:20:29,920 --> 00:20:31,100 >> Jutustaja: Mis on algoritm? 399 00:20:31,100 --> 00:20:34,730 Informaatikas, algoritm on juhistega lahendada mõned 400 00:20:34,730 --> 00:20:36,620 probleem samm-sammult. 401 00:20:36,620 --> 00:20:39,650 Tavaliselt algoritme teostatakse arvutid, kuid meil, inimestel, 402 00:20:39,650 --> 00:20:41,230 algoritmid, samuti. 403 00:20:41,230 --> 00:20:43,290 Näiteks, kuidas te minna umbes loendades 404 00:20:43,290 --> 00:20:44,750 inimesed ruumis? 405 00:20:44,750 --> 00:20:47,980 Noh, kui sa oled nagu mina, siis tahaks ilmselt punkti iga inimene, üks 406 00:20:47,980 --> 00:20:50,120 ajal ja loota kuni 0. 407 00:20:50,120 --> 00:20:52,970 1, 2, 3, 4, ja nii edasi. 408 00:20:52,970 --> 00:20:54,140 >> Noh, see on algoritm. 409 00:20:54,140 --> 00:20:57,600 Tegelikult, proovime seda väljendada natuke rohkem formaalselt pseudokoodi - 410 00:20:57,600 --> 00:21:00,700 Inglise-like süntaks, mis sarnaneb programmeerimiskeelt. 411 00:21:00,700 --> 00:21:02,580 Olgu N võrdub 0. 412 00:21:02,580 --> 00:21:06,970 Iga inimene toas, määrata N võrdub N pluss 1. 413 00:21:06,970 --> 00:21:08,400 >> Kuidas seda tõlgendada pseudokoodi? 414 00:21:08,400 --> 00:21:12,840 Noh, esimene rida deklareerib, niiöelda, muutuja nimega N ja käivitab 415 00:21:12,840 --> 00:21:14,250 selle väärtuseks 0. 416 00:21:14,250 --> 00:21:17,550 See tähendab lihtsalt, et alguses meie algoritm, asi, mille 417 00:21:17,550 --> 00:21:19,650 Me loodame, mille väärtus on 0. 418 00:21:19,650 --> 00:21:22,620 Lõppude lõpuks, enne kui me alustame lugemist me ei ole loendatud midagi veel. 419 00:21:22,620 --> 00:21:25,340 Üleskutse see muutuja N on vaid konventsiooni. 420 00:21:25,340 --> 00:21:26,890 Ma oleks võinud seda nimetas kõige midagi. 421 00:21:26,890 --> 00:21:30,560 >> Nüüd joon kaks demarks algust loop, sammud, mis 422 00:21:30,560 --> 00:21:32,310 korrata mõned mitu korda. 423 00:21:32,310 --> 00:21:35,910 Seega meie näites, samm me võtame loodab inimesi ruumis. 424 00:21:35,910 --> 00:21:38,730 Beneath liinil on rida kolm, mis kirjeldab täpselt, kuidas 425 00:21:38,730 --> 00:21:40,160 me minna lugedes. 426 00:21:40,160 --> 00:21:43,440 Taandus tähendab, et see on line kolm mis kordub. 427 00:21:43,440 --> 00:21:47,380 >> Nii et mida pseudokoodi ütleb on et pärast alguseks 0, iga 428 00:21:47,380 --> 00:21:50,690 inimene toas, me suurendada N 1. 429 00:21:50,690 --> 00:21:53,050 Nüüd on see algoritm on õige? 430 00:21:53,050 --> 00:21:54,580 Noh, olgem paugu see natuke. 431 00:21:54,580 --> 00:21:57,270 Kas see töötab siis, kui on kaks inimest toas? 432 00:21:57,270 --> 00:21:58,170 Vaatame. 433 00:21:58,170 --> 00:22:00,260 >> Kooskõlas üks, me initsialiseerida N 0-ga. 434 00:22:00,260 --> 00:22:03,660 Iga nimetatud kaks inimest, me siis juurdekasvu N 1. 435 00:22:03,660 --> 00:22:07,310 Nii et esimene reis läbi loop, uuendame N 0-1. 436 00:22:07,310 --> 00:22:11,070 On teine ​​reis läbi sama loop, uuendame N 1-2. 437 00:22:11,070 --> 00:22:15,780 Ja nii käesoleva algoritm lõpuks, n on 2, mis tõesti sobib arvu 438 00:22:15,780 --> 00:22:16,700 inimesed ruumis. 439 00:22:16,700 --> 00:22:17,760 >> Siiani on kõik hästi. 440 00:22:17,760 --> 00:22:19,610 Kuidas nurga puhul, kuigi? 441 00:22:19,610 --> 00:22:22,590 Oletame, et on 0 inimest ruumis - peale minu, 442 00:22:22,590 --> 00:22:24,170 kes teeb lugedes. 443 00:22:24,170 --> 00:22:27,150 Kooskõlas üks, me initsialiseerida N 0-ga. 444 00:22:27,150 --> 00:22:30,280 Seekord aga kolmas rida ei Teostame kõik, sest seal ei ole 445 00:22:30,280 --> 00:22:31,370 inimene toas. 446 00:22:31,370 --> 00:22:35,260 Ja nii N jääb 0, mis ühtib inimeste arvu ruumis. 447 00:22:35,260 --> 00:22:36,420 Päris lihtne, eks? 448 00:22:36,420 --> 00:22:39,630 >> Aga lugedes inimesed ühekaupa on üsna ebatõhus, liiga, ei? 449 00:22:39,630 --> 00:22:40,920 Kindlasti me saame teha paremini. 450 00:22:40,920 --> 00:22:43,120 Miks ei arvestata kaks inimest korraga? 451 00:22:43,120 --> 00:22:49,300 Arvestamise asemel 1, 2, 3, 4, 5, 6, 7, 8, ja nii edasi, siis miks mitte loota, 2, 452 00:22:49,300 --> 00:22:51,460 4, 6, 8, ja nii edasi? 453 00:22:51,460 --> 00:22:53,700 See isegi kõlab kiiremini, ja see kindlasti on. 454 00:22:53,700 --> 00:22:56,240 >> Olgem väljendada seda optimeerimine aastal pseudokoodi. 455 00:22:56,240 --> 00:22:57,800 Olgu N võrdub 0. 456 00:22:57,800 --> 00:23:02,450 Iga paari inimest toas määratud N võrdub N pluss 2. 457 00:23:02,450 --> 00:23:04,120 Päris lihtne muuta, eks? 458 00:23:04,120 --> 00:23:06,750 Selle asemel, et loota inimeste üks korraga, siis selle asemel loota 459 00:23:06,750 --> 00:23:08,300 need kaks korraga. 460 00:23:08,300 --> 00:23:10,980 See algoritm on seega kaks korda nii kiiresti kui viimane. 461 00:23:10,980 --> 00:23:12,180 >> Aga see on õige? 462 00:23:12,180 --> 00:23:12,920 Vaatame. 463 00:23:12,920 --> 00:23:15,330 Kas see töötab siis, kui on kaks inimest toas? 464 00:23:15,330 --> 00:23:17,550 Kooskõlas üks, me initsialiseerida N 0-ga. 465 00:23:17,550 --> 00:23:20,920 Sest, et üks paar inimest, me siis juurdekasvu N kahega. 466 00:23:20,920 --> 00:23:24,860 Ja nii käesoleva algoritm lõpuks, N 2, mis tõesti sobib arvu 467 00:23:24,860 --> 00:23:25,650 inimesed ruumis. 468 00:23:25,650 --> 00:23:28,250 >> Oletame kõrval, et on olemas 0 inimest toas. 469 00:23:28,250 --> 00:23:30,840 Kooskõlas üks, me initsialiseerida N 0-ga. 470 00:23:30,840 --> 00:23:34,330 Nagu varemgi, joon kolm ei tee üldse, sest seal ei ole paari 471 00:23:34,330 --> 00:23:35,380 inimesi ruumis. 472 00:23:35,380 --> 00:23:38,350 Ja nii N jääb 0, mis tõepoolest sobib arvu 473 00:23:38,350 --> 00:23:39,570 inimesed ruumis. 474 00:23:39,570 --> 00:23:42,280 >> Aga mis siis, kui seal on kolm inimesed ruumis? 475 00:23:42,280 --> 00:23:44,130 Kuidas see algoritm hind? 476 00:23:44,130 --> 00:23:44,990 Vaatame. 477 00:23:44,990 --> 00:23:47,460 Kooskõlas üks, me initsialiseerida N 0-ga. 478 00:23:47,460 --> 00:23:50,870 Sest paari neid inimesi, me siis juurdekasvu N 2. 479 00:23:50,870 --> 00:23:51,800 Aga mis edasi? 480 00:23:51,800 --> 00:23:54,960 Ei ole veel täielik paari inimest ruumis, et liinil ei 481 00:23:54,960 --> 00:23:56,180 ei kehti. 482 00:23:56,180 --> 00:24:00,530 Ja nii käesoleva algoritm lõpuks, N on veel 2, mis ei ole õige. 483 00:24:00,530 --> 00:24:03,810 >> Tõepoolest, see algoritm on öelnud, et lollakas, sest see on viga. 484 00:24:03,810 --> 00:24:05,820 Lets hüvitamise mõned uued pseudokoodi. 485 00:24:05,820 --> 00:24:09,670 Olgu n võrdne 0 iga paari inimeste tuba. 486 00:24:09,670 --> 00:24:12,550 Määra N võrdub N pluss 2. 487 00:24:12,550 --> 00:24:17,140 Kui üks inimene jääb paaritu, määratud N võrdub N pluss 1. 488 00:24:17,140 --> 00:24:20,140 Et seda lahendada konkreetne probleem, me oleme kasutusele kooskõlas neli, 489 00:24:20,140 --> 00:24:24,520 seisund, mida nimetatakse filiaal et see täidab üksnes juhul, kui seal on üks 490 00:24:24,520 --> 00:24:26,640 inimene, et me ei saa paari teisega. 491 00:24:26,640 --> 00:24:30,440 Ja nüüd, kas seal on üks või kolm või paaritu arv inimesi 492 00:24:30,440 --> 00:24:33,290 ruumi, see algoritm Nüüd neid lugeda. 493 00:24:33,290 --> 00:24:34,560 >> Kas me saame seda veelgi paremini teha? 494 00:24:34,560 --> 00:24:38,820 Noh, me ei lähe 3s või 4s või isegi 5s ja 10s, kuid pärast seda, see on 495 00:24:38,820 --> 00:24:41,360 hakka natuke raske punkt. 496 00:24:41,360 --> 00:24:44,660 Lõpus päeval, kas täidetakse arvutid või inimeste, 497 00:24:44,660 --> 00:24:46,750 algoritmid on lihtsalt kogum instruktsioonide koos 498 00:24:46,750 --> 00:24:48,290 mis probleeme lahendada. 499 00:24:48,290 --> 00:24:49,792 Need olid vaid kolm. 500 00:24:49,792 --> 00:24:52,404 Mis oleks probleem teil lahendada koos algoritm? 501 00:24:52,404 --> 00:24:52,901 >> [END VIDEO PLAYBACK] 502 00:24:52,901 --> 00:24:55,883 >> DAVID Malan: See on ainus aeg I ilmuvad multifilmide abil. 503 00:24:55,883 --> 00:25:01,050 Aga kui see lugu jätab maha, nüüd on see, kuidas me saame teha paremini? 504 00:25:01,050 --> 00:25:04,680 Kolmekesi ja püksid, me väita, saame loota inimesed palju kiiremini, kuid me saame 505 00:25:04,680 --> 00:25:06,290 teha fundamentaalselt parem kui see? 506 00:25:06,290 --> 00:25:07,540 Ja ma kihlvedu suudame. 507 00:25:07,540 --> 00:25:11,980 >> Kui me võtame kasutusele natuke meie enda pseudokoodi siin, ma lähen ettepaneku 508 00:25:11,980 --> 00:25:14,550 et suudame saavutada sellist rida. 509 00:25:14,550 --> 00:25:17,280 Me ei kavatse lugeda inimesi üks, kaks, kolm, neli. 510 00:25:17,280 --> 00:25:19,470 Me ei kavatse minna kaks, neli, kuus, kaheksa. 511 00:25:19,470 --> 00:25:23,390 Me teeme fundamentaalselt parem muutmise kaudu probleem ja selles 512 00:25:23,390 --> 00:25:27,080 juhul, võimendades teisiti alakasutatud ressurss. 513 00:25:27,080 --> 00:25:31,460 >> Vaid hetk, ma loodan, et andestate ja huumor meile püsti 514 00:25:31,460 --> 00:25:34,470 koht, kus punkt me läheme küsida iga saate võtta oma 515 00:25:34,470 --> 00:25:36,400 mõtetes number 1. 516 00:25:36,400 --> 00:25:39,560 Sa oled siis läheb järjest kohmakalt, kui aeg möödub, leida 517 00:25:39,560 --> 00:25:42,740 keegi, kes seisab, ühendada oma numbrid koos 518 00:25:42,740 --> 00:25:43,720 lisades need üles. 519 00:25:43,720 --> 00:25:47,490 Üks teist on siis läheb rassi istuda maha esimene ja teine ​​inimene 520 00:25:47,490 --> 00:25:48,880 läheb kordama. 521 00:25:48,880 --> 00:25:53,090 >> Nii teisisõnu, külvamisel kõik Teile number 1 ja seejärel 522 00:25:53,090 --> 00:25:57,800 ühendades need 1s arvesse 2s ja need 2s arvesse 4s, kõigiga üha 523 00:25:57,800 --> 00:26:02,740 istudes peaksime lõpus Selle algoritmi, on ainult üks laen 524 00:26:02,740 --> 00:26:07,570 hing, kes ei istu piisavalt kiiresti, kuid kes on kogu publiku arv 525 00:26:07,570 --> 00:26:09,180 tema meelt. 526 00:26:09,180 --> 00:26:13,730 >> Nii et kui teil oleks, lähme edasi ja - Esimene etapp - seista paigal. 527 00:26:13,730 --> 00:26:15,600 Ja täita. 528 00:26:15,600 --> 00:26:36,580 >> [CROWD vulisev] 529 00:26:36,580 --> 00:26:38,820 >> DAVID Malan: Kas sa tead, kus Lauren on? 530 00:26:38,820 --> 00:26:40,179 729? 531 00:26:40,179 --> 00:27:23,350 >> [CROWD vulisev] 532 00:27:23,350 --> 00:27:24,340 >> DAVID Malan: Kõik on korras? 533 00:27:24,340 --> 00:27:39,110 >> [CROWD vulisev] 534 00:27:39,110 --> 00:27:41,365 >> DAVID Malan: Olgu, me peaksime olema lõpusirgel. 535 00:27:41,365 --> 00:27:44,340 536 00:27:44,340 --> 00:27:47,670 Me näeme ühe mehe seisab siin veel. 537 00:27:47,670 --> 00:27:48,770 Kes veel tuleb siduda? 538 00:27:48,770 --> 00:27:50,020 Kui te tahate paarideks. 539 00:27:50,020 --> 00:27:53,260 540 00:27:53,260 --> 00:27:56,520 Keegi üleval. 541 00:27:56,520 --> 00:27:58,150 Miks ma ei appi siin. 542 00:27:58,150 --> 00:28:01,370 Sest väga vähe inimesi, kes on veel seistes, mis numbrid sa 543 00:28:01,370 --> 00:28:02,790 on oma meelt? 544 00:28:02,790 --> 00:28:04,020 >> Üliõpilane: 78. 545 00:28:04,020 --> 00:28:06,010 >> DAVID Malan: 78 plus - 546 00:28:06,010 --> 00:28:07,840 kes seisab siin all? 547 00:28:07,840 --> 00:28:08,370 >> Üliõpilane: 39. 548 00:28:08,370 --> 00:28:09,590 >> DAVID Malan: Plus 39. 549 00:28:09,590 --> 00:28:12,310 Plus, kes muidu on veel püsti? 550 00:28:12,310 --> 00:28:13,650 81? 551 00:28:13,650 --> 00:28:15,960 OK, kes siis veel? 552 00:28:15,960 --> 00:28:17,200 Teine 81? 553 00:28:17,200 --> 00:28:17,860 Wow. 554 00:28:17,860 --> 00:28:19,210 Ja siis mis kasu on tagasi? 555 00:28:19,210 --> 00:28:20,360 >> Üliõpilane: 49. 556 00:28:20,360 --> 00:28:21,812 >> DAVID Malan: 49, pluss? 557 00:28:21,812 --> 00:28:22,950 >> Üliõpilane: 98. 558 00:28:22,950 --> 00:28:24,980 >> DAVID Malan: 98 pluss? 559 00:28:24,980 --> 00:28:28,190 Kas see on keegi teine? 560 00:28:28,190 --> 00:28:29,155 12? 561 00:28:29,155 --> 00:28:30,460 Hea töö. 562 00:28:30,460 --> 00:28:33,610 >> [Naer] 563 00:28:33,610 --> 00:28:34,690 >> DAVID Malan: Oh, 112 - 564 00:28:34,690 --> 00:28:35,410 oh. 565 00:28:35,410 --> 00:28:36,220 Hea töö! 566 00:28:36,220 --> 00:28:38,660 >> [Naer] 567 00:28:38,660 --> 00:28:42,570 >> [APLAUS] 568 00:28:42,570 --> 00:28:43,820 >> DAVID Malan: Keegi teine veel püsti? 569 00:28:43,820 --> 00:28:46,710 570 00:28:46,710 --> 00:28:47,260 Vabandust? 571 00:28:47,260 --> 00:28:48,110 >> Üliõpilane: 99. 572 00:28:48,110 --> 00:28:49,810 >> DAVID Malan: 99. 573 00:28:49,810 --> 00:28:52,620 Keegi teine ​​veel püsti? 574 00:28:52,620 --> 00:28:57,290 Ja õpilaste koguarvust siin tegelikult, vastavalt - 575 00:28:57,290 --> 00:28:59,400 Kas teil on number? 576 00:28:59,400 --> 00:29:03,170 Oh, tegelik arv inimesi tuba, vastavalt arvesse, et 577 00:29:03,170 --> 00:29:07,660 õpetamise stipendiaatide tegid igaühe, kuidas oli 729. 578 00:29:07,660 --> 00:29:11,070 Nii välja toatäis Harvardi üliõpilastele kes loendatakse ise 579 00:29:11,070 --> 00:29:14,126 Vastus on 637. 580 00:29:14,126 --> 00:29:15,480 >> [Naer] 581 00:29:15,480 --> 00:29:16,350 >> DAVID Malan: nii lähedal. 582 00:29:16,350 --> 00:29:17,360 Aga ikkagi. 583 00:29:17,360 --> 00:29:22,110 OK, nii et see on õpetamise hetk, eks ole? 584 00:29:22,110 --> 00:29:24,120 See on nüüd see, mida me kirjeldada viga. 585 00:29:24,120 --> 00:29:28,120 Kuskil mööda teed, tegime mõned aritmeetika valesti, või keegi istus, 586 00:29:28,120 --> 00:29:29,930 või vasakule, või on midagi valesti läinud. 587 00:29:29,930 --> 00:29:30,930 Aga see on hea. 588 00:29:30,930 --> 00:29:33,390 Sest isegi veel, me sain üsna lähedal. 589 00:29:33,390 --> 00:29:37,480 Ja ma tahaks väita, et meil on vale vastata palju kiiremini, kui ma oleks 590 00:29:37,480 --> 00:29:39,770 kasutades minu rohkem lineaarne lähenemine. 591 00:29:39,770 --> 00:29:42,630 >> Nii oletame, me ei tegelikult saada, et õige, kuid arvan, et nüüd, mida 592 00:29:42,630 --> 00:29:46,870 juhtub iga kord, võrreldes mu enda naiivne osutades algoritm. 593 00:29:46,870 --> 00:29:48,420 Üks, kaks, kolm. 594 00:29:48,420 --> 00:29:53,010 Kui on tõesti 729 või 637 inimest siin, et oleks võtnud mind 595 00:29:53,010 --> 00:29:57,720 sõna otseses mõttes 637 või 729 pointings banaani ja 596 00:29:57,720 --> 00:29:59,490 incrementing minu kogunäidu. 597 00:29:59,490 --> 00:30:01,910 Ja ma võiks teha natuke paremini läheb kaks, neli, kuus, kaheksa, ja 598 00:30:01,910 --> 00:30:05,660 kahekordistada kiirust, võib-olla isegi kolmekordne või neljakordne, sõltuvalt sellest, kui hästi suudan 599 00:30:05,660 --> 00:30:07,110 seda lugedes peas. 600 00:30:07,110 --> 00:30:10,720 >> Kuid see lähenemine, et kutid võtsid oli täiesti erinev. 601 00:30:10,720 --> 00:30:12,770 Sest alguses, te kõik püsti. 602 00:30:12,770 --> 00:30:14,620 Nii et kõik 729. 603 00:30:14,620 --> 00:30:17,370 Ja siis sõna otseses mõttes pool teist istus. 604 00:30:17,370 --> 00:30:19,720 Ja pärast seda, teine poole sa istusid. 605 00:30:19,720 --> 00:30:22,650 Ja pärast seda, teine poole sa istusid. 606 00:30:22,650 --> 00:30:27,470 >> Ja kogu mitu korda, et sa poisid oleks istunud on umbes 607 00:30:27,470 --> 00:30:31,740 kaheksa või üheksa või kümme kokku ajad, sõltuvalt sellest, mida meie kogu arv on. 608 00:30:31,740 --> 00:30:33,300 Ja meil on võimalik järjestada ning teha see muul viisil. 609 00:30:33,300 --> 00:30:37,740 Kui meil oli 1024 inimest toas kokku, mitu korda sa võid 610 00:30:37,740 --> 00:30:41,870 poole võrra 1024 inimest on 10. 611 00:30:41,870 --> 00:30:43,370 >> Nüüd mõtle selle teise suunda. 612 00:30:43,370 --> 00:30:49,170 Oletame, naeruväärselt, et meil oli, ütleme 4000000000 inimesed selles ruumis, 613 00:30:49,170 --> 00:30:50,860 või veidi suurem tuba. 614 00:30:50,860 --> 00:30:54,550 Mitu korda oleks meil läinud läbi selle algoritmi nii, et pool 615 00:30:54,550 --> 00:30:58,110 selle klassi istub? 616 00:30:58,110 --> 00:31:03,050 See on ainult kavatse võtta 32 sellist toimingud, isegi klassi suurus 617 00:31:03,050 --> 00:31:03,770 4000000000. 618 00:31:03,770 --> 00:31:04,055 Miks? 619 00:31:04,055 --> 00:31:06,980 Sest 4000000000 läheb kaks miljardit läheb ühe miljoni, läheb 620 00:31:06,980 --> 00:31:09,925 500000000, läheb 250 miljonit, dot, dot, dot. 621 00:31:09,925 --> 00:31:14,940 Võin ainult seda jaotust umbes 32 korda, kus punkt, kõik, välja arvatud 622 00:31:14,940 --> 00:31:17,820 üks inimene jääks seisma. 623 00:31:17,820 --> 00:31:21,590 >> Ja see on ka see omamoodi võimas Idee, et üha püüame 624 00:31:21,590 --> 00:31:24,690 võimendada seda muidugi ja programmeerimine ja infotehnoloogia rohkem 625 00:31:24,690 --> 00:31:29,400 Üldiselt on need idud idee mida me saame siis lahendada probleeme palju, 626 00:31:29,400 --> 00:31:31,130 palju võimsamalt. 627 00:31:31,130 --> 00:31:34,610 Nii alustasime üsna lihtne selle pseudokoodi ja poiss ruumis, kuid 628 00:31:34,610 --> 00:31:38,205 nüüd kogu tuba täis inimesi, me oleme teinud põhimõtteliselt parem. 629 00:31:38,205 --> 00:31:41,460 >> Noh, nüüd üleminekut pseudokoodi mõned tegelikku koodi. 630 00:31:41,460 --> 00:31:44,200 See keel, mida parasjagu näha juhtuma mida nimetatakse JavaScript, ja 631 00:31:44,200 --> 00:31:46,190 me tagasi selle suunas semestri lõpuks. 632 00:31:46,190 --> 00:31:49,960 See on programmeerimiskeel, mida kasutada, et muuta veebilehed ja muu selline 633 00:31:49,960 --> 00:31:51,360 tarkvara nendel päevadel. 634 00:31:51,360 --> 00:31:54,890 Ja me oleme seda kasutanud, tänu sõbrale on meie Stanfordi kodeerida 635 00:31:54,890 --> 00:31:56,630 mõned varjatud teabe siin. 636 00:31:56,630 --> 00:31:59,500 See on kunst steganography, niiöelda, kus saate peita 637 00:31:59,500 --> 00:32:03,990 informatsiooni, mida muidu tundub olla müra või hoopis 638 00:32:03,990 --> 00:32:05,220 pilt kokku. 639 00:32:05,220 --> 00:32:10,120 Aga varjatud just selle pildi on tõesti salajane sõnum kehvasti. 640 00:32:10,120 --> 00:32:12,950 >> Nii et lubage mul minna ja tõmba Sama pilt siin, see 641 00:32:12,950 --> 00:32:14,270 aega veebibrauser. 642 00:32:14,270 --> 00:32:17,710 Ja ma lähen laine mu kätt mõned andmed täna, eriti 643 00:32:17,710 --> 00:32:21,780 Neile, kes seda näeb mitte ainult JavaScript kuid kreeka, kuna 644 00:32:21,780 --> 00:32:23,930 täiesti võõras keeles. 645 00:32:23,930 --> 00:32:26,190 Aga see on näide sellest, programmeerimiskeelt. 646 00:32:26,190 --> 00:32:30,660 >> Ja nüüd, võtta usus, et see esimene rida koodi - 647 00:32:30,660 --> 00:32:32,470 ja koodi, ma lihtsalt tähendab teksti. 648 00:32:32,470 --> 00:32:35,660 Tekst, mis ma oleks sõna-sõnalt kirjutatud Microsoft Wordi, kui mul oleks 649 00:32:35,660 --> 00:32:37,630 õigus tarkvara siis midagi teha. 650 00:32:37,630 --> 00:32:42,120 Programmeerimine lähtekoodi, programmeerimine kood on tõesti ainult teksti ja see 651 00:32:42,120 --> 00:32:45,420 välja erinevad vastavalt sellele, milline keel te kasutate, ei ole erinevalt inglise ja 652 00:32:45,420 --> 00:32:49,200 Hispaania ja Venemaa kõik teistmoodi kui kirjutad neid klaviatuuri. 653 00:32:49,200 --> 00:32:53,520 >> Nii et see esimene rida, nüüd võtma usu, lihtsalt avab graafika 654 00:32:53,520 --> 00:32:56,160 internet, et lärmakas graafiline me just nägin. 655 00:32:56,160 --> 00:32:59,900 See järgmise line siin on näide loop, ja me tegelikult nägime, et sama 656 00:32:59,900 --> 00:33:01,130 kõnepruugis TED video. 657 00:33:01,130 --> 00:33:03,750 Silmus on midagi, mis juhtub jälle ja uuesti, ja isegi kui see 658 00:33:03,750 --> 00:33:08,440 absoluutselt tundub segasena koos märksõna ja mõned sulud ja 659 00:33:08,440 --> 00:33:09,510 mõned semikoolonit. 660 00:33:09,510 --> 00:33:13,070 Me tuleme tagasi, et enne kaua, kuid mis vimka sisuliselt on 661 00:33:13,070 --> 00:33:17,310 ütlen programmi korrata üle kõik nende lärmakas dots, vasakult 662 00:33:17,310 --> 00:33:18,980 paremale, ülevalt alla. 663 00:33:18,980 --> 00:33:21,260 >> Sest lõpus päev, pilt meeldib see - ja te võite tegelikult 664 00:33:21,260 --> 00:33:22,860 objekti näha selle projektoriga - 665 00:33:22,860 --> 00:33:25,280 on tõesti ainult ruudustik dots. 666 00:33:25,280 --> 00:33:29,730 Nii saame kindlaks kõik need punktid poolt koordinaatide x, y, ja selle 667 00:33:29,730 --> 00:33:33,890 programm, nüüd saame hakata midagi teha, et need täpid. 668 00:33:33,890 --> 00:33:37,540 >> Niisiis, mida ma lähen edasi minna siin ja ei ei ma lähen tegema mõned muudatused. 669 00:33:37,540 --> 00:33:41,000 Esiteks ma lähen edasi minna ja vabaneda kõik selle rohekas ja sinakas 670 00:33:41,000 --> 00:33:43,520 müra, ja ma lähen edasi minna ja tippige järgmine 671 00:33:43,520 --> 00:33:45,710 küll segasena süntaks. 672 00:33:45,710 --> 00:33:48,020 im kujutise. 673 00:33:48,020 --> 00:33:53,380 Sinine on asukoht x, koma asukoht y, 0. 674 00:33:53,380 --> 00:33:55,610 Teisisõnu, ma tahan lihtsalt lülitage kõik sinine 675 00:33:55,610 --> 00:33:56,920 punktidena, et pilt. 676 00:33:56,920 --> 00:33:59,800 >> Ma lähen edasi minna nüüd ja kliki see Run / Save nuppu ja sa 677 00:33:59,800 --> 00:34:02,850 märkate paremal servas, Saadud kujutis. 678 00:34:02,850 --> 00:34:06,120 Nüüd oma super roheline, kuid see ei ole üllatav, sest ma sõna otseses mõttes sisse 679 00:34:06,120 --> 00:34:11,070 maha, tehes 1 0, kõik sinine mis pildil. 680 00:34:11,070 --> 00:34:12,540 >> Noh, nüüd teeme seda natuke rohkem. 681 00:34:12,540 --> 00:34:16,989 im piltide, dot setGreen, x, y. 682 00:34:16,989 --> 00:34:20,659 Ja see tähendab lihtsalt Kerrata vasakult paremale ja siis ülevalt alla. 683 00:34:20,659 --> 00:34:23,520 Keera see kinni, mille väärtus 0, samuti. 684 00:34:23,520 --> 00:34:24,750 Salvesta. 685 00:34:24,750 --> 00:34:28,100 Ja projektor, sa ei saa tegelikult tõesti näha midagi. 686 00:34:28,100 --> 00:34:31,380 >> Minu sülearvuti ekraani, kui ma peer vaid õige, ma näen natuke 687 00:34:31,380 --> 00:34:33,300 pilt, sest nad on ikka veel mõned punased seal. 688 00:34:33,300 --> 00:34:35,540 Kui olete kunagi kuulnud akronüüm RGB - 689 00:34:35,540 --> 00:34:36,830 punane, roheline, sinine - 690 00:34:36,830 --> 00:34:39,110 see viitab sellele koostis kasutades kujutise 691 00:34:39,110 --> 00:34:40,230 lihtsalt need kolm värvi. 692 00:34:40,230 --> 00:34:43,159 Ja just nüüd, me visata kõik roheline, kõik sinised, kuid 693 00:34:43,159 --> 00:34:44,500 seal ei ole palju punast. 694 00:34:44,500 --> 00:34:45,920 >> Nii et lubage mul vänt kuni punane. 695 00:34:45,920 --> 00:34:47,070 Kuidas ma saan seda teha? 696 00:34:47,070 --> 00:34:49,300 Noh, esiteks, ma lähen küsida Selle programmi küsimus. 697 00:34:49,300 --> 00:34:52,030 Ma lähen edasi minna ja kutsume seda muutuja, nagu algebra. 698 00:34:52,030 --> 00:34:54,060 Sul võib olla x või y või z. 699 00:34:54,060 --> 00:34:57,230 Ma lähen kuulutada muutuja ja öelda, pane see muutuja, 700 00:34:57,230 --> 00:35:02,790 ajutiselt, väärtus pilte getRed väärtus x, y. 701 00:35:02,790 --> 00:35:05,870 >> Ja veel, me tuleme tagasi kõik Selle detail tulevikus. 702 00:35:05,870 --> 00:35:10,630 Aga nüüd, lihtsalt võtta usus, et see liin küsib programm, mis 703 00:35:10,630 --> 00:35:12,740 on punane väärtus x, y? 704 00:35:12,740 --> 00:35:14,450 Tol eriti dot? 705 00:35:14,450 --> 00:35:15,710 >> Siis ma lähen tegema midagi ta. 706 00:35:15,710 --> 00:35:21,100 Siis ma teen pilti dot komplekt punane kell x, y, y, kuid seekord ma lähen 707 00:35:21,100 --> 00:35:24,760 seda soodustada, tehes punane korda oletame, 10. 708 00:35:24,760 --> 00:35:26,870 Nii seda suurendada 10 korda. 709 00:35:26,870 --> 00:35:29,880 Lubage mul välja suumida nüüd ja klikk Run / Save. 710 00:35:29,880 --> 00:35:36,430 Ja voila, et seal oli kogu aega, kuigi meie inimsilm 711 00:35:36,430 --> 00:35:37,900 ei saanud päris seda näha. 712 00:35:37,900 --> 00:35:41,470 >> Nii et taas, see on praegu reaalne kood, näiteks keel, et me tuleme 713 00:35:41,470 --> 00:35:42,770 tagasi enne pikk. 714 00:35:42,770 --> 00:35:46,670 Aga mõistma, eriti neile, kellel ei ole selline kogemus, et see on üsna 715 00:35:46,670 --> 00:35:50,280 kiiresti, et me ise oleks kirjalikult koodi niimoodi seal. 716 00:35:50,280 --> 00:35:54,520 Tegelikult vahend, millega te olete kõik mõnevõrra tuttav, võib-olla on CS50 on 717 00:35:54,520 --> 00:35:57,330 oma kursuse-shopping tööriist, mis oli tegelikult rebooted sel suvel mõne 718 00:35:57,330 --> 00:36:01,070 kohta CS50 enda endised õpilased, nüüd omakorda TF. 719 00:36:01,070 --> 00:36:04,740 >> Nii see juhtub olema kodulehel ehitatud keeles nimetatakse PHP. 720 00:36:04,740 --> 00:36:08,510 Ta kasutab andmebaasi nimega MySQL asjad kellega me jõuame meie kätes 721 00:36:08,510 --> 00:36:10,190 määrdunud hiljem semester. 722 00:36:10,190 --> 00:36:14,140 Aga uskuge või mitte, isegi midagi nagu see lõpuks taandub 723 00:36:14,140 --> 00:36:19,480 Lihtsaim silmuseid ja tingimused ning oksad, nagu need, mida me nägime vaid 724 00:36:19,480 --> 00:36:21,530 hetk tagasi TED video. 725 00:36:21,530 --> 00:36:25,180 >> Mida ma mõtlesin, et ma nüüd tegema, on jagada ei lihtsalt midagi, mida meie töötajad on teinud 726 00:36:25,180 --> 00:36:28,010 jaoks campus, vaid midagi endine õpilane - kolm 727 00:36:28,010 --> 00:36:29,080 üliõpilased, tegelikult - 728 00:36:29,080 --> 00:36:33,950 teinud seda viimase aasta jooksul, Sierra, Daniel ja Sam, viimane neist ei olnud varem 729 00:36:33,950 --> 00:36:36,370 Planeerimise kogemus kui ta võttis CS50. 730 00:36:36,370 --> 00:36:39,950 Ja nende lõplik projekt, nad eksponeerida, kell CS50 Fair, 731 00:36:39,950 --> 00:36:43,720 rakendus nimega wrdly, mis on veebipõhine programm, mis nad tegid 732 00:36:43,720 --> 00:36:47,670 see video, et ma mõtlesin, et ma jagan annab teile tunde lihtsalt, mis on 733 00:36:47,670 --> 00:36:49,280 võimalik tähtaja lõppu. 734 00:36:49,280 --> 00:37:57,170 >> [Muusika mängib] 735 00:37:57,170 --> 00:38:00,570 >> DAVID Malan: See nädalast Zero 12. nädalani möödunud aastal. 736 00:38:00,570 --> 00:38:05,470 >> [APLAUS] 737 00:38:05,470 --> 00:38:09,520 >> DAVID Malan: Nagu teaser ka, tegelikult huvi äratamiseks on see, mida on 738 00:38:09,520 --> 00:38:14,580 võimalik, siis võib juba näinud, või võib varsti näha, market.cs50.net, 739 00:38:14,580 --> 00:38:17,710 uus vahend, mis kursuse meeskond on töötanud, seekord 740 00:38:17,710 --> 00:38:21,530 koostöös Harvard Student Ametid, näiteks, et alates käesoleva aasta 741 00:38:21,530 --> 00:38:24,980 ja jätkates loodetavasti sellesse eeloleval suvel pead standard 742 00:38:24,980 --> 00:38:27,890 võimalus ülikoolilinnakus osta ja müüa asju teile huvi pakkuda. 743 00:38:27,890 --> 00:38:32,220 Ja partnerluse kaudu HSA, saate saama ka tilk punkte maha 744 00:38:32,220 --> 00:38:35,950 ühes HSA füüsilise kauplustes on mõned hetkel tulevikus, et 745 00:38:35,950 --> 00:38:39,150 proxy asjad, eriti kui lõpetaja ja ei pruugi taha 746 00:38:39,150 --> 00:38:44,110 visata asju, kuid tegelikult maksab see edastama inimesed, kes võiksid teid jälgida 747 00:38:44,110 --> 00:38:45,270 siin ülikooli. 748 00:38:45,270 --> 00:38:46,740 Seega rohkem, et tulla. 749 00:38:46,740 --> 00:38:49,830 >> Aga veidi konkreetsemalt, tööriist mis on välja tulnud CS50 viimastel 750 00:38:49,830 --> 00:38:52,760 aastat, mida mõned teist võivad olla tuttavad ja teised võite olla 751 00:38:52,760 --> 00:38:57,940 googling nüüd, CS50.net/2x, saate leida lingi Chrome laiendamine 752 00:38:57,940 --> 00:39:01,250 mis on demonstratiivne, kuidas saab kasutada JavaScripti, et sama keelt me 753 00:39:01,250 --> 00:39:06,660 kasutada Eiffeli torn hetk tagasi rakendada 2x taasesituskiirus 754 00:39:06,660 --> 00:39:09,000 kõigi Harvard iSites videos. 755 00:39:09,000 --> 00:39:11,880 See on midagi, mis on ehitatud sisse CS50 enda video mängija. 756 00:39:11,880 --> 00:39:14,870 Aga ka see, kui sa hakkad kaevama arvesse lähtekoodi, mis me tulen 757 00:39:14,870 --> 00:39:18,840 õnnelikult kättesaadavaks, näete, kuidas saate isegi lahendada probleeme nagu, et 758 00:39:18,840 --> 00:39:23,180 kiirendades vidinad veebilehed mis sa oled juba hästi tuttav. 759 00:39:23,180 --> 00:39:26,630 >> Nii sõna nüüd käigus ja ootused ja mis ees ootab. 760 00:39:26,630 --> 00:39:29,445 Üldiselt me ​​tõepoolest kogunevad siin esmaspäeviti ja kolmapäeviti - kuigi 761 00:39:29,445 --> 00:39:31,490 Selle reede, me koguda sest uudised Week - 762 00:39:31,490 --> 00:39:34,640 1:00-14:00, kuigi mõnikord kuni 02:30. 763 00:39:34,640 --> 00:39:38,700 Arvestades seda, et sa võiksid seetõttu tahame või pead võtma mõned klass kell 2:00 764 00:39:38,700 --> 00:39:42,480 aastast või isegi varem, saan aru Loomulikult toetab, mida nimetatakse 765 00:39:42,480 --> 00:39:45,900 samaaegne liitumine, mille paneme toetada avalduse Ad Board ja 766 00:39:45,900 --> 00:39:49,400 oma resident dekaanid teie nimel, kui teil on konflikt kuskil selles 767 00:39:49,400 --> 00:39:50,790 1:00-02:30 vahemikus. 768 00:39:50,790 --> 00:39:54,110 Head selle URL online täiendavad üksikasjad. 769 00:39:54,110 --> 00:39:57,750 >> Aga nii tugistruktuur mis iseloomustab CS50, üliõpilaste 770 00:39:57,750 --> 00:40:01,750 rohkem ja vähem mugav samasugused, me pakuvad erinevad lood lõigud. 771 00:40:01,750 --> 00:40:04,730 Ja see on paar nädalat ära, kuid Enne pikk, siis saad küsida, 772 00:40:04,730 --> 00:40:05,770 oma mugavuse tase. 773 00:40:05,770 --> 00:40:08,590 Oled sa nende hulgas vähem mugav, mugavamaks, või 774 00:40:08,590 --> 00:40:10,520 kuskil vahel? 775 00:40:10,520 --> 00:40:13,150 >> Ja me peame kolm erinevat rajad, et rahuldada 776 00:40:13,150 --> 00:40:14,470 just neid publikule. 777 00:40:14,470 --> 00:40:17,900 Nii et ei ole mõtet sõna peaks teie isegi tunne, nagu sa oled konkureerivate 778 00:40:17,900 --> 00:40:21,390 igasuguse õpilasele rohkem või vähem tausta kui sina. 779 00:40:21,390 --> 00:40:24,160 Tõepoolest, muidugi on mõeldud palju rohkem koostööd ja palju 780 00:40:24,160 --> 00:40:25,650 avatum kui see. 781 00:40:25,650 --> 00:40:29,030 >> Seoses probleem komplekti, saate leida ka seda, et lisaks 782 00:40:29,030 --> 00:40:32,130 standardväljaandele iga nädal probleem seada, seal on sageli "häkker 783 00:40:32,130 --> 00:40:37,010 väljaanne ", mis on mõeldud selleks, et suunata kell 5% kuni 10% või nii 784 00:40:37,010 --> 00:40:40,270 demograafiline kes tõepoolest nende seas mugavamaks ja tahaks rohkem 785 00:40:40,270 --> 00:40:43,960 väljakutset kui standard väljaande et pset ootab. 786 00:40:43,960 --> 00:40:46,390 Rohkem infot nende olla Leiti ainekava. 787 00:40:46,390 --> 00:40:49,430 >> Kuid ka seal võib leida üksikasju Kursuste kohta hilinenud päeva. 788 00:40:49,430 --> 00:40:51,570 Tavaliselt probleem seab on tingitud neljapäeviti. 789 00:40:51,570 --> 00:40:55,550 Siiski saab laiendada paljud oma tähtajad see kukkumine neljapäeviti kuni 790 00:40:55,550 --> 00:41:00,010 Reedeti lihtsalt täites meie poolel, niiöelda vastates mõned soojenduseks 791 00:41:00,010 --> 00:41:03,370 küsimusi mõned nädala probleem komplekti, mis automaatselt 792 00:41:03,370 --> 00:41:05,710 Seejärel annab sulle ekstra 24 tundi. 793 00:41:05,710 --> 00:41:09,120 Samuti kaotage madalaim tulemus, kui ühe ainekava. 794 00:41:09,120 --> 00:41:12,170 >> Et anda teile tunne, mis probleem kogumid - sest see on tõepoolest 795 00:41:12,170 --> 00:41:15,120 Muidugi probleem seab see lõpuks määratleda peaaegu iga 796 00:41:15,120 --> 00:41:18,760 õpilase kogemus, seda enam, kui loengud, seda enam, et kui osa, rohkem 797 00:41:18,760 --> 00:41:21,230 nii kui kõige muu aspekt muidugi. 798 00:41:21,230 --> 00:41:25,140 Eelmisel aastal näiteks alustasime, kui hakkame sel aastal Scratch. 799 00:41:25,140 --> 00:41:29,150 Eriti see reede, me kasutame, sest vaid üks päev aega, graafiline 800 00:41:29,150 --> 00:41:32,260 programmeerimiskeel, mille abil muudame programmeerimise alustamiseks tõmmates ja 801 00:41:32,260 --> 00:41:37,580 kukutades puzzle tükki, et ainult koguda füüsiliselt kui mõttekas 802 00:41:37,580 --> 00:41:38,990 seda loogiliselt. 803 00:41:38,990 --> 00:41:43,460 >> Järgmisel nädalal, me kiiresti üleminek C, üsna vana, kuid väga väike ja 804 00:41:43,460 --> 00:41:48,510 lihtsas keeles, mis võimaldab meil minda 0-60 jooksul 805 00:41:48,510 --> 00:41:52,290 vaid paar nädalat ja siis parlay need samad oskused ja teadmised 806 00:41:52,290 --> 00:41:56,160 põhiprogrammeerimist konstrueerib sisse kõrgema taseme keeltes nagu PHP, 807 00:41:56,160 --> 00:41:58,240 JavaScript ja veel teised ikka. 808 00:41:58,240 --> 00:42:02,560 >> Mullu kolmandas pset käigus oli see, et krüptograafia, 809 00:42:02,560 --> 00:42:06,380 valdkonnapõhised taotlus, mille me vaidlustas õpilased rakendada 810 00:42:06,380 --> 00:42:11,140 arvu ciphers, programmid, mille rüselus või lahti harutama info 811 00:42:11,140 --> 00:42:11,880 krüptimiseks. 812 00:42:11,880 --> 00:42:16,300 Sest häkker väljaanne seevastu andsime häkker õpilased fail 813 00:42:16,300 --> 00:42:19,900 alates standard Unix arvuti sisaldab kasutajanimed ja paroolid, 814 00:42:19,900 --> 00:42:22,740 millest viimane oli krüpteeritud ja me vaidlustas need häkker 815 00:42:22,740 --> 00:42:26,850 õpilased dekrüpteerida, nii hästi kui võiks, need paroolid veel, et 816 00:42:26,850 --> 00:42:27,770 sama domeeni. 817 00:42:27,770 --> 00:42:30,580 >> Rüselus, mäng, kus mõned teist on ehk tuttav. 818 00:42:30,580 --> 00:42:34,410 Kohtuekspertiisi tükk, kus me palume õpilased andmete taastamine, mis oli 819 00:42:34,410 --> 00:42:38,530 muidu kustutatakse mu enda digitaalse kaamera Compact Flash kaart, mida 820 00:42:38,530 --> 00:42:42,740 tegelikult kirjutamise tarkvara välja mõtlema, kus olid nulli ja omadega 821 00:42:42,740 --> 00:42:46,850 et digitaalne kaamera, mis varem koosseisus JPEG graafilise? 822 00:42:46,850 --> 00:42:49,710 >> Väljakutse kehvasti mullu hõlmab kirjalikult kiiremini 823 00:42:49,710 --> 00:42:53,160 õigekirja kontrollija võimaluse konkureerida vastu sõprade ja klassikaaslastega, kui 824 00:42:53,160 --> 00:42:53,860 nad tahaks. 825 00:42:53,860 --> 00:42:56,330 Rakendamine Huff 'n Puff, pakkimise programm. 826 00:42:56,330 --> 00:43:01,930 Ja siis lõpeb semester koos CS50 Finants, veebipõhine rakendus 827 00:43:01,930 --> 00:43:06,570 mis loote Etrade-like koduleheküljel osta ja müüa aktsiad, nii et 828 00:43:06,570 --> 00:43:09,860 räägi, mida tegelikult tõmbab ligi reaalajas hinnapakkumisi Yahoo! 829 00:43:09,860 --> 00:43:10,450 Rahastamisele. 830 00:43:10,450 --> 00:43:13,590 >> Mida me ei teinud eelmisel aastal üks probleem komplekt, mis jääb 831 00:43:13,590 --> 00:43:14,810 siiski lemmik. 832 00:43:14,810 --> 00:43:18,400 Kui olete kunagi läinud shuttle.cs50.net, näete kasutaja 833 00:43:18,400 --> 00:43:19,670 liides veidi niimoodi. 834 00:43:19,670 --> 00:43:23,530 Aga kaks aastat tagasi, klass rakendada, kasutades Google Maps ja 835 00:43:23,530 --> 00:43:28,570 Google Earth plug-in ja natuke Savvy koos sõidu ümber campus, 836 00:43:28,570 --> 00:43:33,290 nii et mängu eesmärgiks oli nagu näete mõned näod, 837 00:43:33,290 --> 00:43:37,530 on sõita ümber campus otsin töötajate ja õpetuse stipendiaatide ja CASi ja 838 00:43:37,530 --> 00:43:40,080 kui sa, pannes neid peale oma liinibuss. 839 00:43:40,080 --> 00:43:44,035 Ükski neist tegelikult tundub, et siin, nii me sisestada cheat koodi. 840 00:43:44,035 --> 00:43:47,150 >> [Naer] 841 00:43:47,150 --> 00:43:48,430 >> DAVID Malan: Vot nii. 842 00:43:48,430 --> 00:43:49,240 Hea küll. 843 00:43:49,240 --> 00:43:51,750 Ja nüüd siin on töötajad õmmeldud kogu campus. 844 00:43:51,750 --> 00:43:54,530 Ja nagu näete, on paremal pool ekraani, liinibuss 845 00:43:54,530 --> 00:43:55,510 on tühjad kohad. 846 00:43:55,510 --> 00:43:59,000 Ja eesmärk oli kirjutada kood, mille abil simuleerida seda 847 00:43:59,000 --> 00:44:01,790 sõidu ja pealevõtmine ja kukkumine off reisijat. 848 00:44:01,790 --> 00:44:04,960 See üks, liiga, kasutades keel kutsus JavaScript. 849 00:44:04,960 --> 00:44:10,030 Nii mõistad, et programmid nagu mis olema meie sama trajektoori see 850 00:44:10,030 --> 00:44:10,910 aastal, samuti. 851 00:44:10,910 --> 00:44:13,640 >> Seoses, nüüd, täiendava toetuse, meil tööajal. 852 00:44:13,640 --> 00:44:16,520 Nagu te olete näinud oma maja söögisaal või Annenberg, 853 00:44:16,520 --> 00:44:19,280 saadame majas söögituba saali neli ööd nädalas - 854 00:44:19,280 --> 00:44:24,450 Leverett, Pfoho, Eliot ja Annenberg Tänavu 20:00-23:00. 855 00:44:24,450 --> 00:44:26,830 Ja see, mida me arvasime me tahaks seda teha aasta on midagi veidi erinev. 856 00:44:26,830 --> 00:44:29,650 >> Kui olete kuulnud Margid eelmisel aastal, et see oli natuke liiga stressirohke, seda 857 00:44:29,650 --> 00:44:32,800 aasta tööajal, kui me kirjeldada Järgmisel nädalal on rohkem orgaanilisi 858 00:44:32,800 --> 00:44:36,900 mille saabumisel, siis saad lähetata ühes konkreetses tabelis 859 00:44:36,900 --> 00:44:39,860 Kui mitu töötajat ootama, ja me teeme asju palju rohkem 860 00:44:39,860 --> 00:44:40,440 orgaaniliselt. 861 00:44:40,440 --> 00:44:43,740 Enam järjekorda, mitte rohkem iPad, kuid pigem on intiimsem 862 00:44:43,740 --> 00:44:47,300 vestlused laua lihtsalt kaheksa või nii õpilastele, et me 863 00:44:47,300 --> 00:44:50,880 ligikaudne tunda, mida muidu oleks palju väiksem klass. 864 00:44:50,880 --> 00:44:54,120 >> Pakume, samuti on need asjad, mida me nimetatakse walkthroughs, videod filmitud 865 00:44:54,120 --> 00:44:57,330 eelnevalt kindlaks ühe kursuse õpetamine stipendiaatide Zamyla, kus ta 866 00:44:57,330 --> 00:45:00,690 te loeksite nädala probleem komplekti, mis pakuvad nõuandeid ja näpunäiteid 867 00:45:00,690 --> 00:45:02,640 ülesannetega toimetulekuks ette. 868 00:45:02,640 --> 00:45:06,230 Ja vastupidi, pärast probleem kogumid sest sel aastal me ka vabastama 869 00:45:06,230 --> 00:45:09,100 vähe klippe helistada lahkamisi et tegelikult sõelub 870 00:45:09,100 --> 00:45:13,630 esindaja lahendusi, nii hea ja halb, mille kaudu saab järeldada, kuidas 871 00:45:13,630 --> 00:45:17,550 teil võiks olla või peaks olema rakendada oma lahendus. 872 00:45:17,550 --> 00:45:20,500 >> Ja mida me pakkuda esmakordselt ka sel aastal, eriti 873 00:45:20,500 --> 00:45:23,420 nendele üliõpilastele, kes kasutavad muidugi teised 874 00:45:23,420 --> 00:45:28,580 ressursse, kuid sellest hoolimata on hädas liiga palju, muidugi 875 00:45:28,580 --> 00:45:33,030 ise siduda need üliõpilaste ressursid lubavad, juhendajaid, et 876 00:45:33,030 --> 00:45:35,840 sul on palju intiimsem võimalust kui maja söögisaali 877 00:45:35,840 --> 00:45:38,700 võimaldab üks-üks toetus. 878 00:45:38,700 --> 00:45:42,780 >> Nüüd viimane pilguheit mõned aasta lõpu mängud silmapiiril. 879 00:45:42,780 --> 00:45:44,580 Sul võib olla tuttav CS50 hackathon. 880 00:45:44,580 --> 00:45:48,120 Noh, tulevad selle aasta detsembris, alates 08:00 PM to 07:00, alguses 881 00:45:48,120 --> 00:45:51,410 Lugemine perioodile, annab võimaluse koguda koos klassikaaslastega - 882 00:45:51,410 --> 00:45:53,130 see oleks umbes 21:00 - 883 00:45:53,130 --> 00:45:56,550 mille jooksul sa sukelduda oma lõpliku Projekti rakendamise kõrval 884 00:45:56,550 --> 00:45:59,910 klassikaaslased, sõbrad, ja toit. 885 00:45:59,910 --> 00:46:03,680 See oleks umbes 01:00, kui Esimene partii toit saabus. 886 00:46:03,680 --> 00:46:08,470 Ja see on umbes 04:00, et eriti aasta CS50 hackathon. 887 00:46:08,470 --> 00:46:12,000 >> Aga tõsi haripunkt on muidugi mõeldud CS50 Fair, ülikoolilinnak hõlmav 888 00:46:12,000 --> 00:46:15,790 näitus oma lõpliku projekti, et mis pere ja sõbrad on kõik 889 00:46:15,790 --> 00:46:18,730 kutsutud, sest meie värbajad ja meie sõbrad tööstus. 890 00:46:18,730 --> 00:46:22,170 See näiteks on pilguheit 2000-pluss inimesed, kes olen käinud 891 00:46:22,170 --> 00:46:23,160 viimastel aastatel. 892 00:46:23,160 --> 00:46:27,180 Väljendid see ei ole ebatavaline, ja samamoodi ei oma 893 00:46:27,180 --> 00:46:29,660 klassikaaslastega rõõmu asjad olete saavutanud. 894 00:46:29,660 --> 00:46:33,170 >> Ja tegelikult, suunas, et lõpuks on meil start-of perspektiivis juhul samuti. 895 00:46:33,170 --> 00:46:37,400 Kui asjad niimoodi üleskutse teile, või sa oled vähemalt uudishimulik, mida 896 00:46:37,400 --> 00:46:41,590 seda tean, et uus traditsioon Loomulikult on nn CS50 Puzzle Day. 897 00:46:41,590 --> 00:46:45,710 Ja see on asutatud paar aastat tagasi tõesti signaali campus 898 00:46:45,710 --> 00:46:48,930 et infotehnoloogia ei räägi programmeerimine, ja see kindlasti ei ole 899 00:46:48,930 --> 00:46:51,960 umbes omaks ainult need üliõpilased kellel on eelnev kogemus. 900 00:46:51,960 --> 00:46:54,200 See on tõesti umbes probleemilahendamise üldisemalt. 901 00:46:54,200 --> 00:46:57,360 >> Ja nii Puzzle Day, viimastel aastat, on kujunenud kena 902 00:46:57,360 --> 00:47:00,500 koostöös meie sõpradega Facebook, kusjuures seal saad vapustav 903 00:47:00,500 --> 00:47:04,830 Auhinnad ja pitsa üle jõe juures i-lab tuleval laupäeval. 904 00:47:04,830 --> 00:47:09,180 Head, et URL on kaks või kolm sõbrad, kui soovid osa saada 905 00:47:09,180 --> 00:47:10,830 see uus traditsioon. 906 00:47:10,830 --> 00:47:14,180 >> Nii et ma tahaksin paluda, et te ei hoia üks asi meeles, ja meil on lihtsalt 907 00:47:14,180 --> 00:47:17,070 kahe minuti klipp mis sulgeda täna. 908 00:47:17,070 --> 00:47:19,640 73% on number meeles. 909 00:47:19,640 --> 00:47:23,900 Cake Ka ootame teid väljaspool seda TRANSEPT kui me edasi lükata vaid 910 00:47:23,900 --> 00:47:26,710 paar hetki, mis on traditsioon muidugi, kui hästi. 911 00:47:26,710 --> 00:47:29,860 Aga see on võti tsitaat kursuse ainekava meeles pidada. 912 00:47:29,860 --> 00:47:32,820 Kõige tähtsam on see muidugi ei ole nii palju, kui sa lõpuks 913 00:47:32,820 --> 00:47:36,580 võrreldes oma klassikaaslastega, kuid kus te, 12. nädalal, lõpuks võrreldes 914 00:47:36,580 --> 00:47:37,960 ennast nädal 0. 915 00:47:37,960 --> 00:47:43,670 >> Aga pilguheit et me ei jäta teid koos siin täna on see viimane siin 916 00:47:43,670 --> 00:47:47,580 Meie sama Daniel, kes tegid wrdly video hetk tagasi. 917 00:47:47,580 --> 00:47:50,000 Ma jätan teid selle pilguheit mis ees ootab. 918 00:47:50,000 --> 00:47:53,360 Ja kui me seda teeme, kui meil oleks CS50 töötajate ees tuba 919 00:47:53,360 --> 00:47:57,280 tulema etapini maalida kõik rohkem visuaalne pilt, et 920 00:47:57,280 --> 00:47:59,100 Mis ootab sind sel aastal - 921 00:47:59,100 --> 00:48:00,350 saada ebamugav. 922 00:48:00,350 --> 00:48:02,200 923 00:48:02,200 --> 00:48:05,188 Me sõlmida käesoleva siin ekraanil. 924 00:48:05,188 --> 00:48:18,634 >> [Muusika mängib] 925 00:48:18,634 --> 00:48:21,124 >> DAVID Malan: See on CS50. 926 00:48:21,124 --> 00:50:00,226 >> [MUSIC - MATT & Kim "Pole midagi"] 927 00:50:00,226 --> 00:50:03,245 >> SPEAKER 1: Ma armastan CS50 üle kassidele. 928 00:50:03,245 --> 00:50:06,030 >> SPEAKER 2: Whoaaaa! 929 00:50:06,030 --> 00:50:06,990 >> [Naer] 930 00:50:06,990 --> 00:50:08,140 >> DAVID Malan: See on siis CS50. 931 00:50:08,140 --> 00:50:10,050 Me näeme reedel. 932 00:50:10,050 --> 00:50:13,370 >> [APLAUS JA cheering] 933 00:50:13,370 --> 00:50:17,540 >> Jutustaja: Järgmisel CS50, laval demo ei lähe plaanipäraselt. 934 00:50:17,540 --> 00:50:19,080 >> DAVID Malan: me tahame leida Mike Smith selles telefoniraamat. 935 00:50:19,080 --> 00:50:20,380 Noh, mis on oma instinkte? 936 00:50:20,380 --> 00:50:23,750 Ma võin hüpata umbkaudu keskel telefoniraamatust pilgu alla, näen, et 937 00:50:23,750 --> 00:50:26,830 Ma olen M, ja ma tean, et Mike Smith ei vasakule. 938 00:50:26,830 --> 00:50:27,840 Ta peab olema õige. 939 00:50:27,840 --> 00:50:30,515 Ja et selles kohas, me võib sõna otseses mõttes pisar - 940 00:50:30,515 --> 00:50:33,300 Sel hetkel, saame sõna otseses mõttes pisar - 941 00:50:33,300 --> 00:50:36,490 Siinkohal saame piltlikult pisar telefoniraamatust pooleks. 942 00:50:36,490 --> 00:50:38,954 >> [Ukelele strumming]