1 00:00:00,000 --> 00:00:08,090 2 00:00:08,090 --> 00:00:09,810 >> JASON Hirsch: Welkom, almal, tot week 10. 3 00:00:09,810 --> 00:00:15,130 Dit is 'n opwindende week, want môre is Quiz 1, wat ons sal kry 4 00:00:15,130 --> 00:00:16,400 om in 'n tweede. 5 00:00:16,400 --> 00:00:21,770 Vandag in artikel gaan ons om te gaan oor 'n paar hulpbronne vir die toets, en 6 00:00:21,770 --> 00:00:24,890 dan sal ek enige en alle beantwoord vrae wat jy ouens het. 7 00:00:24,890 --> 00:00:27,880 En ons sal uiteindelik eindig met 'n praktyk probleme. 8 00:00:27,880 --> 00:00:30,940 >> Ons kan die hele gedeelte te spandeer vrae te beantwoord. 9 00:00:30,940 --> 00:00:33,240 Ons kan die hele gedeelte te spandeer gaan oor die praktyk probleme. 10 00:00:33,240 --> 00:00:36,890 Ons sal net uit te brei om te vul die ruimte en tyd wat ons het. 11 00:00:36,890 --> 00:00:40,590 >> Dus het ek hierdie lys word elke week, maar dit is veral belangrik om hierdie week. 12 00:00:40,590 --> 00:00:44,980 Vir die studie, as jy nie het nie begin reeds, o seun. 13 00:00:44,980 --> 00:00:46,400 Maar hopelik het jy al begin. 14 00:00:46,400 --> 00:00:50,710 En jy gaan deur die materiaal en hulpbronne word hier gelys. 15 00:00:50,710 --> 00:00:54,300 Ek sou raai 'n aantal van hierdie. 16 00:00:54,300 --> 00:00:58,780 >> In die besonder, lesing notas is ongelooflik belangrik en nuttig. 17 00:00:58,780 --> 00:01:02,880 Die study.cs50.net bied 'n groot primer op 'n baie 18 00:01:02,880 --> 00:01:04,250 die onderwerpe wat ons gedek. 19 00:01:04,250 --> 00:01:07,810 Dit het ook 'n paar groot oefen probleme. 20 00:01:07,810 --> 00:01:11,260 En dan, Google is groot, ook. 21 00:01:11,260 --> 00:01:12,360 Ek weet nie wat jy dit wil gebruik vir. 22 00:01:12,360 --> 00:01:14,090 Maar die gebruik van Google, as well. 23 00:01:14,090 --> 00:01:16,680 >> Reik uit na my as jy enige vrae, kommentaar of bekommernisse. 24 00:01:16,680 --> 00:01:19,420 Kyk oor die hersiening sessie skyfies uit die vorige nag. 25 00:01:19,420 --> 00:01:21,540 Of, as jy 'n geruime tyd, kyk na die video. 26 00:01:21,540 --> 00:01:24,930 Hulle bied 'n baie nuttige materiaal en inligting. 27 00:01:24,930 --> 00:01:29,730 En probeer en bedek indien nie alle, baie van Die onderwerpe wat ons gedek is en dat jy 28 00:01:29,730 --> 00:01:32,610 kan sien op die quiz. 29 00:01:32,610 --> 00:01:35,590 >> Praat van die toets, wat more gaan wees. 30 00:01:35,590 --> 00:01:37,260 Dit is 75 minute lank. 31 00:01:37,260 --> 00:01:40,740 Baie van julle neem dit op 1 uur, en 'n paar van julle 32 00:01:40,740 --> 00:01:42,740 neem dit om 5:30. 33 00:01:42,740 --> 00:01:45,300 Vir die tyd wat jy neem dit en die plek wat jy neem dit, maak seker 34 00:01:45,300 --> 00:01:49,400 jy check die dokument op die CS50.net tuisblad. 35 00:01:49,400 --> 00:01:54,340 >> Onthou wat jy kan kry 'n 8 1/2 met 11 vel te neem met jou. 36 00:01:54,340 --> 00:01:57,310 Dikwels mense gebruik dit nie blad op alle tydens die toets. 37 00:01:57,310 --> 00:01:59,740 Maar regtig, dit is 'n ongelooflike nuttige studie hulpmiddel. 38 00:01:59,740 --> 00:02:04,370 So om saam dat vel is wat Ek het waarskynlik drie of vier uur 39 00:02:04,370 --> 00:02:07,110 doen wanneer ek studeer vir CS50, en Dit was maklik om die mees nuttige 40 00:02:07,110 --> 00:02:08,740 manier wat ek kon leer vir die toets. 41 00:02:08,740 --> 00:02:10,949 So selfs as jy 'n paar ander mense se studiegidse om te kyk na en 42 00:02:10,949 --> 00:02:14,740 gebruik as verwysings, ek raai maak jou eie studiegids, om 43 00:02:14,740 --> 00:02:15,490 daardie dinge saam. 44 00:02:15,490 --> 00:02:17,335 Wat regtig help om te leer al van die materiaal. 45 00:02:17,335 --> 00:02:20,270 46 00:02:20,270 --> 00:02:24,810 >> Laaste maar nie die minste nie in hierdie artikel, ná die toets môre daar is een 47 00:02:24,810 --> 00:02:25,940 meer lesing - 48 00:02:25,940 --> 00:02:26,960 volgende Maandag. 49 00:02:26,960 --> 00:02:30,430 Daar is nog 'n artikel, nie die volgende Dinsdag voor Thanksgiving, maar die 50 00:02:30,430 --> 00:02:31,630 Dinsdag daarna. 51 00:02:31,630 --> 00:02:36,600 Ons sal saam vergader vir 'n finale totsiens party en ook besig met 'n paar koel 52 00:02:36,600 --> 00:02:41,530 dinge te kry wat jy ouens opgewonde oor verdere studies in Rekenaarwetenskap. 53 00:02:41,530 --> 00:02:45,040 >> Daar is nog 'n projek, 'n meer regverdig, een hackathon. 54 00:02:45,040 --> 00:02:47,900 Ons is naby aan die einde van die CS50, wat is opwindend - 55 00:02:47,900 --> 00:02:50,950 maar ook, as jy soos my 'n bietjie hartseer. 56 00:02:50,950 --> 00:02:53,950 Voordat ek beweeg, nie almal het enige vrae oor wat 57 00:02:53,950 --> 00:02:55,200 wat ons tot dusver gedek? 58 00:02:55,200 --> 00:03:02,760 59 00:03:02,760 --> 00:03:08,730 >> OK, goed laat gaan oor 'n paar vrae wat jy vir die toets en onderwerpe 60 00:03:08,730 --> 00:03:09,960 ons kan dek. 61 00:03:09,960 --> 00:03:11,540 So dit is 'n lys wat ek saam. 62 00:03:11,540 --> 00:03:15,500 Dit is geensins volledig nie, maar hopelik sal jou geheue draf as jy 63 00:03:15,500 --> 00:03:20,310 het 'n paar vrae oor enige van hierdie onderwerpe, of as jy vrae het oor 64 00:03:20,310 --> 00:03:23,260 praktyk probleme uit vasvrae in die afgelope jaar. 65 00:03:23,260 --> 00:03:27,470 >> Ek het 'n paar vrae wat per e-pos aan my, maar ek wil om af te hou 66 00:03:27,470 --> 00:03:29,490 op dié vir 'n tweede. 67 00:03:29,490 --> 00:03:34,570 Het enige iemand enige vrae het, probleme wat hulle nie verstaan ​​het nie, 68 00:03:34,570 --> 00:03:38,100 antwoorde wat hulle nie verstaan ​​het nie ons begin om te kry? 69 00:03:38,100 --> 00:03:39,520 Avi. 70 00:03:39,520 --> 00:03:41,585 >> Publiek: Kan jy net gaan oor DOM en Ajax regtig vinnig? 71 00:03:41,585 --> 00:03:46,540 Soos wat ons nodig het om te weet, of indien verstaan ​​oor hulle? 72 00:03:46,540 --> 00:03:49,750 >> JASON Hirsch: Ek gaan om te antwoord algemeen hierdie vraag, wat doen ek 73 00:03:49,750 --> 00:03:52,100 nodig het om te weet oor die gegewe onderwerp x? 74 00:03:52,100 --> 00:03:55,280 Want ek het 'n gevoel dat baie van julle gaan my vra wat nie, of 75 00:03:55,280 --> 00:03:56,570 nuuskierig oor dat. 76 00:03:56,570 --> 00:04:02,920 So in die mate dat die onderwerp was gedek in lesing, of artikel, of op 77 00:04:02,920 --> 00:04:06,460 study.cs50.net, 'n probleem, het julle moet vertroud wees met dit. 78 00:04:06,460 --> 00:04:10,580 >> So jy hoef nie elke tipe om te weet tag wat beskikbaar is in HTML of 79 00:04:10,580 --> 00:04:15,950 elke tipe kenmerk of eiendom jy iets kan gee in CSS. 80 00:04:15,950 --> 00:04:20,204 Maar as jy dit gesien het in 'n lesing byvoorbeeld As jy het dit gesien in 'n probleem 81 00:04:20,204 --> 00:04:23,290 stel, moet jy waarskynlik vertroud wees met dit, veral die dinge wat jy gesien het 82 00:04:23,290 --> 00:04:24,260 in lesing. 83 00:04:24,260 --> 00:04:28,510 So het ons gepraat oor die dokument beswaar model 'n bietjie in 84 00:04:28,510 --> 00:04:30,530 artikel, meer so in lesing. 85 00:04:30,530 --> 00:04:32,990 Jy moet vertroud wees met dat baie van dit. 86 00:04:32,990 --> 00:04:34,750 >> En jy moet vertroud wees met Ajax in dieselfde mate. 87 00:04:34,750 --> 00:04:38,105 Ons het nooit ongelooflik gevorderde of sien ingewikkelde voorbeelde van Ajax, so 88 00:04:38,105 --> 00:04:40,920 jy gaan nie gevra word om te doen iets ongelooflik ingewikkeld. 89 00:04:40,920 --> 00:04:45,180 Maar jy kan gevra word, hoe kan ek Maak 'n Ajax oproep met behulp van jQuery? 90 00:04:45,180 --> 00:04:47,350 Dit is iets wat jy gesien het 'n aantal keer voor, beide in die 91 00:04:47,350 --> 00:04:51,370 hersien sessie en in lesing, en dit is net 'n twee-ish reëls van die kode. 92 00:04:51,370 --> 00:04:53,190 >> So dit is iets wat jy moet vertroud te wees met. 93 00:04:53,190 --> 00:04:55,550 Maar weereens, vir al die onderwerpe, as jy dit gesien het 94 00:04:55,550 --> 00:04:59,220 voor, dit is fair game. 95 00:04:59,220 --> 00:05:01,540 En ons mag vra - natuurlik, ons is gaan jy dinge wat jy vra 96 00:05:01,540 --> 00:05:02,340 nie gesien het nie. 97 00:05:02,340 --> 00:05:04,240 Kodering iets wat jy nie het nie gesien het nie. 98 00:05:04,240 --> 00:05:06,570 Dit is nie te sê jy het nie gesien die gereedskap op te los 99 00:05:06,570 --> 00:05:08,120 dat die probleem voor. 100 00:05:08,120 --> 00:05:09,200 Jy het gesien die instrumente. 101 00:05:09,200 --> 00:05:11,160 >> Byvoorbeeld, op Quiz 1, indien wat jy nodig het om te StrLen kode. 102 00:05:11,160 --> 00:05:12,790 Ons het nie voor gekodeerde StrLen. 103 00:05:12,790 --> 00:05:14,980 Maar jy weet hoe om 'n te gebruik vir lus, jy weet hoe om te gebruik as die omstandighede. 104 00:05:14,980 --> 00:05:18,570 Jy weet hoe om veranderlikes in C. te skryf Dit gaan dieselfde ding hier te wees. 105 00:05:18,570 --> 00:05:22,350 Jy gaan nie gevra word om te doen enigiets wat jy nie gesien het nie, maar 106 00:05:22,350 --> 00:05:25,150 jy kan gevra word om, soos, sit iets saam in 'n nuwe manier, of 107 00:05:25,150 --> 00:05:27,650 los 'n ander soort probleem. 108 00:05:27,650 --> 00:05:30,830 >> Jammer, dit was nie spesifiek vir jou vraag, maar ek kan nie antwoord oor 109 00:05:30,830 --> 00:05:34,390 elke enkele onderwerp wat jy doen of nie nodig om te weet. 110 00:05:34,390 --> 00:05:36,830 Maar ook, jammer, laaste ding wat op daardie. 111 00:05:36,830 --> 00:05:42,900 Ons het aansienlik meer tyd bestee op die skakel lyste as ons op Ajax. 112 00:05:42,900 --> 00:05:46,160 Jy het nie Ajax gebruik in 'n probleem stel. 113 00:05:46,160 --> 00:05:48,510 Een van die sentrale kenmerke van daardie probleem stel wat skakel lyste. 114 00:05:48,510 --> 00:05:50,370 En ons het 'n baie tyd in lesing en artikel om dit te gebruik. 115 00:05:50,370 --> 00:05:57,080 >> So, is die kans skakel lys sal meer kom dikwels op die quiz as Ajax wil. 116 00:05:57,080 --> 00:06:00,390 Of die vrae wat te doen het met 'n skakel lys sal die moeite werd meer punte wees. 117 00:06:00,390 --> 00:06:03,520 So kan jy seker fokus en smal in die dinge wat meer 118 00:06:03,520 --> 00:06:06,720 geneig om te kom, want ons het spandeer meer tyd op hulle. 119 00:06:06,720 --> 00:06:08,700 >> OK enige ander vrae? 120 00:06:08,700 --> 00:06:09,890 Ja. 121 00:06:09,890 --> 00:06:13,660 >> Publiek: Kan ons gaan oor die gebruik van anonieme funksies in JavaScript? 122 00:06:13,660 --> 00:06:17,140 Ek is 'n bietjie verward is daaroor. 123 00:06:17,140 --> 00:06:20,180 >> JASON Hirsch: So in JavaScript - 124 00:06:20,180 --> 00:06:24,400 Ek probeer om te dink hoe ek dit kan skryf oor - 125 00:06:24,400 --> 00:06:27,590 so laat ons eintlik oop hierdie kode. 126 00:06:27,590 --> 00:06:31,830 127 00:06:31,830 --> 00:06:36,030 So dit is die kode wat ons gedoen het die afgelope week. 128 00:06:36,030 --> 00:06:41,400 En jy het dit voor gesien as jy was hier in artikel verlede week. 129 00:06:41,400 --> 00:06:43,180 Of jy iets gesien soortgelyk aan hierdie voor. 130 00:06:43,180 --> 00:06:44,800 >> Maar jy kan kyk na die eerste lyn. 131 00:06:44,800 --> 00:06:46,950 Dit is hoe jy begin - 132 00:06:46,950 --> 00:06:48,010 almal is dit gesien het. 133 00:06:48,010 --> 00:06:51,930 As jy wil 'n paar JavaScript-kode om te sit, jy sit dit binne-in hierdie, met die veronderstelling 134 00:06:51,930 --> 00:06:53,520 jy gebruik JQuery. 135 00:06:53,520 --> 00:06:56,940 Dit word gesê, niks doen nie totdat die dokument gelaai. 136 00:06:56,940 --> 00:06:59,940 >> En dan, Curt, jy sien reg hier ons doen iets soos hierdie - 137 00:06:59,940 --> 00:07:02,560 funksie oop paren, gesluit hakie. 138 00:07:02,560 --> 00:07:05,250 So ons is nie gee hierdie funksioneer 'n naam. 139 00:07:05,250 --> 00:07:09,160 Ons is nie van plan om hierdie funksie te definieer veronderstel is om te hardloop en dan 140 00:07:09,160 --> 00:07:10,830 noem dit 'n klomp van die tye. 141 00:07:10,830 --> 00:07:15,140 Ons is net sê hierdie dokument neem reeds 'n funksie. 142 00:07:15,140 --> 00:07:16,690 'N Paar van die dinge te doen. 143 00:07:16,690 --> 00:07:20,670 >> En ons wil nie die tyd te spandeer gee dit 'n naam of stoor dit vir 144 00:07:20,670 --> 00:07:21,650 altyd. 145 00:07:21,650 --> 00:07:24,150 Ons wil net 'n paar dinge uit te voer. 146 00:07:24,150 --> 00:07:27,500 So 'n anonieme funksie soort van dien dat die doel. 147 00:07:27,500 --> 00:07:30,280 Wanneer jy nie gaan om iets te gebruik oor en oor weer, so jy hoef nie 148 00:07:30,280 --> 00:07:32,420 gee dit 'n naam - jy net dit wil keer gebruik - 149 00:07:32,420 --> 00:07:36,720 jy wil net sê funksie, Byvoorbeeld, in hierdie geval, en jy net 150 00:07:36,720 --> 00:07:38,280 definieer iets wat jy kan 'n naam gee. 151 00:07:38,280 --> 00:07:40,920 >> Soos ons kan hierdie funksie te trek en gee dit 'n naam en dan noem 152 00:07:40,920 --> 00:07:41,760 funksioneer hier. 153 00:07:41,760 --> 00:07:44,270 Maar ons hoef nie te omdat ons dit nie doen nie wil tyd te mors om dit 'n naam of 154 00:07:44,270 --> 00:07:46,240 iets mors in ons naam ruimte. 155 00:07:46,240 --> 00:07:47,530 En jy sal sien dat 'n lot. 156 00:07:47,530 --> 00:07:52,810 Byvoorbeeld, ons sien dat 'n lot in hierdie kode, maar jy het dit gesien voor wanneer 157 00:07:52,810 --> 00:07:54,010 jy iets op - 158 00:07:54,010 --> 00:07:55,980 hardloop hierdie tipe van die kode. 159 00:07:55,980 --> 00:07:59,850 >> Ons kon die kode wat ons wil definieer uit te voer wanneer ons kliek, in hierdie geval, 160 00:07:59,850 --> 00:08:03,450 hierdie ID, as 'n afsonderlike funksie en dan loop daardie funksie. 161 00:08:03,450 --> 00:08:07,940 Maar in hierdie geval, ons is maar net die draai wat stap en beweeg dit in hier en 162 00:08:07,940 --> 00:08:10,340 net om te definieer alles wat ons wil hê om te gebeur en 163 00:08:10,340 --> 00:08:12,450 nie gee dit 'n naam. 164 00:08:12,450 --> 00:08:15,550 Wat nog nie kan hê jou vraag beantwoord. 165 00:08:15,550 --> 00:08:15,960 >> Publiek: Nee, dit doen nie. 166 00:08:15,960 --> 00:08:18,290 Ek bedoel, ek dink ek het net nie regtig Hoekom is dit 'n sou wees 167 00:08:18,290 --> 00:08:20,800 funksioneer nie, al is. 168 00:08:20,800 --> 00:08:21,590 Want dit is nie regtig genoem word. 169 00:08:21,590 --> 00:08:23,170 Dit maak nie regtig 'n naam. 170 00:08:23,170 --> 00:08:25,510 >> JASON Hirsch: Dit is 'n funksie in die sin dat dit is 'n reeks stappe, 171 00:08:25,510 --> 00:08:28,460 soos jy sou sit in 'n funksie. 172 00:08:28,460 --> 00:08:29,970 En dan dit is hoekom ons 'n beroep dit anoniem funksie. 173 00:08:29,970 --> 00:08:30,815 Ons is nie van plan om dit 'n naam te gee. 174 00:08:30,815 --> 00:08:33,159 Ons gaan nie probeer om te mors om dit te noem nie, maar ons kon. 175 00:08:33,159 --> 00:08:34,890 >> Anonymous funksies, jy kan altyd 'n naam gee. 176 00:08:34,890 --> 00:08:37,620 So byvoorbeeld, die kode hier, Ons kan hierdie kode sit in 'n 177 00:08:37,620 --> 00:08:39,929 funksie en dan bel hierdie funksie hier. 178 00:08:39,929 --> 00:08:41,600 In plaas daarvan, sê ons, ons gaan nie te pla met dit. 179 00:08:41,600 --> 00:08:44,390 Ons is net gaan om te skryf dit alles hier. 180 00:08:44,390 --> 00:08:49,840 >> Dit is soos soms wanneer jy skryf 'n vier-lus in C - julle ouens 181 00:08:49,840 --> 00:08:51,630 hierdie gesien voor - dalk is jy iterating deur 'n forloop 182 00:08:51,630 --> 00:08:53,090 in i gelyk aan 0. 183 00:08:53,090 --> 00:08:54,830 Ek is minder as StrLen. 184 00:08:54,830 --> 00:08:59,520 Of jy gaan deur 'n paar skikking, kan jy skikking red 185 00:08:59,520 --> 00:09:01,580 indeks i in sommige veranderlike. 186 00:09:01,580 --> 00:09:02,830 En jy daardie veranderlike. 187 00:09:02,830 --> 00:09:06,550 So jy hoef nie skikking te herskryf bracket ek oor en oor en oor. 188 00:09:06,550 --> 00:09:08,160 >> En dit is soort van soos 'n dummy veranderlike. 189 00:09:08,160 --> 00:09:10,790 Dit is nie die bediening van baie ander doel as jou kode 'n bietjie skoner te maak 190 00:09:10,790 --> 00:09:12,120 en makliker om te lees. 191 00:09:12,120 --> 00:09:13,290 Soortgelyke funksie hier. 192 00:09:13,290 --> 00:09:15,665 Net maak dit 'n bietjie makliker te maak, maar funksioneel is daar geen verskil nie. 193 00:09:15,665 --> 00:09:18,620 194 00:09:18,620 --> 00:09:19,330 Maak dit jou vraag? 195 00:09:19,330 --> 00:09:19,970 >> Gehoor: Ja. 196 00:09:19,970 --> 00:09:20,720 >> JASON Hirsch: OK .. 197 00:09:20,720 --> 00:09:21,880 Mario? 198 00:09:21,880 --> 00:09:25,380 >> Publiek: Gister het hulle dikwels sit funksie hakies gebeurtenis. 199 00:09:25,380 --> 00:09:26,420 Is dit iets beteken? 200 00:09:26,420 --> 00:09:30,500 Of is dit vir dinge soos dat hulle sal doen 201 00:09:30,500 --> 00:09:35,100 document.ready funksie gebeurtenis. 202 00:09:35,100 --> 00:09:37,130 >> JASON Hirsch: Ons het dit gesien, en weer, dit is kleiner dinge wat 203 00:09:37,130 --> 00:09:39,590 waarskynlik Ek wil nie spandeer te veel tyd op. 204 00:09:39,590 --> 00:09:43,200 Want soms wil ek nie mense raak baie bang dat hulle nie 205 00:09:43,200 --> 00:09:44,220 dat daar nog baie gehoor oor hierdie dinge. 206 00:09:44,220 --> 00:09:46,200 Maar ons gepraat het 'n bietjie oor event handlers. 207 00:09:46,200 --> 00:09:50,360 So iets gebeur, en dan hierdie funksie uitgevoer word. 208 00:09:50,360 --> 00:09:53,210 En dan moet ons ook wil weet 'n paar besonderhede oor wat 209 00:09:53,210 --> 00:09:54,450 gebeur in hierdie geval. 210 00:09:54,450 --> 00:09:55,730 >> So dink terug aan die probleem stel 4. 211 00:09:55,730 --> 00:09:58,390 Dit is waarskynlik die maklikste manier om te verstaan ​​dat in breek uit. 212 00:09:58,390 --> 00:09:59,740 Daar was 'n paar kode - 213 00:09:59,740 --> 00:10:01,980 soos 'n geval sou gebeur nie, maar gebeurtenis kan beteken baie dinge. 214 00:10:01,980 --> 00:10:06,240 As kan beteken dat die muis gekliek word, is dit kan beteken jy getref 'n pyl sleutel, et 215 00:10:06,240 --> 00:10:07,190 ensovoorts, ensovoorts. 216 00:10:07,190 --> 00:10:09,800 >> Maar dit is alles gered in hierdie generiese ding genaamd gebeure. 217 00:10:09,800 --> 00:10:12,340 En dan kan ons sê, is hierdie gebeurtenis hierdie ding? 218 00:10:12,340 --> 00:10:13,640 Of is hierdie gebeurtenis hierdie ding? 219 00:10:13,640 --> 00:10:15,500 Of watter soort van gebeur met so 'n geval? 220 00:10:15,500 --> 00:10:18,660 So dit is waarom jy skep dat veranderlike daar daardie ekstra inligting te red 221 00:10:18,660 --> 00:10:21,420 oor wat presies gebeur het wat jy gaan om te wil 222 00:10:21,420 --> 00:10:24,840 gebruik in die funksie. 223 00:10:24,840 --> 00:10:28,200 Maar weereens, dit is waarskynlik een van die minder belangrike dinge te wees super 224 00:10:28,200 --> 00:10:29,450 vertroud is met. 225 00:10:29,450 --> 00:10:31,470 226 00:10:31,470 --> 00:10:36,110 >> OK, watter ander vrae het mense het, of struikelblokke wat hulle het 227 00:10:36,110 --> 00:10:37,360 teëgekom terwyl die hersiening? 228 00:10:37,360 --> 00:10:41,260 229 00:10:41,260 --> 00:10:42,510 Ons sal terug na die lys. 230 00:10:42,510 --> 00:10:52,550 231 00:10:52,550 --> 00:10:56,080 Wat van in die praktyk vasvrae, indien mense het reeds dié? 232 00:10:56,080 --> 00:10:59,110 Wat was 'n paar probleme wat geskakel julle nie? 233 00:10:59,110 --> 00:11:08,970 234 00:11:08,970 --> 00:11:12,720 Ek weet vir 'n feit dat verlede jaar se quiz was werklik moeilik. 235 00:11:12,720 --> 00:11:15,670 >> Publiek: Kan jy verduidelik wat 'n SQL-inspuiting aanval is? 236 00:11:15,670 --> 00:11:18,970 >> JASON Hirsch: OK, groot. 237 00:11:18,970 --> 00:11:20,440 So het ons gepraat oor dit 'n bietjie. 238 00:11:20,440 --> 00:11:22,050 Daar is 'n lesing oor die veiligheid. 239 00:11:22,050 --> 00:11:25,670 En weer, soos ek vroeër genoem het, dit is 'n eenkant. 240 00:11:25,670 --> 00:11:30,010 Maar jy sal gefrustreerd word op die toets wanneer jy lees 'n paar klein twee punt 241 00:11:30,010 --> 00:11:33,040 vraag, en jy is soos wanneer het ek ooit leer dat? 242 00:11:33,040 --> 00:11:35,560 >> Al hierdie dinge in die lesings dat jy nie dink dat jy nodig het om te 243 00:11:35,560 --> 00:11:38,290 weet, of jy kan die glans oor, want hulle het nie te doen met die 244 00:11:38,290 --> 00:11:41,860 probleem stel, wat sal waarskynlik kom weer op die quiz. 245 00:11:41,860 --> 00:11:45,030 So, koel, pret dinge wat jy net gedink David vertel vir jou 246 00:11:45,030 --> 00:11:49,070 geniet, is hy vertel jy vir jou geniet en te sorg dat jy net super wees 247 00:11:49,070 --> 00:11:50,550 opgewonde oor die leer van alles daar is om te leer 248 00:11:50,550 --> 00:11:51,670 oor die rekenaar wetenskap. 249 00:11:51,670 --> 00:11:53,680 Daardie dinge ook op vasvrae kom. 250 00:11:53,680 --> 00:11:56,440 So, selfs hierdie klein dinge wat nie direk verband hou met jou probleem 251 00:11:56,440 --> 00:11:59,630 stel, as julle vertroud is met uit Quiz 0, sal waarskynlik kom. 252 00:11:59,630 --> 00:12:01,530 En dit is 'n goeie voorbeeld van iets. 253 00:12:01,530 --> 00:12:10,140 >> So 'n SQL-inspuiting aanvalle is wanneer jy kry 'n paar inligting van die gebruiker en 254 00:12:10,140 --> 00:12:15,090 jy wil om dit te plaas in 'n tabel gebruik 'n SQL insetsel verklaring, maar jy 255 00:12:15,090 --> 00:12:17,680 het nie die insette ontsmet voor die tyd. 256 00:12:17,680 --> 00:12:21,560 So, natuurlik het ons gesien SQL stellings. 257 00:12:21,560 --> 00:12:22,810 Ek sal net oop - 258 00:12:22,810 --> 00:12:25,590 259 00:12:25,590 --> 00:12:26,840 laat ons gaan - 260 00:12:26,840 --> 00:12:31,290 261 00:12:31,290 --> 00:12:31,960 ons sal gaan na die hersiening - 262 00:12:31,960 --> 00:12:35,180 Ek dink wat dit gedek? 263 00:12:35,180 --> 00:12:36,350 Ek dink Samala het. 264 00:12:36,350 --> 00:12:39,292 So ons kan kry - 265 00:12:39,292 --> 00:12:41,270 >> Publiek: Waar het jy dit? 266 00:12:41,270 --> 00:12:44,990 >> JASON Hirsch: So as jy gaan na CS50.net, vasvrae, en dan kan jy 267 00:12:44,990 --> 00:12:47,170 scroll oor en kry skyfies van die hersiening sessie. 268 00:12:47,170 --> 00:12:49,860 Maar jy kan sien dit is 'n goeie voorbeeld van 'n SQL-inspuiting aanval. 269 00:12:49,860 --> 00:12:53,690 Ons neem 'n paar inligting van die gebruiker en hulle het vir ons 'n string, en dan het ons 270 00:12:53,690 --> 00:12:55,780 wil hê dat die string te voeg in 'n databasis. 271 00:12:55,780 --> 00:12:59,780 Die algemeen ons gaan om dit te ontsmet insette, wat beteken daar is 'n paar 272 00:12:59,780 --> 00:13:01,050 karakters wat gevaarlik is. 273 00:13:01,050 --> 00:13:04,000 >> Byvoorbeeld, in SQL snare, Hierdie aanhalings - 274 00:13:04,000 --> 00:13:05,000 aanhalingstekens of dubbele aanhalingstekens - 275 00:13:05,000 --> 00:13:05,620 iets beteken. 276 00:13:05,620 --> 00:13:08,380 Dit beteken die einde van hierdie string hier. 277 00:13:08,380 --> 00:13:13,090 En so, as die gebruiker gee jou 'n enkele of 'n dubbele quote, kan dit wees 278 00:13:13,090 --> 00:13:18,970 probeer om te reis op jou SQL navraag en voeg 'n paar slegte dinge in dit. 279 00:13:18,970 --> 00:13:23,130 En as hulle dit doen, kan hulle kry beheer van jou databasis of doen 'n paar 280 00:13:23,130 --> 00:13:24,760 dinge wat jy nie wil hê om dit te doen. 281 00:13:24,760 --> 00:13:28,300 >> So dit is waarom wanneer ons SQL navrae, ons ontsmet die insette voor 282 00:13:28,300 --> 00:13:31,090 om dit in die databasis, wat beteken dat ons ontsnap diegene karakters. 283 00:13:31,090 --> 00:13:32,590 Ons sal praat oor wat in 'n tweede. 284 00:13:32,590 --> 00:13:35,820 Maar lang storie kort, 'n SQL-inspuiting aanval is as jy dit nie doen nie - 285 00:13:35,820 --> 00:13:39,760 as jy nie sorg vir die insette hulle het aan jou voor om jou 286 00:13:39,760 --> 00:13:46,830 databasis, kan hulle, as jy sien neer hier, 'n soektog, in werklikheid - 287 00:13:46,830 --> 00:13:52,470 hulle het in hul kode hier en hierdie kies lyn af hier sal kies 288 00:13:52,470 --> 00:13:56,360 alles van die tafel, ongeag van wat die wagwoord is gegee. 289 00:13:56,360 --> 00:13:58,960 Omdat jy die of 1 is gelyk aan 1. 290 00:13:58,960 --> 00:14:02,750 >> So dit is basies, 'n lang storie kort, 'n manier om die databasis oor te neem. 291 00:14:02,750 --> 00:14:07,570 Die vraag is dan, vir julle, is Waar in p stelle 7 het jy al ontsmet 292 00:14:07,570 --> 00:14:10,010 die insette van jou SQL navrae? 293 00:14:10,010 --> 00:14:11,230 Waar het die stap gebeur? 294 00:14:11,230 --> 00:14:14,150 Waar dink jy dat 'n SQL-inspuiting aanvalle gebeur in p stel 7? 295 00:14:14,150 --> 00:14:20,100 296 00:14:20,100 --> 00:14:20,490 Ja. 297 00:14:20,490 --> 00:14:21,870 >> Publiek: kerkhof? 298 00:14:21,870 --> 00:14:23,120 >> JASON Hirsch: So dit was nie grafkelder. 299 00:14:23,120 --> 00:14:52,360 300 00:14:52,360 --> 00:14:55,380 Ons het nie maak dat jy doen dit vir hierdie spesifieke probleem gestel, maar dit gebeur 301 00:14:55,380 --> 00:14:58,190 in die soektog funksie. 302 00:14:58,190 --> 00:15:00,930 Ons is eintlik geskryf het dit vir jou, en ons het sorg van die 303 00:15:00,930 --> 00:15:03,040 reinig insette vir jou. 304 00:15:03,040 --> 00:15:07,790 Maar in die afgelope jare, het studente gehad het die insette op hul eie te tik. 305 00:15:07,790 --> 00:15:10,020 In p stel 7, 'n baie van julle - 306 00:15:10,020 --> 00:15:11,270 laat my oopmaak een ander lêer. 307 00:15:11,270 --> 00:15:18,530 308 00:15:18,530 --> 00:15:22,590 >> So jy sal sien hier 'n baie mense, in probleem gestel 7, het nie geroep 309 00:15:22,590 --> 00:15:25,240 hierdie funksie snare. 310 00:15:25,240 --> 00:15:27,880 Hierdie funksie, htmlspecialchars, weer - 311 00:15:27,880 --> 00:15:31,410 hierdie string kan 'n paar dinge wat in HTML beteken iets anders. 312 00:15:31,410 --> 00:15:36,160 Soos 'n stut, 'n vierkant, of 'n hoek bracket iets beteken in HTML. 313 00:15:36,160 --> 00:15:38,980 >> En so, as jy druk wat na die skerm of as jy net neem dit en 314 00:15:38,980 --> 00:15:42,260 druk wat uit jou HTML, wat mag doen iets wat jy nie verwag nie. 315 00:15:42,260 --> 00:15:45,180 So htmlspecialchars gaan oor al die karakters wat spesiale 316 00:15:45,180 --> 00:15:47,030 vergadering en ontsnap nie. 317 00:15:47,030 --> 00:15:51,450 So dit word uitgedruk as die teks jy wil om te sien, eerder as 318 00:15:51,450 --> 00:15:53,280 skroefwerk jou HTML. 319 00:15:53,280 --> 00:15:55,040 Ons het daardie funksie in die kop. 320 00:15:55,040 --> 00:15:57,390 En 'n baie van die mense vergeet om te noem dat die funksie in die 321 00:15:57,390 --> 00:15:58,700 kode wat jy is skryf. 322 00:15:58,700 --> 00:16:03,970 >> So, byvoorbeeld, as 'n voorraad se naam het 'n hoekhakie in dit en jy vergeet 323 00:16:03,970 --> 00:16:06,675 hierdie funksie, wat hoek te noem bracket kon gegooi het af wat 324 00:16:06,675 --> 00:16:08,250 jou HTML lyk. 325 00:16:08,250 --> 00:16:11,810 Maar roep van hierdie funksie sal ontsnap dat dit so eintlik druk uit as 'n 326 00:16:11,810 --> 00:16:15,870 hoeke en nie gooi af jou HTML-kode. 327 00:16:15,870 --> 00:16:18,760 >> Om dieselfde rede het ons gesien, soms, houe voor dubbele aanhalingstekens in 'n 328 00:16:18,760 --> 00:16:22,310 printf lyn, want ons wil nie die dubbel aanhalings af in die tou. 329 00:16:22,310 --> 00:16:24,050 Ons wil hulle uit te druk uit na die skerm. 330 00:16:24,050 --> 00:16:26,920 So al hierdie dinge is dieselfde idee. 331 00:16:26,920 --> 00:16:28,260 Maak dit jou vraag? 332 00:16:28,260 --> 00:16:31,529 333 00:16:31,529 --> 00:16:33,870 >> Publiek: Tipe. 334 00:16:33,870 --> 00:16:35,300 >> JASON Hirsch: Het jy 'n follow-up? 335 00:16:35,300 --> 00:16:43,252 >> Publiek: Ek dink die SQL-inspuiting aanval het te doen met dit? 336 00:16:43,252 --> 00:16:45,720 Ek verstaan ​​nie hoe Die twee is verwant. 337 00:16:45,720 --> 00:16:47,610 Hoekom sou jy doen die specialchars? 338 00:16:47,610 --> 00:16:51,200 >> JASON Hirsch: OK, so die SQL inspuiting aanval is wanneer jy spuit 339 00:16:51,200 --> 00:16:59,180 sommige kwaadwillige snare in iemand se program, en hulle het net neem dit en hardloop 340 00:16:59,180 --> 00:17:01,230 die SQL navraag met 'n string U het hom gegee. 341 00:17:01,230 --> 00:17:04,220 Soos jy kan sien hier dat kan 'n probleem wees. 342 00:17:04,220 --> 00:17:07,480 So die manier waarop jy voorkom teen wat jy hulle string wat hulle gee 343 00:17:07,480 --> 00:17:09,220 jy - so hierdie string reg hier - 344 00:17:09,220 --> 00:17:11,240 en jy ontsmet dit. 345 00:17:11,240 --> 00:17:14,305 Jy ontsnap al die dinge wat potensieel problematies. 346 00:17:14,305 --> 00:17:18,626 Sodat jy nie te interpreteer nie hulle as iets dit beteken iets. 347 00:17:18,626 --> 00:17:23,390 >> En 'n voorbeeld van wat met HTML is hierdie funksie. 348 00:17:23,390 --> 00:17:26,060 So dit is dieselfde idee hier. 349 00:17:26,060 --> 00:17:27,579 En ek is net wat jy ander voorbeelde van wanneer jy 350 00:17:27,579 --> 00:17:29,030 gesien hierdie idee voor. 351 00:17:29,030 --> 00:17:33,913 Ontsnap die gebruiker se toevoer voor druk dit uit na 'n skerm of om dit 352 00:17:33,913 --> 00:17:36,782 in 'n SQL-stelling. 353 00:17:36,782 --> 00:17:40,790 >> Publiek: So in hierdie geval, die gebruiker is geknoei met die programmeerder. 354 00:17:40,790 --> 00:17:41,240 >> JASON Hirsch: Ja. 355 00:17:41,240 --> 00:17:44,800 Met al hierdie sekuriteit aanvalle, dit is altyd die algemeen die gebruiker, of 356 00:17:44,800 --> 00:17:47,470 iemand, probeer om te mors met jou, die programmeerder. 357 00:17:47,470 --> 00:17:51,038 En dit is maniere wat jy kan verhoed dat teen hulle. 358 00:17:51,038 --> 00:17:54,280 >> Publiek: Ek het 'n vraag oor hash funksies. 359 00:17:54,280 --> 00:17:59,340 In Quiz 1 van 2011, is daar twee vrae oor eensydige twee velde. 360 00:17:59,340 --> 00:18:02,540 En ek het net gewonder wat dit beteken. 361 00:18:02,540 --> 00:18:03,660 >> JASON Hirsch: OK, wat quiz? 362 00:18:03,660 --> 00:18:03,770 2011? 363 00:18:03,770 --> 00:18:04,705 >> Publiek: Ja. 364 00:18:04,705 --> 00:18:06,720 >> Publiek: Quiz 1? 365 00:18:06,720 --> 00:18:08,620 >> Publiek: [onhoorbaar]. 366 00:18:08,620 --> 00:18:09,940 Dit is soos 'n wagwoord hashing. 367 00:18:09,940 --> 00:18:12,220 Dit is nie om dinge - 368 00:18:12,220 --> 00:18:13,440 >> JASON Hirsch: Wat bladsy is dit? 369 00:18:13,440 --> 00:18:15,720 >> Publiek: Ek dink dit was 9 of 10, of beide. 370 00:18:15,720 --> 00:18:16,720 >> JASON Hirsch: Alle reg, gaan voort, Curt. 371 00:18:16,720 --> 00:18:17,780 U kan antwoord, terwyl ons kyk. 372 00:18:17,780 --> 00:18:19,540 >> Publiek: Ek dink dit is praat oor hashing 'n wagwoord. 373 00:18:19,540 --> 00:18:24,430 Soos wanneer iemand gaan 'n wagwoord, jy draai dit in 'n geïnkripteer ding. 374 00:18:24,430 --> 00:18:27,395 Dit is die wagwoord hash, wat anders as 'n hash funksie wat 375 00:18:27,395 --> 00:18:30,900 sit iets in 'n gemors tafel. 376 00:18:30,900 --> 00:18:31,610 >> JASON Hirsch: Kom ons kyk. 377 00:18:31,610 --> 00:18:33,930 Laat my toe om dit wat hulle gee die antwoord. 378 00:18:33,930 --> 00:18:35,440 En dan sal ons loop deur dit. 379 00:18:35,440 --> 00:18:42,430 380 00:18:42,430 --> 00:18:45,400 >> So Curt het 'n goeie voorbeeld van 'n een-rigting hash. 381 00:18:45,400 --> 00:18:48,800 Wanneer ons dit voor gesien het, het ons neem die wagwoord en draai - 382 00:18:48,800 --> 00:18:53,040 Onthou, in p stel 7, iemand kan 'n wagwoord wat net wagwoord 383 00:18:53,040 --> 00:18:55,300 maar dan is dit kry geïnkripteer in 'n paar baie lang ding. 384 00:18:55,300 --> 00:18:59,830 Die eenrigting-hash beteken dit is baie maklik om te gaan van die een pad na die ander nie, maar 385 00:18:59,830 --> 00:19:02,800 dit is baie moeilik om te gaan uit die ander pad terug. 386 00:19:02,800 --> 00:19:05,230 >> En dan weet jy, toe jy die beheer van mense se wagwoorde in probleem 387 00:19:05,230 --> 00:19:08,820 Stel 7, sou jy hulle - 388 00:19:08,820 --> 00:19:11,953 So, byvoorbeeld, sê hulle wou hul wagwoord verander nie, jy hulle vra 389 00:19:11,953 --> 00:19:13,130 vir hul ou wagwoord. 390 00:19:13,130 --> 00:19:13,910 Jy het hul ou wagwoord. 391 00:19:13,910 --> 00:19:15,150 Jy geïnkripteer dit. 392 00:19:15,150 --> 00:19:19,240 En dan vergelyk die twee encrypties eerder as unencrypting die oorspronklike 393 00:19:19,240 --> 00:19:20,780 een, want dit is regtig hard dat die manier om te gaan. 394 00:19:20,780 --> 00:19:27,070 395 00:19:27,070 --> 00:19:28,035 Ja. 396 00:19:28,035 --> 00:19:31,430 >> Publiek: Hoe in diepte doen ons begrip van telnet te wees? 397 00:19:31,430 --> 00:19:34,870 398 00:19:34,870 --> 00:19:41,360 >> JASON Hirsch: As dit is genoem kortliks in lesing, net 'n kort 399 00:19:41,360 --> 00:19:43,260 begrip. 400 00:19:43,260 --> 00:19:45,585 Weereens, terug na die antwoord na AVI se vraag - 401 00:19:45,585 --> 00:19:48,260 402 00:19:48,260 --> 00:19:50,430 Hoe meer dinge kom, hoe meer waarskynlik dit is wat jy hoef te wees super 403 00:19:50,430 --> 00:19:51,530 vertroud met hulle. 404 00:19:51,530 --> 00:19:54,730 As hulle het net kom in lesing dit is net een plek. 405 00:19:54,730 --> 00:19:57,180 Maar as hulle kom in lesing, artikel, en 'n probleem gestel, dan is jy 406 00:19:57,180 --> 00:19:58,710 waarskynlik moet wees super vertroud met hulle. 407 00:19:58,710 --> 00:20:01,320 408 00:20:01,320 --> 00:20:03,960 >> So ek het 'n vraag uit vroeër oor - 409 00:20:03,960 --> 00:20:06,950 Die idee was val 2010 - 410 00:20:06,950 --> 00:20:08,520 Quiz 1, laat ons trek - 411 00:20:08,520 --> 00:20:17,390 412 00:20:17,390 --> 00:20:21,790 hierdie vraag op stapels en toue, wat ons gedoen het spandeer 'n billike bietjie van die tyd 413 00:20:21,790 --> 00:20:23,720 praat in lesing, selfs al het ons nie regtig 414 00:20:23,720 --> 00:20:26,020 ooit getref het in afdeling. 415 00:20:26,020 --> 00:20:33,190 So hierdie vraag gee jou 'n reeks instruksies en jy vra wat 416 00:20:33,190 --> 00:20:35,560 kry gedruk in hierdie geval. 417 00:20:35,560 --> 00:20:40,180 So dit is 'n heeltemal redelike vraag wat van jou gevra word 418 00:20:40,180 --> 00:20:43,090 ouens, en dan Julle moet in staat wees om dit te beantwoord. 419 00:20:43,090 --> 00:20:50,020 >> So hoekom nie jy kyk na dit vir 30 sekondes, en dan as iemand wil 420 00:20:50,020 --> 00:20:52,140 stel die antwoorde op my, en dan sal ons loop deur dit. 421 00:20:52,140 --> 00:21:22,590 422 00:21:22,590 --> 00:21:24,235 Alle reg, wat 'n antwoord te bevraagteken 27? 423 00:21:24,235 --> 00:21:31,740 424 00:21:31,740 --> 00:21:33,860 Ja. 425 00:21:33,860 --> 00:21:40,250 >> Publiek: Is dit 1, 2, 3, 3? 426 00:21:40,250 --> 00:21:40,780 >> JASON Hirsch: Dis reg. 427 00:21:40,780 --> 00:21:42,570 27 is 1, 2, 3, 3. 428 00:21:42,570 --> 00:21:44,510 So laat ons kyk na hoe ons dit. 429 00:21:44,510 --> 00:21:48,930 >> Eerstens, sê ons, as s is 'n tou, wat kry gedruk? 430 00:21:48,930 --> 00:21:53,360 So 'n Q is die eerste in, eerste uit. 431 00:21:53,360 --> 00:21:54,680 Ons het gesien dat voor. 432 00:21:54,680 --> 00:21:56,820 Ons het die foto van die mense wag by die Apple 433 00:21:56,820 --> 00:21:58,400 Slaan 'n produk te koop. 434 00:21:58,400 --> 00:22:00,900 Die eerste mense in is die eerste mense uit. 435 00:22:00,900 --> 00:22:02,940 Die eerste dinge in 'n ry is die eerste dinge uit. 436 00:22:02,940 --> 00:22:08,320 >> So as ons druk iets in 'n tou, jy druk op die 1, dan pop ons die 1. 437 00:22:08,320 --> 00:22:09,630 Pop beteken net uithaal. 438 00:22:09,630 --> 00:22:11,080 In hierdie geval, net om iets uit. 439 00:22:11,080 --> 00:22:12,910 Ons neem die eerste ding, dis 'n 1. 440 00:22:12,910 --> 00:22:15,200 So sal ons dinge wat ons druk af hier. 441 00:22:15,200 --> 00:22:18,110 Dit is nie meer in ons ry. 442 00:22:18,110 --> 00:22:23,500 >> Dan druk ons ​​op 'n 2 en 'n 3 en ons pop af die eerste ding. 443 00:22:23,500 --> 00:22:25,030 Weer, want dit is 'n tou. 444 00:22:25,030 --> 00:22:33,320 So kry ons 'n 2, dan is ons op 'n ander 3 en noem pop weer. 445 00:22:33,320 --> 00:22:34,980 Ons 3 is die eerste. 446 00:22:34,980 --> 00:22:40,940 >> En dan het ons 'n hele klomp van die ander dinge en oproep pop. 447 00:22:40,940 --> 00:22:43,740 Maar weereens, want dit is 'n tou, eerste in, eerste uit. 448 00:22:43,740 --> 00:22:45,980 Ons neem uit die eerste ding wat ooit sit in 449 00:22:45,980 --> 00:22:47,100 Dit is ons 3. 450 00:22:47,100 --> 00:22:50,060 En in hierdie geval, ons moenie bekommerd wees nie oor al die ander dinge. 451 00:22:50,060 --> 00:22:51,310 So dit is as dit 'n tou. 452 00:22:51,310 --> 00:22:58,917 453 00:22:58,917 --> 00:23:00,167 Enige vrae oor 'n tou? 454 00:23:00,167 --> 00:23:03,290 455 00:23:03,290 --> 00:23:04,040 >> 'N stapel se verskillende. 456 00:23:04,040 --> 00:23:07,782 Wat is die akroniem ons het vir die begrip van 'n stapel? 457 00:23:07,782 --> 00:23:08,750 >> Publiek: laaste in, eerste uit. 458 00:23:08,750 --> 00:23:10,130 >> JASON Hirsch: LIFO, dink ek. 459 00:23:10,130 --> 00:23:11,830 Laaste in, eerste uit. 460 00:23:11,830 --> 00:23:15,630 So ons het 'n voorbeeld van 'n stapel van bak in 'n eetsaal. 461 00:23:15,630 --> 00:23:17,590 Wat ook al skinkbord is op die top kry opgetel. 462 00:23:17,590 --> 00:23:19,550 En dan as nuwe bak kom in, kry hulle op die top. 463 00:23:19,550 --> 00:23:21,070 En dan wat ookal op top kry opgetel. 464 00:23:21,070 --> 00:23:24,010 So diegene bak op die bodem mag bly daar vir 'n rukkie. 465 00:23:24,010 --> 00:23:28,480 >> In daardie geval, weer, ons sal trek dit uit. 466 00:23:28,480 --> 00:23:31,770 Ons stoot aan die een, so een is eerste in die ry. 467 00:23:31,770 --> 00:23:32,790 En ons pop iets af. 468 00:23:32,790 --> 00:23:37,280 En daar is net een ding in daar, sodat ons beweeg 1 hier. 469 00:23:37,280 --> 00:23:41,940 Toe ons sit op 2 en 3 en ons pop iets af. 470 00:23:41,940 --> 00:23:43,650 >> Maar weereens, want dit is 'n tou - 471 00:23:43,650 --> 00:23:45,010 of is dit 'n stapel, eerder - 472 00:23:45,010 --> 00:23:47,480 neem ons ook al in die laaste. 473 00:23:47,480 --> 00:23:49,300 Wat ook al in verlede kom eerste uit. 474 00:23:49,300 --> 00:23:50,890 En 3 is in die laaste. 475 00:23:50,890 --> 00:23:56,110 So het ons die 3 af daar, dan Ons sit op 'n ander 3 en ons 476 00:23:56,110 --> 00:23:57,360 pop weer iets. 477 00:23:57,360 --> 00:23:59,990 478 00:23:59,990 --> 00:24:05,710 Ten slotte, ons sit op die 4, 5, 6 en 7, en hier het ons pop. 479 00:24:05,710 --> 00:24:09,060 En omdat dit 'n stapel, neem ons alles wat gestel is in die laaste en skryf 480 00:24:09,060 --> 00:24:10,240 dat hier. 481 00:24:10,240 --> 00:24:14,256 So het ons uiteindelik met 1, 3, 3, 7. 482 00:24:14,256 --> 00:24:17,380 483 00:24:17,380 --> 00:24:21,380 Het enige iemand enige vrae oor stapels of toue, of hierdie voorbeeld? 484 00:24:21,380 --> 00:24:27,540 485 00:24:27,540 --> 00:24:29,030 >> OK. 486 00:24:29,030 --> 00:24:30,440 Kom ons gaan terug na die lys van onderwerpe te gaan. 487 00:24:30,440 --> 00:24:32,510 Nie dat manier, op hierdie manier. 488 00:24:32,510 --> 00:24:34,280 Watter ander vrae mense het? 489 00:24:34,280 --> 00:24:37,550 490 00:24:37,550 --> 00:24:39,480 >> Publiek: Ek weet nie hoe belangrik dit is, maar ek is verward deur die 491 00:24:39,480 --> 00:24:43,550 verskil tussen die verskillende tipes tale soos opmaak, saamgestel, 492 00:24:43,550 --> 00:24:45,980 vertolk. 493 00:24:45,980 --> 00:24:46,750 >> JASON Hirsch: Dis 'n goeie vraag. 494 00:24:46,750 --> 00:24:50,500 Ek dink dit is 'n bietjie belangrik, so laat ons gaan oor dit vinnig. 495 00:24:50,500 --> 00:24:56,850 Die groot tale wat ons tot dusver gesien is C, PHP, en JavaScript, in terme 496 00:24:56,850 --> 00:24:58,330 van programmeertale. 497 00:24:58,330 --> 00:25:01,060 HTML, soos jy genoem het, is nie 'n programmeertaal. 498 00:25:01,060 --> 00:25:02,260 Dit is 'n opmaak taal. 499 00:25:02,260 --> 00:25:05,700 En dan het ons CSS, wat ook nie 'n programmeertaal. 500 00:25:05,700 --> 00:25:10,330 >> Ons het ook SQL, wat ons nie sien nie 'n programmeertaal nie. 501 00:25:10,330 --> 00:25:15,695 So SQL kan jy om te skryf navrae vir 'n databasis. 502 00:25:15,695 --> 00:25:18,370 503 00:25:18,370 --> 00:25:20,140 HTML is 'n opmaak taal. 504 00:25:20,140 --> 00:25:22,570 Dit bepaal hoe dinge gestruktureer is. 505 00:25:22,570 --> 00:25:26,250 En CSS kan jy dinge te stileer. 506 00:25:26,250 --> 00:25:28,520 Dit is waarskynlik die mate vir wat jy nodig het om te weet oor die drie. 507 00:25:28,520 --> 00:25:32,920 Maar dit is meer interessant om te figuur die verskille tussen C, PHP, 508 00:25:32,920 --> 00:25:34,320 en JavaScript. 509 00:25:34,320 --> 00:25:37,900 >> So een van die grootste verskille, soos jy genoem het, is hoe hulle 510 00:25:37,900 --> 00:25:40,550 saamgestel is, of wat ook al die ekwivalent is. 511 00:25:40,550 --> 00:25:42,580 So C saamgestel word. 512 00:25:42,580 --> 00:25:43,950 Ons sal altyd hardloop 'n vertaler. 513 00:25:43,950 --> 00:25:51,100 En dan waar is jou foute wanneer jy die C samesteller? 514 00:25:51,100 --> 00:25:55,740 Waar kom dit wys jou die foute in jou kode? 515 00:25:55,740 --> 00:25:57,860 Hoe weet jy daar is 'n fout in jou kode in C? 516 00:25:57,860 --> 00:25:58,770 >> Publiek: Dit wys jou in die terminale. 517 00:25:58,770 --> 00:26:00,410 >> JASON Hirsch: Dit wys jou in die terminale as jy die opstel van. 518 00:26:00,410 --> 00:26:02,620 En as daar is foute, is dit sal eintlik nie stel nie. 519 00:26:02,620 --> 00:26:04,830 So jy weet dat daar foute reg weg, voor die tyd, voordat jy 520 00:26:04,830 --> 00:26:06,050 selfs hardloop jou kode. 521 00:26:06,050 --> 00:26:10,010 >> Van die kursus, kan jy jou kode hardloop en 'n segmentering skuld nie, maar dit was 522 00:26:10,010 --> 00:26:12,350 waarskynlik omdat jy dit gedoen sommige dom logika ding. 523 00:26:12,350 --> 00:26:15,770 Maar jou kode met tegnies alles reg en kon loop. 524 00:26:15,770 --> 00:26:18,210 So C-kode kry voor die tyd saamgestel. 525 00:26:18,210 --> 00:26:19,760 Wat van PHP-kode? 526 00:26:19,760 --> 00:26:21,430 Waar was foute in jou PHP-kode? 527 00:26:21,430 --> 00:26:23,170 Hoe weet jy foute het in jou PHP-kode? 528 00:26:23,170 --> 00:26:26,038 529 00:26:26,038 --> 00:26:28,430 >> Publiek: Run time? 530 00:26:28,430 --> 00:26:31,230 >> JASON Hirsch: Ja, wanneer jy sou dit hardloop, sal jy die 531 00:26:31,230 --> 00:26:32,180 PHP-kode in die rug. 532 00:26:32,180 --> 00:26:33,300 En dan sal jy 'n skerm vertoon. 533 00:26:33,300 --> 00:26:35,260 Jy kan sien 'n paar dinge op die top, maar dan sou jy sien, soos sommige 534 00:26:35,260 --> 00:26:36,710 oranje, lelike tafel. 535 00:26:36,710 --> 00:26:41,420 En dit sal vir jou 'n lyn nommer en sê, blah, blah, blah, hierdie dinge 536 00:26:41,420 --> 00:26:42,400 het nie werk nie. 537 00:26:42,400 --> 00:26:48,730 >> So PHP geïnterpreteer lyn deur die lyn en uitgevoer op die bediener. 538 00:26:48,730 --> 00:26:52,380 En dan is die resultaat is gestuur na jou toe. 539 00:26:52,380 --> 00:26:53,340 Groot. 540 00:26:53,340 --> 00:26:56,410 Uitgevoer in die bediener lyn deur die lyn en dan gestuur na jou toe. 541 00:26:56,410 --> 00:26:59,010 En as daar 'n fout is, sal dit vir jou stuur jy die fout, maar jy kan hê 542 00:26:59,010 --> 00:27:00,400 gekry 'n paar dinge voor die tyd. 543 00:27:00,400 --> 00:27:02,730 So 'n paar van dit dalk gewerk het nie, maar Later, 'n paar dinge kan nie ' 544 00:27:02,730 --> 00:27:03,890 nie gewerk nie. 545 00:27:03,890 --> 00:27:04,600 >> Wat van JavaScript? 546 00:27:04,600 --> 00:27:06,065 Waar het jy JavaScript foute sien? 547 00:27:06,065 --> 00:27:10,860 548 00:27:10,860 --> 00:27:12,870 In p stel 8, wanneer jy het 'n fout, hoe het jy geweet? 549 00:27:12,870 --> 00:27:13,710 Waar sou dit wys? 550 00:27:13,710 --> 00:27:15,900 >> Publiek: In die console, aan die onderkant. 551 00:27:15,900 --> 00:27:17,650 >> JASON Hirsch: In die troos, op die bodem. 552 00:27:17,650 --> 00:27:20,160 Dit sal ook vir jou die lyn nommer, en dit sou 553 00:27:20,160 --> 00:27:21,330 wys op die onderkant. 554 00:27:21,330 --> 00:27:24,320 En JavaScript nie uitgevoer is nie op die bediener. 555 00:27:24,320 --> 00:27:27,800 JavaScript is op u rekenaar gestuur, en dan wanneer dit tyd was om te hardloop die 556 00:27:27,800 --> 00:27:31,670 JavaScript, die JavaScript was hardloop lyn deur die lyn op die 557 00:27:31,670 --> 00:27:33,410 kliënt, aan jou kant. 558 00:27:33,410 --> 00:27:35,570 Nie die bediener, die kliënt kant. 559 00:27:35,570 --> 00:27:37,690 >> En so, was dit hardloop reël vir reël. 560 00:27:37,690 --> 00:27:40,630 En dan wanneer sou jy 'n fout kry, sou dit wys aan die onderkant. 561 00:27:40,630 --> 00:27:44,580 Net soos PHP, sommige van hulle mag voer, en dan kan jy dalk 'n 562 00:27:44,580 --> 00:27:46,310 fout later. 563 00:27:46,310 --> 00:27:49,910 >> Ook, 'n bietjie anders as PHP, indien jy het 'n JavaScript-fout - 564 00:27:49,910 --> 00:27:52,780 sê jy nie gedoen het nie die reg kode vir 'n waarskuwing venster - 565 00:27:52,780 --> 00:27:55,800 jy kan hou die bestuur van jou program. 566 00:27:55,800 --> 00:27:58,180 Die alarm boks sal nie werk nie, maar jou program sal goed wees. 567 00:27:58,180 --> 00:28:00,490 Net miskien daardie funksie sou misluk. 568 00:28:00,490 --> 00:28:02,610 >> So daar is 'n paar van die grootste verskil in terme van hoe hierdie 569 00:28:02,610 --> 00:28:09,230 tale, of hoe die ontwikkeling kode jy skryf eintlik geëvalueer. 570 00:28:09,230 --> 00:28:11,970 Daar is ook ander verskille in terme van - die grootste verskil 571 00:28:11,970 --> 00:28:15,590 ons gesien het in terme van veranderlikes in die verskillende tale. 572 00:28:15,590 --> 00:28:19,660 So kan enige iemand gee my 'n verskil tussen veranderlikes 573 00:28:19,660 --> 00:28:20,910 in die drie tale? 574 00:28:20,910 --> 00:28:24,802 575 00:28:24,802 --> 00:28:25,770 Ja. 576 00:28:25,770 --> 00:28:27,130 >> Publiek: In C, hulle is streng getik. 577 00:28:27,130 --> 00:28:28,550 In die ander twee, hulle is losweg getik. 578 00:28:28,550 --> 00:28:30,040 >> JASON Hirsch: En wat beteken dit? 579 00:28:30,040 --> 00:28:31,775 >> Publiek: Dit is in C, jy het om te verklaar die tipe van die veranderlike wanneer 580 00:28:31,775 --> 00:28:36,140 verklaar u die veranderlike, soos interbool of kar. 581 00:28:36,140 --> 00:28:36,990 >> JASON Hirsch: Uitstekende. 582 00:28:36,990 --> 00:28:39,780 In C, het ons altyd gehad het om te sit 'n tipe van 'n veranderlike. 583 00:28:39,780 --> 00:28:41,360 En ons kon nie regtig tipes meng. 584 00:28:41,360 --> 00:28:45,750 Jy kan dit nie doen nie 'n heelgetal plus 'n string. 585 00:28:45,750 --> 00:28:48,760 Maar soos ons gesien het in hierdie ander tale, wat jy eintlik kan meng tipes, 586 00:28:48,760 --> 00:28:51,230 en jy nooit regtig te gee iets wat 'n tipe, ooit. 587 00:28:51,230 --> 00:28:53,905 >> So hoe weet ons dinge is veranderlikes in PHP en JavaScript? 588 00:28:53,905 --> 00:28:57,120 589 00:28:57,120 --> 00:28:58,685 >> Publiek: In PHP, het hulle begin met 'n dollar-teken. 590 00:28:58,685 --> 00:29:00,810 In JavaScript, as jy verklaar hulle, jy het 'n kroeg te hê. 591 00:29:00,810 --> 00:29:01,760 >> JASON Hirsch: Right. 592 00:29:01,760 --> 00:29:03,535 So in PHP, het hulle begin met 'n dollar-teken. 593 00:29:03,535 --> 00:29:06,300 In JavaScript, hulle het bar te hê, hoewel soms wat hulle doen nie eintlik 594 00:29:06,300 --> 00:29:07,520 het bar te hê. 595 00:29:07,520 --> 00:29:09,240 Maar dit is reg. 596 00:29:09,240 --> 00:29:13,300 >> So dit is 'n groot verskil tussen veranderlikes. 597 00:29:13,300 --> 00:29:16,140 Ek dink dit is waarskynlik, uit die top van my kop, die twee grootste 598 00:29:16,140 --> 00:29:19,250 verskille tussen hierdie drie tale. 599 00:29:19,250 --> 00:29:20,594 Maar, ja. 600 00:29:20,594 --> 00:29:24,720 >> Publiek: en die omvang van C veranderlikes is beperk tot die krulhakies, 601 00:29:24,720 --> 00:29:27,760 waar die ander kinders, dit is net soos, dit sterf as dit is slegs 'n funksie, 602 00:29:27,760 --> 00:29:29,650 maar andersins, it's - 603 00:29:29,650 --> 00:29:30,240 >> JASON Hirsch: Right. 604 00:29:30,240 --> 00:29:36,780 So omvang is effens anders in C. As jy onthou, krullerige draadjies definieer 605 00:29:36,780 --> 00:29:37,710 die omvang van veranderlikes. 606 00:29:37,710 --> 00:29:41,680 So as dit is gedefinieer binne 'n as toestand, wat is in 'n lus vir, 607 00:29:41,680 --> 00:29:44,290 die veranderlike bestaan ​​net daar. 608 00:29:44,290 --> 00:29:47,760 >> In JavaScript, word as 'n veranderlike gedefinieer binne 'n as voorwaarde - 609 00:29:47,760 --> 00:29:50,750 binne 'n lus vir die - dit sal bestaan ​​vir daardie funksie, maar dit sal nie bestaan ​​nie 610 00:29:50,750 --> 00:29:52,330 buite daardie funksie. 611 00:29:52,330 --> 00:29:59,250 So omvang is 'n bietjie meer buigsaam in JavaScript en PHP. 612 00:29:59,250 --> 00:30:00,500 Dit beantwoord die vraag? 613 00:30:00,500 --> 00:30:03,110 614 00:30:03,110 --> 00:30:04,635 OK, enige ander vrae? 615 00:30:04,635 --> 00:30:07,260 616 00:30:07,260 --> 00:30:08,865 Ons kan vier minute doen vrae, dan 617 00:30:08,865 --> 00:30:10,740 ons sal spring in die kodering. 618 00:30:10,740 --> 00:30:12,645 >> Publiek: Kan ons gaan in Ajax en praat oor wat dit is? 619 00:30:12,645 --> 00:30:15,670 620 00:30:15,670 --> 00:30:17,800 >> JASON Hirsch: Praat met Avi na. 621 00:30:17,800 --> 00:30:19,170 Hy het gevra dat die vraag vroeër. 622 00:30:19,170 --> 00:30:19,630 >> Publiek: My slegte. 623 00:30:19,630 --> 00:30:20,880 >> JASON Hirsch: Geen sorge. 624 00:30:20,880 --> 00:30:22,740 625 00:30:22,740 --> 00:30:24,290 >> Publiek: Wat presies is into? 626 00:30:24,290 --> 00:30:28,360 627 00:30:28,360 --> 00:30:28,900 >> JASON Hirsch: Wat is into? 628 00:30:28,900 --> 00:30:29,930 Wat is jou vraag? 629 00:30:29,930 --> 00:30:31,350 >> Publiek: Net regtig vinnig, die verskil tussen 630 00:30:31,350 --> 00:30:32,870 druk en eggo in PHP. 631 00:30:32,870 --> 00:30:36,200 632 00:30:36,200 --> 00:30:38,490 >> JASON Hirsch: Hoekom dink jy Google nie die verskil tussen gedrukte en eggo? 633 00:30:38,490 --> 00:30:40,670 Effense verskil. 634 00:30:40,670 --> 00:30:42,020 Nie dat die groot van 'n deal. 635 00:30:42,020 --> 00:30:44,960 Maar jy moet beslis google dit, en dit sal vir jou 'n goeie antwoord. 636 00:30:44,960 --> 00:30:46,910 >> Into, waarskynlik groter van 'n deal. 637 00:30:46,910 --> 00:30:49,300 Staan vir JavaScript Object notasie. 638 00:30:49,300 --> 00:30:51,865 En toe het ons gesien into gebruik word? 639 00:30:51,865 --> 00:30:55,110 640 00:30:55,110 --> 00:30:55,900 Wanneer het jy gesien - 641 00:30:55,900 --> 00:30:57,400 Hoekom doen jy selfs die woord weet into? 642 00:30:57,400 --> 00:30:59,140 Wanneer het jy dit gesien? 643 00:30:59,140 --> 00:31:02,200 >> Publiek: Toe ons kry voorraadkwotasies vir finansies. 644 00:31:02,200 --> 00:31:02,690 >> JASON Hirsch: So jy sien wanneer jy kry 645 00:31:02,690 --> 00:31:04,830 voorraadkwotasies vir finansies. 646 00:31:04,830 --> 00:31:07,340 En hoekom het jy dit sien? 647 00:31:07,340 --> 00:31:09,000 >> Publiek: Toe ons die herwinning al die inligting wat 648 00:31:09,000 --> 00:31:10,400 gekom het in daardie formaat. 649 00:31:10,400 --> 00:31:11,700 >> JASON Hirsch: So jy sou kry - 650 00:31:11,700 --> 00:31:12,540 ja. 651 00:31:12,540 --> 00:31:13,020 Gaan voort. 652 00:31:13,020 --> 00:31:15,210 >> Publiek: [onhoorbaar] inligting uit 'n voorwerp? 653 00:31:15,210 --> 00:31:17,170 >> JASON Hirsch: Beide van daardie saam is die antwoord 654 00:31:17,170 --> 00:31:18,100 ons soek. 655 00:31:18,100 --> 00:31:21,240 Jy wil inligting uit hierdie ander webblad. 656 00:31:21,240 --> 00:31:23,790 En jy hoop dat wanneer jy om daardie inligting, sou dit wees 657 00:31:23,790 --> 00:31:26,720 aangebied aan julle in 'n soort gestandaardiseerde formaat. 658 00:31:26,720 --> 00:31:29,530 >> Almal is waarskynlik vertroud met kommas geskei waardes. 659 00:31:29,530 --> 00:31:32,970 Jy kan 'n Excel of uitvoer enige vorm van spreadsheet as 'n lys van 660 00:31:32,970 --> 00:31:34,540 komma-geskeide waardes. 661 00:31:34,540 --> 00:31:37,370 En die kommas verdeel al die verskillende velde. 662 00:31:37,370 --> 00:31:38,780 JavaScript Object Notasie - 663 00:31:38,780 --> 00:31:39,440 Into - 664 00:31:39,440 --> 00:31:43,540 is 'n ander tipe van gestandaardiseerde uitleg van die dinge. 665 00:31:43,540 --> 00:31:49,010 En dit is dikwels hoe ons haal inligting van ons Ajax navrae. 666 00:31:49,010 --> 00:31:51,770 >> So in hierdie geval, ons het dit uit die Yahoo site. 667 00:31:51,770 --> 00:31:53,600 Hulle keer terug om dinge te ons in 'n into voorwerp. 668 00:31:53,600 --> 00:31:56,790 En dan weet ons, want dit is 'n standaard, wat dit is 669 00:31:56,790 --> 00:31:57,250 gaan lyk. 670 00:31:57,250 --> 00:32:00,760 So kan ons Itereer deur die skikking dit is terug na ons, die verskeidenheid van 671 00:32:00,760 --> 00:32:03,180 voorwerpe wat teruggekeer word aan ons. 672 00:32:03,180 --> 00:32:07,770 >> Ons moet waarskynlik die sleutels te leer ken, maar hulle in die algemeen gee 673 00:32:07,770 --> 00:32:11,370 dokumentasie in die webwerf toe jy gaan haal 'n paar into 674 00:32:11,370 --> 00:32:12,170 notasie vir hulle. 675 00:32:12,170 --> 00:32:16,940 Net so, kan jy into enkodeer 'n voorwerp. 676 00:32:16,940 --> 00:32:19,900 So is daar 'n funksie into beklemtoon enkodeer. 677 00:32:19,900 --> 00:32:22,970 En so kan jy 'n voorwerp te neem wat jy gemaak het, into enkodeer, en 678 00:32:22,970 --> 00:32:26,390 slaag dit op iets anders, as jy wil. 679 00:32:26,390 --> 00:32:30,770 En into dekodeer is ook beskikbaar vir 'n soortgelyke doel, of vir 680 00:32:30,770 --> 00:32:31,780 die teenoorgestelde doel. 681 00:32:31,780 --> 00:32:36,570 >> Publiek: Het ons nodig om te weet kodering vir hash tabelle en drieë? 682 00:32:36,570 --> 00:32:40,300 Of moet ons net om te verstaan hoe hulle gebruik word, konseptueel? 683 00:32:40,300 --> 00:32:44,570 >> JASON Hirsch: So, maak jou hand As jy het 'n gemors tafel p stel 4 684 00:32:44,570 --> 00:32:46,920 met 'n skakel lys. 685 00:32:46,920 --> 00:32:47,960 Of p stel 5. 686 00:32:47,960 --> 00:32:49,060 So dit was 'n groot meerderheid van die mense. 687 00:32:49,060 --> 00:32:50,390 P stel 5, 6, wie weet. 688 00:32:50,390 --> 00:32:51,240 'N lang tyd gelede. 689 00:32:51,240 --> 00:32:54,140 >> So het die oorgrote meerderheid van julle het hash tabelle met skakel lyste. 690 00:32:54,140 --> 00:32:56,525 En omdat dit is waarskynlik die meer gemeenskaplike benadering, en omdat ons spandeer 691 00:32:56,525 --> 00:32:59,460 'n baie tyd doen skakel lyste en hash tafels, jy moet waarskynlik 692 00:32:59,460 --> 00:33:02,600 redelik vertroud met hoe om te kodeer 'n gemors tafel en 'n skakel lys. 693 00:33:02,600 --> 00:33:05,060 >> En as jy terug dink aan daardie probleem stel, was dit nie regtig 694 00:33:05,060 --> 00:33:06,410 so hard as wat jy verwag. 695 00:33:06,410 --> 00:33:08,120 En daar was 'n baie minder kode as wat jy verwag. 696 00:33:08,120 --> 00:33:11,150 697 00:33:11,150 --> 00:33:14,650 Ek sou sê jy moet weet hoe om te kode om 'n hash tafel of 'n skakel lys. 698 00:33:14,650 --> 00:33:17,010 Nie dat jy sal gevra word dat, noodwendig nie, maar jy moet in 699 00:33:17,010 --> 00:33:19,730 beslis weet dat. 700 00:33:19,730 --> 00:33:21,860 >> Ook, as jy kyk deur die verlede vasvrae, Daar het 'n baie gewees 701 00:33:21,860 --> 00:33:26,450 vrae oor die skryf van funksies skakel lyste of dubbel-geskakelde lyste. 702 00:33:26,450 --> 00:33:28,370 Dit lyk kom elke jaar. 703 00:33:28,370 --> 00:33:31,940 Reg te voeg op 'n skakel lys, reg verwyder uit 'n lys met skakels, reg te voeg 704 00:33:31,940 --> 00:33:33,610 vir 'n dubbel-gekoppelde lys, ensovoorts. 705 00:33:33,610 --> 00:33:36,170 Dus, ek voel redelik gemaklik sê moet jy weet dat. 706 00:33:36,170 --> 00:33:40,600 >> Vir drie, sou ek sê jy moet beslis weet hoe dit werk, en miskien 707 00:33:40,600 --> 00:33:43,570 gee 'n paar pseudokode vir hoe om dit te kode en dit stel. 708 00:33:43,570 --> 00:33:45,600 Maar dit sal nie die ergste ding in die wêreld as jy nie geweet het nie hoe om te 709 00:33:45,600 --> 00:33:48,870 Kode Daar in C. Dit sal wonderlik wees as jy geweet hoe om dit te kode in C, maar ek dink 710 00:33:48,870 --> 00:33:52,516 waarskynlik pseudokode vir 'n drie sou wees om die meeste wat jy nodig sou wees 711 00:33:52,516 --> 00:33:53,270 om te weet vir 'n drie. 712 00:33:53,270 --> 00:33:53,930 >> Publiek: Ekstra krediet? 713 00:33:53,930 --> 00:33:58,290 >> JASON Hirsch: En dieselfde met, as ons gaan in binêre soek bome, kan jy 714 00:33:58,290 --> 00:34:02,320 nodig het - en jy gesien het in die verlede, ons gedoen het 'n baie - jy weet hoe 715 00:34:02,320 --> 00:34:03,380 binêre soek boom werk. 716 00:34:03,380 --> 00:34:07,150 Jy moet waarskynlik in staat wees om te stel een in pseudokode. 717 00:34:07,150 --> 00:34:10,510 Maar omdat die oorgrote meerderheid van die mense dit nie doen nie op die probleem 718 00:34:10,510 --> 00:34:13,880 stel, sou ek sê dit is waarskynlik minder belangrik dat jy weet hoe om te kode 719 00:34:13,880 --> 00:34:17,380 en die opstel van 'n boom soos dit. 720 00:34:17,380 --> 00:34:19,679 >> Enige ander vrae? 721 00:34:19,679 --> 00:34:23,234 Ook, kan ons hulle die hele vra as ons gaan deur 'n paar probleme. 722 00:34:23,234 --> 00:34:27,170 OK, ons gaan om aan te beweeg. 723 00:34:27,170 --> 00:34:28,230 Slaan wat skuif vir nou. 724 00:34:28,230 --> 00:34:32,449 >> Praat van bome, wat die eerste vraag wat ek het vir julle. 725 00:34:32,449 --> 00:34:34,270 Want dit is 'n probleem. 726 00:34:34,270 --> 00:34:37,380 Ek sou sê dit is hoogs waarskynlik sal jy 'n probleem soos hierdie op jou quiz 727 00:34:37,380 --> 00:34:43,659 vra jy 'n soort van insetsel te kode, verwyder, soek, vir 'n tipe 728 00:34:43,659 --> 00:34:45,270 van data struktuur ons gesien het. 729 00:34:45,270 --> 00:34:47,719 >> Dit kom elke jaar en ons het 'n baie tyd in die tweede helfte van hierdie 730 00:34:47,719 --> 00:34:50,270 semester gaan oor hierdie data tipes. 731 00:34:50,270 --> 00:34:54,170 So nou, ek het 'n knoop gedefinieer in 'n binêre soek boom. 732 00:34:54,170 --> 00:34:58,490 En wat ek wil hê jy moet doen is gegee 'n binêre soek boom wat begin 733 00:34:58,490 --> 00:35:05,450 op hierdie node ster wortel, voltooi die implementering van die funksie hieronder, 734 00:35:05,450 --> 00:35:07,430 wat gebeur 'n vonds funksie te wees. 735 00:35:07,430 --> 00:35:09,260 En doen dit met en sonder recursions. 736 00:35:09,260 --> 00:35:10,860 >> So ek wil julle twee funksies te skryf. 737 00:35:10,860 --> 00:35:14,310 Een om dit te doen met rekursie, een om dit te doen sonder rekursie. 738 00:35:14,310 --> 00:35:18,050 En aanvaar nie dat die wortel sal wees nie-nul. 739 00:35:18,050 --> 00:35:21,790 So ons is op soek vir die heelgetal i in die boom begin by die wortel, en ons moet 740 00:35:21,790 --> 00:35:25,280 om dit te rekursief skryf en iteratief. 741 00:35:25,280 --> 00:35:26,300 Ja. 742 00:35:26,300 --> 00:35:29,730 >> Publiek: So jy wil hê ons moet terugkeer waar As ons dit vind, en vals as ons 743 00:35:29,730 --> 00:35:30,480 nie vind nie. 744 00:35:30,480 --> 00:35:32,160 >> JASON Hirsch: Hoe weet jy? 745 00:35:32,160 --> 00:35:33,100 Hoe weet jy dit? 746 00:35:33,100 --> 00:35:36,500 >> Publiek: Ek is die eerste keer te vra, maar ek was aanvaarding, want dit sê Bool op 747 00:35:36,500 --> 00:35:37,490 die begin van die funksie. 748 00:35:37,490 --> 00:35:37,880 >> JASON Hirsch: Right. 749 00:35:37,880 --> 00:35:41,020 Dit sê Bool, so ek hoef nie eens te vertel wat ek verwag om terug te keer 750 00:35:41,020 --> 00:35:41,350 want dit sê net daar. 751 00:35:41,350 --> 00:35:42,280 Maar dit is reg. 752 00:35:42,280 --> 00:35:43,510 Terug te keer, waar of vals is. 753 00:35:43,510 --> 00:35:47,630 >> So voordat jy begin, sou ek aanbeveel, As jy nie vertroud is met 754 00:35:47,630 --> 00:35:51,300 binêre soek bome, vinnig teken 'n foto van dit te kry om jou 755 00:35:51,300 --> 00:35:51,750 begrip, reg. 756 00:35:51,750 --> 00:35:54,720 Dit sal ook help om jou toe te skryf jou kode en te keur nie. 757 00:35:54,720 --> 00:35:57,830 Weer, moet jy ook nie dat veel tyd op die toets al die dinge te doen 758 00:35:57,830 --> 00:35:59,030 dat ons vra om te doen. 759 00:35:59,030 --> 00:36:02,350 So skryf pseudokode is baie nuttig. 760 00:36:02,350 --> 00:36:05,310 >> En ons in die algemeen gee oor - 761 00:36:05,310 --> 00:36:06,820 As die pseudokode is perfek korrek, dis 762 00:36:06,820 --> 00:36:08,910 algemeen 50% op 'n vraag. 763 00:36:08,910 --> 00:36:11,410 So dit is nie 'n vaste reël nie, maar as jy net skryf pseudokode en dit is 764 00:36:11,410 --> 00:36:13,460 korrek is, is dit gewoonlik 50%. 765 00:36:13,460 --> 00:36:14,970 So ek wil altyd beveel - 766 00:36:14,970 --> 00:36:16,870 As jy min tyd het, of selfs as jy net probeer om dit uit te vind - 767 00:36:16,870 --> 00:36:18,290 begin met die pseudokode. 768 00:36:18,290 --> 00:36:24,840 En uiteindelik, as jy dit kan skryf al in C, sou dit fantasties wees. 769 00:36:24,840 --> 00:36:29,010 >> So kom ons neem drie minute om te werk op die program. 770 00:36:29,010 --> 00:36:33,120 En dan gaan ons te skryf pseudokode vir dit net een keer, en dan 771 00:36:33,120 --> 00:36:35,455 ons gaan om dit te rekursief code en dan iteratief. 772 00:36:35,455 --> 00:37:28,720 773 00:37:28,720 --> 00:37:30,760 >> As jy enige vrae het, voel gratis verhoog jou hand. 774 00:37:30,760 --> 00:37:34,270 Gelukkig om rond te loop en hulle antwoord voordat ons begin as 'n groep. 775 00:37:34,270 --> 00:39:22,600 776 00:39:22,600 --> 00:39:27,200 >> Laat ons weer, en ons gaan pseudokode die rekursiewe weergawe van 777 00:39:27,200 --> 00:39:29,830 hierdie, en dan sal ons Kode Daar. 778 00:39:29,830 --> 00:39:33,380 So 'n rekursiewe funksie moet twee dinge. 779 00:39:33,380 --> 00:39:35,960 Dit kan 'n vraag wees wat jy kan gevra word. 780 00:39:35,960 --> 00:39:37,950 Moet twee dinge. 781 00:39:37,950 --> 00:39:40,610 Wie kan hulle hand opsteek en sê vir my wat die twee dinge wat 'n rekursiewe 782 00:39:40,610 --> 00:39:43,680 funksie moet? 783 00:39:43,680 --> 00:39:45,030 Per definisie is dit het twee dinge. 784 00:39:45,030 --> 00:39:46,280 Wat is die twee dinge? 785 00:39:46,280 --> 00:39:48,580 786 00:39:48,580 --> 00:39:49,830 Nuwe hande. 787 00:39:49,830 --> 00:39:55,050 788 00:39:55,050 --> 00:39:56,390 Ja, Alden. 789 00:39:56,390 --> 00:39:57,980 >> Publiek: So ek is nie presies seker of dit is die terme nie, maar - 790 00:39:57,980 --> 00:39:59,715 >> JASON Hirsch: Ek is bly jy die verhoging van jou hand. 791 00:39:59,715 --> 00:40:03,380 >> Publiek: Dit moet 'n basis geval, en dit moet 'n rekursiewe stap. 792 00:40:03,380 --> 00:40:03,960 >> JASON Hirsch: Perfect. 793 00:40:03,960 --> 00:40:06,340 Dit moet 'n basis geval en 'n rekursiewe stap. 794 00:40:06,340 --> 00:40:10,430 So, wat is ons basis geval hier? 795 00:40:10,430 --> 00:40:12,950 >> Publiek: F wortel gelyk is gelyk aan nul. 796 00:40:12,950 --> 00:40:15,110 Jammer, net in pseudokode, As dit is nul. 797 00:40:15,110 --> 00:40:16,360 As wortel is leeg. 798 00:40:16,360 --> 00:40:21,900 799 00:40:21,900 --> 00:40:23,540 >> JASON Hirsch: As wortel is leeg. 800 00:40:23,540 --> 00:40:23,850 Dit is uitstekend. 801 00:40:23,850 --> 00:40:24,610 Dit is ons basis geval. 802 00:40:24,610 --> 00:40:25,910 Dit is wat ons gaan elke keer om seker te maak. 803 00:40:25,910 --> 00:40:28,000 En basis geval is die eerste ding wat jy doen. 804 00:40:28,000 --> 00:40:29,720 As jy druk op die basis geval, jy klaar is. 805 00:40:29,720 --> 00:40:34,140 >> Nou moet ons ons rekursiewe oproep, en ek wil bereid wees om te wed ons nodig het 'n paar 806 00:40:34,140 --> 00:40:35,440 rekursiewe oproepe hier. 807 00:40:35,440 --> 00:40:39,630 Want dit is 'n boom, en ons kon verskeie maniere gaan. 808 00:40:39,630 --> 00:40:43,190 So as wortel, is van nul, ons is goed. 809 00:40:43,190 --> 00:40:44,970 >> Wat stel jy? 810 00:40:44,970 --> 00:40:49,640 En nou gaan ek begin roep op julle, want ek weet julle ouens 811 00:40:49,640 --> 00:40:50,540 almal weet hierdie. 812 00:40:50,540 --> 00:40:52,610 Maar Annie, wat moet die volgende lyn wees? 813 00:40:52,610 --> 00:40:53,570 Wat as ons het dit gevind? 814 00:40:53,570 --> 00:40:55,526 Wat doen ons? 815 00:40:55,526 --> 00:40:57,300 >> Publiek: As ons dit gevind? 816 00:40:57,300 --> 00:40:59,160 >> JASON Hirsch: Of wat behoort te wees dat - 817 00:40:59,160 --> 00:41:02,124 gee my die pseudokode vir die lyn waar ons het dit gevind. 818 00:41:02,124 --> 00:41:04,700 >> Publiek: As ek gelyk wortel i? 819 00:41:04,700 --> 00:41:06,650 >> JASON Hirsch: En dan wat doen ons? 820 00:41:06,650 --> 00:41:07,590 >> Publiek: Terug waar. 821 00:41:07,590 --> 00:41:08,530 >> JASON Hirsch: Groot. 822 00:41:08,530 --> 00:41:16,890 So as ek is i - 823 00:41:16,890 --> 00:41:17,400 O, hulle is albei genoem i. 824 00:41:17,400 --> 00:41:18,470 Dit word verwarrend. 825 00:41:18,470 --> 00:41:23,830 Maar as ek is ek terugkeer waar. 826 00:41:23,830 --> 00:41:25,620 Dit is waarskynlik die volgende ding wat ons moet doen. 827 00:41:25,620 --> 00:41:27,300 Sin maak. 828 00:41:27,300 --> 00:41:30,610 >> OK, nou het ons nie gedoen om ons rekursiewe noem nie, al is, want 'n rekursiewe 829 00:41:30,610 --> 00:41:32,300 oproep sou hierdie funksie weer bel. 830 00:41:32,300 --> 00:41:41,460 So wat moet die volgende lyn van pseudokode wees? 831 00:41:41,460 --> 00:41:42,730 Anna. 832 00:41:42,730 --> 00:41:43,980 >> Publiek: die linkerkant. 833 00:41:43,980 --> 00:41:47,040 834 00:41:47,040 --> 00:41:47,590 >> JASON Hirsch: Wees spesifiek, al is. 835 00:41:47,590 --> 00:41:50,600 Dit is 'n binêre soek boom, so wat het die beheer van die linkerkant behels? 836 00:41:50,600 --> 00:41:51,890 >> Publiek: So knoop - 837 00:41:51,890 --> 00:41:53,342 Ek is jammer, wortel. 838 00:41:53,342 --> 00:41:55,306 En dan pyl links. 839 00:41:55,306 --> 00:41:59,234 840 00:41:59,234 --> 00:42:00,720 Knoop, knoop, jammer. 841 00:42:00,720 --> 00:42:01,978 Ek is nie behoorlik lees. 842 00:42:01,978 --> 00:42:05,700 Dit is bekend as knoop, reg? 843 00:42:05,700 --> 00:42:09,270 >> JASON Hirsch: Dit sal wortel genoem word in daardie funksie, maar een manier. 844 00:42:09,270 --> 00:42:10,925 Die linkerkant - ja? 845 00:42:10,925 --> 00:42:13,780 >> Publiek: As dit nie gelyk Ek is, dan gaan ons bel 846 00:42:13,780 --> 00:42:15,130 weer die funksie? 847 00:42:15,130 --> 00:42:15,490 >> JASON Hirsch: Dis reg. 848 00:42:15,490 --> 00:42:17,870 As dit nie gelyk i, ons gaan die funksie weer te bel. 849 00:42:17,870 --> 00:42:21,435 Maar watter kant van die boom gaan ons die funksie weer te bel? 850 00:42:21,435 --> 00:42:22,685 >> Publiek: Aan die linkerkant. 851 00:42:22,685 --> 00:42:25,932 852 00:42:25,932 --> 00:42:27,670 >> JASON Hirsch: Ons is nie altyd gaan om dit te noem links, indien dit 853 00:42:27,670 --> 00:42:29,190 nie gelyk nie. 854 00:42:29,190 --> 00:42:29,610 >> Publiek: Ag, jammer. 855 00:42:29,610 --> 00:42:31,200 'N beroep op die reg. 856 00:42:31,200 --> 00:42:33,680 >> JASON Hirsch: Ons wil weet spesifiek, al is - onthou, in 'n 857 00:42:33,680 --> 00:42:37,700 binêre soek boom om alles te die linkerkant is kleiner. 858 00:42:37,700 --> 00:42:40,460 Alles aan die regterkant kant is groter. 859 00:42:40,460 --> 00:42:43,990 So dit is net nie - ja, gaan voort. 860 00:42:43,990 --> 00:42:46,805 >> Publiek: As dit is minder as wat ek, dan - 861 00:42:46,805 --> 00:42:52,130 862 00:42:52,130 --> 00:42:53,380 As dit is aan die linkerkant - 863 00:42:53,380 --> 00:42:56,160 864 00:42:56,160 --> 00:42:58,606 >> JASON Hirsch: So as ri is minder as - 865 00:42:58,606 --> 00:43:01,854 866 00:43:01,854 --> 00:43:09,110 So as ons nommer is minder as wat ek, watter kant wil ons heen? 867 00:43:09,110 --> 00:43:15,120 >> Publiek: Ons wil gaan na die regterkant. 868 00:43:15,120 --> 00:43:16,250 >> JASON Hirsch: Ons wil gaan - 869 00:43:16,250 --> 00:43:19,210 laat my trek 'n vinnige boom. 870 00:43:19,210 --> 00:43:23,850 As dit is 5, sal dit wees 3. 871 00:43:23,850 --> 00:43:29,410 So as ri is minder as vyf, wat kant wil ons gaan? 872 00:43:29,410 --> 00:43:30,390 >> Publiek: Jammer, wat? 873 00:43:30,390 --> 00:43:33,190 >> JASON Hirsch: Ons getal is minder as die aantal ons 874 00:43:33,190 --> 00:43:34,710 soek nou by. 875 00:43:34,710 --> 00:43:35,890 >> Publiek: O, dan wil ons om te gaan na die linkerkant. 876 00:43:35,890 --> 00:43:36,240 Ja. 877 00:43:36,240 --> 00:43:36,920 Jammer. 878 00:43:36,920 --> 00:43:37,230 >> JASON Hirsch: Presies. 879 00:43:37,230 --> 00:43:38,480 Geen bekommernisse. 880 00:43:38,480 --> 00:43:41,020 In die binêre soek boom, alles laer is aan die linkerkant, 881 00:43:41,020 --> 00:43:42,110 groter is aan die regterkant. 882 00:43:42,110 --> 00:43:46,700 So as ons nommer is minder as die i Ons monitor - 883 00:43:46,700 --> 00:43:48,790 want jy sien in die knoop, dit het 'n I - 884 00:43:48,790 --> 00:43:50,040 dan kan jy wil om te gaan na die linkerkant. 885 00:43:50,040 --> 00:43:55,480 886 00:43:55,480 --> 00:43:56,720 >> En dit is 'n maklike een. 887 00:43:56,720 --> 00:44:01,700 Wat is dit die ander lyn van pseudokode ons nodig het om te skryf? 888 00:44:01,700 --> 00:44:02,910 Carlos? 889 00:44:02,910 --> 00:44:05,970 >> Publiek: dieselfde ding, jy moet net skakel dit tot 'n groter as teken 890 00:44:05,970 --> 00:44:07,420 en gaan na die regterkant. 891 00:44:07,420 --> 00:44:08,350 >> JASON Hirsch: Kan u sê dit nog een keer? 892 00:44:08,350 --> 00:44:11,640 >> Publiek: As ons nommer groter as ek, gaan na die regterkant. 893 00:44:11,640 --> 00:44:24,900 894 00:44:24,900 --> 00:44:26,690 >> JASON Hirsch: Uitstekend werk op die pseudokode. 895 00:44:26,690 --> 00:44:28,700 Kom ons doen dit in die werklike kode. 896 00:44:28,700 --> 00:44:33,280 En weer, hierdie pseudokode sal waarskynlik nie, want dit is 897 00:44:33,280 --> 00:44:35,480 korrek is, 50% op hierdie vraag. 898 00:44:35,480 --> 00:44:39,720 Maar dit pseudokode vertaal ook een een, in wese, in die kode. 899 00:44:39,720 --> 00:44:44,380 >> So laat ons dit doen in C. Wie kan gee my die eerste reël van die kode? 900 00:44:44,380 --> 00:44:48,390 Eintlik is die eerste, voordat ek doen dat, laat my trek - 901 00:44:48,390 --> 00:44:49,260 >> Publiek: Ek het 'n vraag. 902 00:44:49,260 --> 00:44:52,430 Hoekom het jy duik in die lyn wat ek vir jou gegee het? 903 00:44:52,430 --> 00:44:54,160 >> JASON Hirsch: Omdat Ek kon dit nie skryf nie. 904 00:44:54,160 --> 00:44:55,240 Ek weet nie. 905 00:44:55,240 --> 00:44:55,650 Jy is reg. 906 00:44:55,650 --> 00:44:57,780 Dat die lyn moet daar wees. 907 00:44:57,780 --> 00:45:11,600 908 00:45:11,600 --> 00:45:14,480 >> OK, hier is ons funksie. 909 00:45:14,480 --> 00:45:18,090 En laat my trek, ook, ons definisie van 'n knoop. 910 00:45:18,090 --> 00:45:23,320 911 00:45:23,320 --> 00:45:27,180 Wat gebeur as ons nie skryf typedef? 912 00:45:27,180 --> 00:45:30,240 Het enige iemand weet? 913 00:45:30,240 --> 00:45:32,570 >> Publiek: Dit sal nie stel. 914 00:45:32,570 --> 00:45:33,860 >> JASON Hirsch: Dit sou stel, ja. 915 00:45:33,860 --> 00:45:37,120 >> Publiek: Sal dit net een verklaar byvoorbeeld in plaas van om dit 'n nuwe 916 00:45:37,120 --> 00:45:39,840 tik jy kan verskeie verklaar gevalle van? 917 00:45:39,840 --> 00:45:41,700 >> JASON Hirsch: So dit sou nie weet nie - dit sal nie 918 00:45:41,700 --> 00:45:43,120 net verklaar 'n tipe. 919 00:45:43,120 --> 00:45:46,150 Jy kan nog steeds 'n baie nodes. 920 00:45:46,150 --> 00:45:48,070 >> Publiek: Maar sou ons nie hoef te skryf struct knoop elke keer? 921 00:45:48,070 --> 00:45:48,640 >> JASON Hirsch: Dis reg. 922 00:45:48,640 --> 00:45:50,960 Jy sal struct knoop te skryf elke keer, in plaas van net knoop. 923 00:45:50,960 --> 00:45:55,270 Maar met typedef, kan jy net skryf knoop elke keer. 924 00:45:55,270 --> 00:45:58,240 OK, wat nie gegee nie - ja, Avica. 925 00:45:58,240 --> 00:46:01,520 >> Publiek: As wortel gelyk gelykes nul, terugkeer onwaar. 926 00:46:01,520 --> 00:46:07,130 927 00:46:07,130 --> 00:46:09,490 >> JASON Hirsch: Groot, en dit is ons basis geval. 928 00:46:09,490 --> 00:46:11,200 Volgende lyn van kode. 929 00:46:11,200 --> 00:46:13,999 Iemand wat nie gegee my 'n reël van die kode nie? 930 00:46:13,999 --> 00:46:14,945 Ja. 931 00:46:14,945 --> 00:46:23,360 >> Publiek: Root pyl i gelyk is gelyk aan i. 932 00:46:23,360 --> 00:46:27,260 Dan terug waar. 933 00:46:27,260 --> 00:46:29,162 >> JASON Hirsch: Groot. 934 00:46:29,162 --> 00:46:32,048 Volgende lyn? 935 00:46:32,048 --> 00:46:32,790 Ja. 936 00:46:32,790 --> 00:46:34,010 Iemand anders? 937 00:46:34,010 --> 00:46:36,774 En dan kan jy gaan volgende. 938 00:46:36,774 --> 00:46:44,820 >> Publiek: want as root pyl Ek is minder as wat ek terugkeer 939 00:46:44,820 --> 00:46:47,737 funksie genoem vonds wortel - 940 00:46:47,737 --> 00:46:50,611 >> JASON Hirsch: Jammer. 941 00:46:50,611 --> 00:46:56,272 >> Publiek: Return vonds wortel wys na links komma i. 942 00:46:56,272 --> 00:47:01,760 943 00:47:01,760 --> 00:47:08,440 >> JASON Hirsch: So as ri groter as die ding in die boom, ons wil 944 00:47:08,440 --> 00:47:09,573 links gaan? 945 00:47:09,573 --> 00:47:11,790 >> Publiek: Nee, ek het dit aangeskakel. 946 00:47:11,790 --> 00:47:13,040 >> JASON Hirsch: Watter een? 947 00:47:13,040 --> 00:47:16,310 948 00:47:16,310 --> 00:47:16,950 >> Publiek: Nee, ja. 949 00:47:16,950 --> 00:47:19,050 Ek het 'n minder as daar teken. 950 00:47:19,050 --> 00:47:22,890 >> JASON Hirsch: Right, as ri is minder as wat in die wortel - 951 00:47:22,890 --> 00:47:25,660 ons huidige wortel - dan moet ons wil om te gaan na die linkerkant. 952 00:47:25,660 --> 00:47:26,960 En wat is die laaste reël, het jy? 953 00:47:26,960 --> 00:47:30,930 >> Publiek: Basies dieselfde ding, Behalwe skakel die groter as of 954 00:47:30,930 --> 00:47:34,690 gelyk aan minder as en van links na regs. 955 00:47:34,690 --> 00:47:43,590 956 00:47:43,590 --> 00:47:43,680 >> JASON Hirsch: Uitstekende. 957 00:47:43,680 --> 00:47:48,430 Het enige iemand enige vrae oor hierdie? 958 00:47:48,430 --> 00:47:52,560 So 'n paar ander dinge wat sou het korrek is, is dat 959 00:47:52,560 --> 00:47:53,810 kon die-ltiff wees. 960 00:47:53,810 --> 00:47:56,520 961 00:47:56,520 --> 00:47:59,520 Raai, tegnies, nie een van hierdie regtig moet ook-ltiff wees. 962 00:47:59,520 --> 00:48:00,950 >> Ook, daar is waarskynlik net een geval hier. 963 00:48:00,950 --> 00:48:02,380 So dit is waarskynlik jou laaste geval. 964 00:48:02,380 --> 00:48:04,000 Jy hoef nie eens dat-ltiff. 965 00:48:04,000 --> 00:48:06,160 Maar waarskynlik goed te skryf dit duidelik wees. 966 00:48:06,160 --> 00:48:06,660 Ja. 967 00:48:06,660 --> 00:48:09,200 >> Publiek: So jy dink nie die toets - as ons foute maak, byvoorbeeld, 968 00:48:09,200 --> 00:48:11,725 in sintaksis - 969 00:48:11,725 --> 00:48:13,990 bietjie sintaksfoute - 970 00:48:13,990 --> 00:48:17,810 Hoe is dit raak geneem in die toets? 971 00:48:17,810 --> 00:48:21,300 >> JASON Hirsch: algemeen op die toets, klein sintaksfoute of klein 972 00:48:21,300 --> 00:48:24,010 styl foute nie verloor jy nie punte. 973 00:48:24,010 --> 00:48:26,610 So as jy 'n kommapunt vergeet hier, sou dit OK wees. 974 00:48:26,610 --> 00:48:30,290 As jy vergeet het hierdie hakies te sluit, dat OK sal wees. 975 00:48:30,290 --> 00:48:34,880 >> Groot sintaksfoute wat verander die funksionele betekenis van jou kode 976 00:48:34,880 --> 00:48:37,600 dramaties, kan jy geneem uit punte vir. 977 00:48:37,600 --> 00:48:40,330 Of oor die algemeen, net gradering jy op die vraag of jou 978 00:48:40,330 --> 00:48:42,150 kode funksies, selfs - 979 00:48:42,150 --> 00:48:44,830 nie sy ontwerp so baie, en nie sy styl. 980 00:48:44,830 --> 00:48:50,780 981 00:48:50,780 --> 00:48:55,480 >> Kom ons kyk nou kodeer 'n iteratiewe weergawe van vonds. 982 00:48:55,480 --> 00:49:00,400 983 00:49:00,400 --> 00:49:03,450 So dit gaan redelik soortgelyk, maar Daar is seker gaan wees 984 00:49:03,450 --> 00:49:06,250 'n paar belangrike verskille. 985 00:49:06,250 --> 00:49:09,160 Maar ons pseudokode kan waarskynlik gaan - 986 00:49:09,160 --> 00:49:11,610 Ons kan nog steeds een lyn van die pseudokode en uit te vind wat die 987 00:49:11,610 --> 00:49:14,160 lyn is in hierdie geval. 988 00:49:14,160 --> 00:49:18,010 >> So in 'n iteratiewe weergawe, wat dink jy, Julia, moet 989 00:49:18,010 --> 00:49:19,260 wees die eerste reël? 990 00:49:19,260 --> 00:49:23,100 991 00:49:23,100 --> 00:49:26,920 >> Publiek: Weereens, in iteratiewe boolean, wat jy nodig het om 'n lus vir die, reg? 992 00:49:26,920 --> 00:49:27,660 >> JASON Hirsch: OK. 993 00:49:27,660 --> 00:49:38,480 >> Publiek: So vir die wil, k, vir x gelyk aan 0, x is minder as i. 994 00:49:38,480 --> 00:49:42,260 Of nee, x is minder as die grootte van die boom. 995 00:49:42,260 --> 00:49:42,760 >> JASON Hirsch: Die boom. 996 00:49:42,760 --> 00:49:46,660 Sodat ons nie regtig weet nie die grootte van die boom, en ons weet nie regtig vir 997 00:49:46,660 --> 00:49:48,900 hoeveel keer kan ons gaan, so wat is 'n verskillende tipe lus wat dalk 998 00:49:48,900 --> 00:49:50,150 beter in hierdie geval? 999 00:49:50,150 --> 00:49:53,250 1000 00:49:53,250 --> 00:49:55,244 >> Publiek: As anders? 1001 00:49:55,244 --> 00:49:57,070 >> JASON Hirsch: As anders kan nie 'n lus. 1002 00:49:57,070 --> 00:49:58,935 So, wat is 'n soort van lus kan ons net gaan totdat 'n geval is met? 1003 00:49:58,935 --> 00:50:07,250 1004 00:50:07,250 --> 00:50:11,560 Wat is die enigste ander tipe lus in C Behalwe 'n lus vir? 1005 00:50:11,560 --> 00:50:11,930 >> Publiek: Terwyl. 1006 00:50:11,930 --> 00:50:13,380 >> JASON Hirsch: Terwyl, presies. 1007 00:50:13,380 --> 00:50:16,430 In 'n rukkie lus, doen nie nodig het om te weet hoe om - 1008 00:50:16,430 --> 00:50:18,450 'n rukkie lus en lus kan doen om die presies dieselfde ding, maar die lekker ding 1009 00:50:18,450 --> 00:50:21,500 oor 'n rukkie lus is wat ons nodig het nie om te weet hoe groot ons boom is. 1010 00:50:21,500 --> 00:50:23,060 So ons gaan om te gaan tot wat? 1011 00:50:23,060 --> 00:50:25,880 1012 00:50:25,880 --> 00:50:28,032 >> Publiek: totdat dit gelyk die grootte van - 1013 00:50:28,032 --> 00:50:32,320 >> JASON Hirsch: Wel, dit is baie soortgelyk aan ons rekursiewe geval. 1014 00:50:32,320 --> 00:50:33,360 So - 1015 00:50:33,360 --> 00:50:36,470 >> Publiek: Terwyl wortel Ek is nie gelyk aan i. 1016 00:50:36,470 --> 00:50:37,620 >> JASON Hirsch: Dit is baie naby. 1017 00:50:37,620 --> 00:50:39,430 Terwyl wortel i - 1018 00:50:39,430 --> 00:50:40,610 Kom ons probeer. 1019 00:50:40,610 --> 00:50:41,180 Ek dink nie [onhoorbaar] 1020 00:50:41,180 --> 00:50:43,026 waar wortel i nie gelyk i. 1021 00:50:43,026 --> 00:50:47,380 1022 00:50:47,380 --> 00:50:49,460 Ons kan dit nodig het om te verander in 'n bietjie bietjie, maar dit klink soos dit is redelik 1023 00:50:49,460 --> 00:50:50,160 goed, vir nou. 1024 00:50:50,160 --> 00:50:51,710 So ons sal dit doen. 1025 00:50:51,710 --> 00:50:55,660 >> Ook, onthou, ons nie kan aanvaar per die vraag. 1026 00:50:55,660 --> 00:50:57,880 Jy aanvaar nie dat die wortel sal wees nie-nul. 1027 00:50:57,880 --> 00:51:01,914 So, wat dink jy het die baie eerste ding wat ons moet doen, is om? 1028 00:51:01,914 --> 00:51:02,770 >> Publiek: dieselfde doen net ding as tevore. 1029 00:51:02,770 --> 00:51:05,260 As die wortel gelyk gelykes nul, terugkeer onwaar. 1030 00:51:05,260 --> 00:51:11,030 1031 00:51:11,030 --> 00:51:12,130 >> JASON Hirsch: Groot. 1032 00:51:12,130 --> 00:51:13,820 So kan dit nul. 1033 00:51:13,820 --> 00:51:15,810 So ons wil ontslae te raak te kry van dit dadelik. 1034 00:51:15,810 --> 00:51:19,560 En dan gaan ons kyk of wortel i nie gelyk i. 1035 00:51:19,560 --> 00:51:24,480 So, sê ons soek in die boom vir 3, wortel i nie gelyk i, nou 1036 00:51:24,480 --> 00:51:25,950 ons is in ons, terwyl lus. 1037 00:51:25,950 --> 00:51:27,500 Wat wil ons doen? 1038 00:51:27,500 --> 00:51:32,320 1039 00:51:32,320 --> 00:51:35,430 En weer, dit gaan mooi wees soortgelyk aan ons rekursiewe weergawe. 1040 00:51:35,430 --> 00:51:36,230 Ja. 1041 00:51:36,230 --> 00:51:40,470 >> Publiek: So jy wil wil Itereer, of hou die boom so lank as wat 1042 00:51:40,470 --> 00:51:42,400 Die wortel is nie gelyk aan nul. 1043 00:51:42,400 --> 00:51:45,120 1044 00:51:45,120 --> 00:51:46,640 >> JASON Hirsch: So lank as wat die wortel is nie gelyk aan null? 1045 00:51:46,640 --> 00:51:50,200 >> Publiek: Die wortel Dash i is nie gelyk aan nul. 1046 00:51:50,200 --> 00:51:51,220 Net die wortel, ja. 1047 00:51:51,220 --> 00:51:52,920 Soos 'n lang as die wortel nie gelyk aan null. 1048 00:51:52,920 --> 00:51:54,240 >> JASON Hirsch: So jy wil om dit te verander in wortel 1049 00:51:54,240 --> 00:51:56,590 nie gelyk nul? 1050 00:51:56,590 --> 00:51:59,020 >> Publiek: Ja. 1051 00:51:59,020 --> 00:52:00,800 >> Publiek: Ons kan kombineer hierdie, reg? 1052 00:52:00,800 --> 00:52:02,990 Ons hoef nie die indien aanvanklik. 1053 00:52:02,990 --> 00:52:05,180 >> JASON Hirsch: OK, so as ons moenie - 1054 00:52:05,180 --> 00:52:08,140 as ons kombineer hulle, so ons gaan doen terwyl wortel nie gelyk nul, en 1055 00:52:08,140 --> 00:52:10,800 en as die wortel gebeur nul by die wees begin, wat doen ons hier? 1056 00:52:10,800 --> 00:52:11,450 >> Publiek: Terug onwaar. 1057 00:52:11,450 --> 00:52:12,730 >> JASON Hirsch: Groot. 1058 00:52:12,730 --> 00:52:14,110 So beide maniere waarskynlik sou gewerk het. 1059 00:52:14,110 --> 00:52:15,645 Dit is 'n ander manier, en dit kombineer dit. 1060 00:52:15,645 --> 00:52:18,950 Maar weereens, as jy gedoen het een manier, ons is gaan nie af te neem ontwerp 1061 00:52:18,950 --> 00:52:19,800 punte op die quiz. 1062 00:52:19,800 --> 00:52:21,020 Maar dit lyk goed. 1063 00:52:21,020 --> 00:52:23,940 >> Dus, terwyl die wortel nie gelyk nul, wat is die eerste 1064 00:52:23,940 --> 00:52:25,400 ding wat ons wil hê om seker te maak? 1065 00:52:25,400 --> 00:52:26,330 Iemand anders? 1066 00:52:26,330 --> 00:52:29,720 Nul, wat is die eerste ding? 1067 00:52:29,720 --> 00:52:32,850 >> Publiek: As ri is minder as - 1068 00:52:32,850 --> 00:52:36,140 O, ek dink, as ons reeds gevind dat dit in die wortel. 1069 00:52:36,140 --> 00:52:40,830 So as root pyl i is gelyk aan i - 1070 00:52:40,830 --> 00:52:40,990 >> JASON Hirsch: Jammer? 1071 00:52:40,990 --> 00:52:45,840 >> Publiek: As wortel pyl Ek is gelyk gelyk i - 1072 00:52:45,840 --> 00:52:47,090 >> JASON Hirsch: Wat doen ons? 1073 00:52:47,090 --> 00:52:50,300 1074 00:52:50,300 --> 00:52:51,550 >> Publiek: Terug waar. 1075 00:52:51,550 --> 00:52:58,850 1076 00:52:58,850 --> 00:52:59,280 >> JASON Hirsch: Groot. 1077 00:52:59,280 --> 00:53:00,530 En wat is volgende? 1078 00:53:00,530 --> 00:53:04,510 1079 00:53:04,510 --> 00:53:06,843 Jeff, wat is die volgende lyn van die kode? 1080 00:53:06,843 --> 00:53:16,190 >> Publiek: As Ek is minder as root pyl i, dan wortel gelyk wortel pyl links. 1081 00:53:16,190 --> 00:53:21,550 >> JASON Hirsch: wortel gelykes wortel pyl links. 1082 00:53:21,550 --> 00:53:24,530 So dit is waarskynlik die grootste verskil hier in hierdie iteratiewe 1083 00:53:24,530 --> 00:53:26,600 weergawe in teenstelling met die rekursiewe weergawe. 1084 00:53:26,600 --> 00:53:28,970 Die rekursiewe weergawe, ons bel weer die funksie. 1085 00:53:28,970 --> 00:53:32,640 Ons sal die opdatering wortel toe noem ons die nuwe funksie. 1086 00:53:32,640 --> 00:53:34,170 Hier is ons nie 'n beroep 'n nuwe funksie. 1087 00:53:34,170 --> 00:53:37,610 Ons is eenvoudig net die opdatering wortel in hierdie funksie. 1088 00:53:37,610 --> 00:53:38,880 Dit is uitstekend. 1089 00:53:38,880 --> 00:53:40,730 En wat is die laaste reël van die kode? 1090 00:53:40,730 --> 00:53:43,950 1091 00:53:43,950 --> 00:53:44,880 Ja, Mario? 1092 00:53:44,880 --> 00:53:48,290 >> Publiek: Else wortel gelykes wortel pyl reg. 1093 00:53:48,290 --> 00:53:49,492 >> JASON Hirsch: Jammer? 1094 00:53:49,492 --> 00:53:52,340 >> Publiek: Root gelykes wortel pyl reg. 1095 00:53:52,340 --> 00:53:55,590 1096 00:53:55,590 --> 00:53:57,140 >> JASON Hirsch: jy kan ook skryf iets soos hierdie? 1097 00:53:57,140 --> 00:54:02,786 1098 00:54:02,786 --> 00:54:03,890 >> Publiek: Ek het geen idee nie. 1099 00:54:03,890 --> 00:54:05,140 >> JASON Hirsch: Jy kan nie. 1100 00:54:05,140 --> 00:54:07,302 1101 00:54:07,302 --> 00:54:08,270 Jy kan dit nie doen plus gelykes. 1102 00:54:08,270 --> 00:54:10,780 OK, so dit lyk goed. 1103 00:54:10,780 --> 00:54:13,620 Hoekom het ons nie net doen wat dit skoon te maak. 1104 00:54:13,620 --> 00:54:15,220 Dit lyk baie goed, en dit sal werk. 1105 00:54:15,220 --> 00:54:16,920 En ons sou uitbreek. 1106 00:54:16,920 --> 00:54:21,460 >> As wortel links was leeg of wortel reg was nul, sou ons hier kom. 1107 00:54:21,460 --> 00:54:22,470 Wortel gelyk aan nul sou wees. 1108 00:54:22,470 --> 00:54:24,270 Ons wil breek uit ons lus, en ons wil terugkeer onwaar. 1109 00:54:24,270 --> 00:54:26,280 So wanneer ons breek uit die lus, ons terugkeer onwaar. 1110 00:54:26,280 --> 00:54:29,520 1111 00:54:29,520 --> 00:54:32,793 >> En weer, die 'n rukkie lus was volmaak hier omdat ons nie weet hoe om 1112 00:54:32,793 --> 00:54:33,850 groot ons boom is. 1113 00:54:33,850 --> 00:54:36,460 Ons het probeer om die te skryf vir lus, maar ons besef jy het om uit te vind hoe 1114 00:54:36,460 --> 00:54:37,410 groot dit is voor die tyd. 1115 00:54:37,410 --> 00:54:38,720 Ja. 1116 00:54:38,720 --> 00:54:41,790 >> Publiek: As dit was nie 'n binêre Soek boom, sou dit werklik wiskunde-y 1117 00:54:41,790 --> 00:54:44,220 om dit te iteratief skryf, reg? 1118 00:54:44,220 --> 00:54:47,170 Soos, as dit was 'n boom, maar nie noodwendig nie - 1119 00:54:47,170 --> 00:54:49,730 so dit was nie al kleiner aan die linkerkant, en al groter op die regterkant. 1120 00:54:49,730 --> 00:54:52,540 Dit sou werklik moeilik te Itereer oor dit, reg? 1121 00:54:52,540 --> 00:54:55,720 Ons wil hê om te red wat vroeër in die boom en terug te gaan, 1122 00:54:55,720 --> 00:54:56,970 en dinge soos dat. 1123 00:54:56,970 --> 00:54:59,690 1124 00:54:59,690 --> 00:55:02,010 >> JASON Hirsch: As dit was nie 'n binêre Soek boom, al was dit net 'n 1125 00:55:02,010 --> 00:55:04,740 boom en dinge was nie gesorteer soos hierdie - 1126 00:55:04,740 --> 00:55:07,440 en ons besef vroeër toe Anna is ons te help wat maak dit 1127 00:55:07,440 --> 00:55:08,800 gesorteer help ons om 'n baie - 1128 00:55:08,800 --> 00:55:12,610 ons sal moet, ja, altyd red waar ons was voorheen. 1129 00:55:12,610 --> 00:55:14,430 Maar daar kan 'n baie wees waar ons was previouslys. 1130 00:55:14,430 --> 00:55:17,730 Daar kan 'n baie ouer nodes wees. 1131 00:55:17,730 --> 00:55:22,530 >> Waarskynlik die beste manier om dit te doen sou wees om te hou stoot dinge op 'n 1132 00:55:22,530 --> 00:55:24,170 tipe stapel of tou. 1133 00:55:24,170 --> 00:55:26,030 Jy sal nooit nodig om dit te kodeer want dit is 'n harde probleem. 1134 00:55:26,030 --> 00:55:30,820 Maar jy 'n paar dinge te stoot op 'n stapel of tou en dan pop dit af, en 1135 00:55:30,820 --> 00:55:31,890 dan evalueer hulle. 1136 00:55:31,890 --> 00:55:34,200 >> En dan het 'n paar ander ding waar jy is eintlik om die nodes, en 1137 00:55:34,200 --> 00:55:36,090 skep dan dat en dan soek deur dit. 1138 00:55:36,090 --> 00:55:38,700 Dit is dalk die beste manier om dit te doen. 1139 00:55:38,700 --> 00:55:42,410 OK, enige vrae oor hierdie probleem? 1140 00:55:42,410 --> 00:55:44,670 >> Publiek: Dit is 'n verwante noot. 1141 00:55:44,670 --> 00:55:50,460 Sal ons 'n lopie tye te vergelyk vir hash tabelle, binêre 1142 00:55:50,460 --> 00:55:52,160 Soek bome, ensovoorts? 1143 00:55:52,160 --> 00:55:54,310 >> JASON Hirsch: Waarskynlik. 1144 00:55:54,310 --> 00:55:56,150 So laat ons doen wat regtig vinnig. 1145 00:55:56,150 --> 00:55:58,490 Begin tyd vir hash tafel - 1146 00:55:58,490 --> 00:55:59,090 wat is die ander? 1147 00:55:59,090 --> 00:56:00,050 Binêre boom? 1148 00:56:00,050 --> 00:56:02,920 >> Publiek: Link lyste. 1149 00:56:02,920 --> 00:56:04,780 >> JASON Hirsch: OK, kom ons doen insetsel. 1150 00:56:04,780 --> 00:56:09,980 Wat is die groot O van insetsel op 'n hash tafel? 1151 00:56:09,980 --> 00:56:13,080 1152 00:56:13,080 --> 00:56:15,285 Wat is die aannames jy maak? 1153 00:56:15,285 --> 00:56:17,760 >> Publiek: Jy inbring by die die begin van die skakel lys. 1154 00:56:17,760 --> 00:56:19,860 >> JASON Hirsch: Waarskynlik die eerste aanname is dat daar geen botsings. 1155 00:56:19,860 --> 00:56:22,340 As daar geen botsings, dan die invoeging tyd is een. 1156 00:56:22,340 --> 00:56:26,560 Indien daar botsings, en jy doen aparte aaneenskakeling en die inbring 1157 00:56:26,560 --> 00:56:31,880 aan die begin van die skakel lys dan voeg is ook konstant. 1158 00:56:31,880 --> 00:56:34,700 >> As jy 'n hutstabel doen nie, maar jy 'n ander metode van hantering 1159 00:56:34,700 --> 00:56:36,040 met botsings, wat is 'n ander metode? 1160 00:56:36,040 --> 00:56:41,580 1161 00:56:41,580 --> 00:56:42,960 Wat se is 'n ander metode van die hantering van 1162 00:56:42,960 --> 00:56:44,205 botsing in 'n gemors tafel? 1163 00:56:44,205 --> 00:56:44,915 >> Publiek: Lineêre programmering. 1164 00:56:44,915 --> 00:56:45,540 >> JASON Hirsch: Lineêre programmering. 1165 00:56:45,540 --> 00:56:47,770 So ons gaan hou soek vir die volgende oop plek. 1166 00:56:47,770 --> 00:56:50,390 Dit is nie konstant te voeg tyd. 1167 00:56:50,390 --> 00:56:52,266 Jy kan hê om deur te gaan die hele tafel, sodat 1168 00:56:52,266 --> 00:56:53,936 kon groot O van n wees. 1169 00:56:53,936 --> 00:56:54,740 Ja. 1170 00:56:54,740 --> 00:56:57,690 >> Publiek: Anders net chaining? 1171 00:56:57,690 --> 00:57:00,160 >> JASON Hirsch: Ons het afsonderlike aaneenskakeling. 1172 00:57:00,160 --> 00:57:00,720 Dit was die eerste een. 1173 00:57:00,720 --> 00:57:01,560 Dit is wat die skakel lys. 1174 00:57:01,560 --> 00:57:03,720 Die fancy naam is aparte aaneenskakeling. 1175 00:57:03,720 --> 00:57:06,880 Dit kan enige tipe van lys struktuur ons gebeur te doen in skakel lys. 1176 00:57:06,880 --> 00:57:10,490 >> So weer, voeg op 'n hash tafel kon konstante tyd. 1177 00:57:10,490 --> 00:57:13,160 Wat van inplanting op 'n stapelaar tou? 1178 00:57:13,160 --> 00:57:19,260 1179 00:57:19,260 --> 00:57:20,640 >> Publiek: Is dit nie konstant? 1180 00:57:20,640 --> 00:57:21,530 >> JASON Hirsch: Dit is konstante tyd. 1181 00:57:21,530 --> 00:57:23,420 Jy is net besig om dit op. 1182 00:57:23,420 --> 00:57:24,120 OK. 1183 00:57:24,120 --> 00:57:25,380 Inplanting, wat was die ander kinders? 1184 00:57:25,380 --> 00:57:27,100 Op 'n probeer? 1185 00:57:27,100 --> 00:57:30,252 Wat is 'n groot O van plasing op 'n probeer? 1186 00:57:30,252 --> 00:57:32,808 >> Publiek: Duur konstant. 1187 00:57:32,808 --> 00:57:34,560 Lengte van die langste - 1188 00:57:34,560 --> 00:57:36,998 die lengte van die woord jy inbring. 1189 00:57:36,998 --> 00:57:38,210 >> JASON Hirsch: Jammer? 1190 00:57:38,210 --> 00:57:39,120 Wag, so wat het ek hoor? 1191 00:57:39,120 --> 00:57:40,260 Jy sê - wat het jy gesê? 1192 00:57:40,260 --> 00:57:41,650 Wat was jou antwoord, Marcus? 1193 00:57:41,650 --> 00:57:43,640 >> Publiek: Die lengte van die woord jy inbring in karakters, 1194 00:57:43,640 --> 00:57:45,480 die veronderstelling dat dit is 'n karakter probeer. 1195 00:57:45,480 --> 00:57:46,840 >> JASON Hirsch: OK, so die lengte van die woord. 1196 00:57:46,840 --> 00:57:49,500 Ons sal 'n aanname te maak dat dit is 'n string van die karakters. 1197 00:57:49,500 --> 00:57:51,930 Jy sê iets anders, al is. 1198 00:57:51,930 --> 00:57:55,490 Jy het gesê lengte van die langste woord. 1199 00:57:55,490 --> 00:57:57,600 >> Publiek: Dit is net konstante, reg? 1200 00:57:57,600 --> 00:57:58,440 >> JASON Hirsch: Hoekom sou dit konstant wees? 1201 00:57:58,440 --> 00:58:00,970 >> Publiek: Soos, as jy gebruik groot O notasie, dan is dit nie wissel op grond 1202 00:58:00,970 --> 00:58:04,680 op die aantal van die dinge wat is reeds in die drie. 1203 00:58:04,680 --> 00:58:07,344 >> JASON Hirsch: sodat ons sê dit is konstante tyd. 1204 00:58:07,344 --> 00:58:11,840 Dit is konstant te voeg, en dit is omdat hierdie idee - 1205 00:58:11,840 --> 00:58:14,820 sê ons het 'n woord wat 45, of 'n woord wat 60, wat 1206 00:58:14,820 --> 00:58:16,800 het 'n konstante getal is. 1207 00:58:16,800 --> 00:58:21,050 En dit sal net ingevoeg word in konstante tyd. 1208 00:58:21,050 --> 00:58:26,060 >> In die praktyk egter, sou dit nie wees nie, natuurlik, gebeur dit in een millisekonde, 1209 00:58:26,060 --> 00:58:26,590 byvoorbeeld. 1210 00:58:26,590 --> 00:58:28,880 Maar ons sou sê groot O konstant vir 'n drie. 1211 00:58:28,880 --> 00:58:31,330 En dit is een van sy grootste voordele. 1212 00:58:31,330 --> 00:58:33,330 >> Wat van opname in 'n skakel lys? 1213 00:58:33,330 --> 00:58:37,220 Net 'n generiese, gesorteer skakel lys? 1214 00:58:37,220 --> 00:58:37,700 Ja. 1215 00:58:37,700 --> 00:58:38,530 >> Publiek: Ek het 'n vraag. 1216 00:58:38,530 --> 00:58:42,670 Op die toets, sou hulle ooit ons vra om die voeg die tyd wat vier stappe, 1217 00:58:42,670 --> 00:58:43,270 of iets? 1218 00:58:43,270 --> 00:58:44,300 Of is dit net - 1219 00:58:44,300 --> 00:58:47,670 wanneer jy sê inplanting tyd is een, dit beteken net konstante tyd? 1220 00:58:47,670 --> 00:58:49,770 >> JASON Hirsch: Ja, hulle sal altyd vra, is dit groot O van n? 1221 00:58:49,770 --> 00:58:51,440 Big O log n? 1222 00:58:51,440 --> 00:58:53,960 N vierkantig konstant. 1223 00:58:53,960 --> 00:58:56,520 Dit is werklik die enigste wat jy nodig het om te weet. 1224 00:58:56,520 --> 00:58:58,420 Wat van inplanting op gesorteer skakel lys? 1225 00:58:58,420 --> 00:58:59,440 >> Publiek: Ek het 'n vraag - 1226 00:58:59,440 --> 00:58:59,980 'n vraag - 1227 00:58:59,980 --> 00:59:01,060 >> JASON Hirsch: Wat is die antwoord op die vraag, al is? 1228 00:59:01,060 --> 00:59:02,120 >> Publiek: Wag, wat het jy vra? 1229 00:59:02,120 --> 00:59:06,750 >> JASON Hirsch: Wat is 'n groot O van opname in 'n gesorteer skakel lys? 1230 00:59:06,750 --> 00:59:07,070 >> Publiek: Een? 1231 00:59:07,070 --> 00:59:09,400 Geen Wag, nee wag, n. 1232 00:59:09,400 --> 00:59:11,420 >> JASON Hirsch: N. Behalwe die skakel lys. 1233 00:59:11,420 --> 00:59:12,706 En wat was jou vraag? 1234 00:59:12,706 --> 00:59:16,440 >> Publiek: So sal jy skryf o k of o van 1 vir die - 1235 00:59:16,440 --> 00:59:18,150 >> JASON Hirsch: Oh. 1236 00:59:18,150 --> 00:59:21,830 Ek sou skryf o 1, waarskynlik. 1237 00:59:21,830 --> 00:59:24,160 Daar was 'n ander data struktuur dat 'n goeie sou gewees het. 1238 00:59:24,160 --> 00:59:25,730 Tree, binêre soek boom. 1239 00:59:25,730 --> 00:59:27,510 Wat se inplanting op 'n binêre soek boom? 1240 00:59:27,510 --> 00:59:31,190 1241 00:59:31,190 --> 00:59:33,900 >> GEHOOR: Teken. 1242 00:59:33,900 --> 00:59:39,260 >> JASON Hirsch: So, wat is die ergste geval in 'n binêre soek boom? 1243 00:59:39,260 --> 00:59:45,350 So as ons gebeur te begin op 5, en elke getal is groter as 5 is, dan 1244 00:59:45,350 --> 00:59:48,760 ons het 5, 7, 9, 11, ensovoorts. 1245 00:59:48,760 --> 00:59:52,255 In hierdie geval, dit is basies net 'n skakel lys, en ons moet almal in te voeg 1246 00:59:52,255 --> 00:59:52,680 die pad aan die einde. 1247 00:59:52,680 --> 00:59:54,350 So dit is groot O van n. 1248 00:59:54,350 --> 00:59:57,720 >> Dit kan ons ergste geval op 'n binêre soek boom. 1249 00:59:57,720 --> 01:00:00,890 Dit is duidelik dat, sou jy nooit bou 'n binêre soek boom met 5 in die 1250 01:00:00,890 --> 01:00:04,270 middel, met die wete 5 sal wees om die laagste getal. 1251 01:00:04,270 --> 01:00:08,030 Maar dit kan wees, as jy van nuuts af begin. 1252 01:00:08,030 --> 01:00:10,980 Enige vrae oor hierdie voor ek beweeg na 'n ander vraag? 1253 01:00:10,980 --> 01:00:11,560 Dit was 'n goeie vraag. 1254 01:00:11,560 --> 01:00:15,100 Ek wil weet groot O van - 1255 01:00:15,100 --> 01:00:18,620 >> Publiek: Wat soek Vir diegene vier? 1256 01:00:18,620 --> 01:00:20,400 >> JASON Hirsch: Beslis ons het soek-en sorteer. 1257 01:00:20,400 --> 01:00:22,160 Ons het al die algoritmes, reg. 1258 01:00:22,160 --> 01:00:23,390 Wag, was dat vir Quiz 1? 1259 01:00:23,390 --> 01:00:23,980 Is wat gedek - 1260 01:00:23,980 --> 01:00:25,860 het jy reeds dat vraag op Quiz 1? 1261 01:00:25,860 --> 01:00:29,650 Die groot O looptyd van binêre soek, voeg soort, borrel soort? 1262 01:00:29,650 --> 01:00:30,160 >> Publiek: Ja. 1263 01:00:30,160 --> 01:00:32,790 >> JASON Hirsch: As jy het wat vraag op Quiz 0, is die kans jy sal nie 1264 01:00:32,790 --> 01:00:35,180 kry presies dieselfde vraag op Quiz 1. 1265 01:00:35,180 --> 01:00:36,300 Dalk nog goeie diegene wees om te weet. 1266 01:00:36,300 --> 01:00:38,520 Jy moet hopelik weet GH reeds. 1267 01:00:38,520 --> 01:00:40,740 >> Maar ander logaritmiese Runtimes is waarskynlik goed om te weet. 1268 01:00:40,740 --> 01:00:42,890 Dinge wat nie gedek op Quiz 0. 1269 01:00:42,890 --> 01:00:47,300 Soos al hierdie operateurs op hierdie abstrakte datatipes. 1270 01:00:47,300 --> 01:00:50,760 >> OK, kom ons beweeg aan. 1271 01:00:50,760 --> 01:00:52,190 Hierdie een moet wees redelik vinnig. 1272 01:00:52,190 --> 01:00:56,170 En dit is 'n nuwe taal wat ons nie het nie eintlik gekodeerde voor. 1273 01:00:56,170 --> 01:00:59,300 Dit is 'n vraag vra te kode in PHP. 1274 01:00:59,300 --> 01:01:01,950 So kyk na die PHP array hieronder. 1275 01:01:01,950 --> 01:01:06,150 Skryf PHP en / of HTML kode sodanig dat dit uitgange 'n twee-kolom tafel met TFS 1276 01:01:06,150 --> 01:01:08,810 name en huise. 1277 01:01:08,810 --> 01:01:11,600 >> Jy het nog nooit dit gedoen het voor, hierdie spesifieke probleem. 1278 01:01:11,600 --> 01:01:16,270 Maar dit moet baie vertroud te wees wat jy gedoen het in die probleem gestel 7. 1279 01:01:16,270 --> 01:01:21,250 So ek sou bereid wees om te wed jy sal wees gevra om iets te kode in PHP wat 1280 01:01:21,250 --> 01:01:23,880 is baie soortgelyk aan wat jy het in die probleem gestel 7. 1281 01:01:23,880 --> 01:01:26,300 >> Eerstens, skikking is nie daardie spesifieke. 1282 01:01:26,300 --> 01:01:28,140 Watter tipe skikking is dit? 1283 01:01:28,140 --> 01:01:29,080 >> Publiek: Assosiatiewe. 1284 01:01:29,080 --> 01:01:31,250 >> JASON Hirsch: Dit is ' 'n assosiatiewe skikking. 1285 01:01:31,250 --> 01:01:33,750 En wat is die verskil tussen 'n assosiatiewe skikking en 'n voorwerp? 1286 01:01:33,750 --> 01:01:41,780 1287 01:01:41,780 --> 01:01:44,857 >> Publiek: 'n voorwerp reeks het 'n indeks heelgetalle, en 'n assosiatiewe skikking 1288 01:01:44,857 --> 01:01:47,814 is 'n indeks van 'n string, of iets soos dit. 1289 01:01:47,814 --> 01:01:50,570 1290 01:01:50,570 --> 01:01:54,880 >> JASON Hirsch: So 'n verskeidenheid van voorwerpe indekse van sou hê 1291 01:01:54,880 --> 01:01:57,090 heelgetalle, maar 'n voorwerp het velde. 1292 01:01:57,090 --> 01:02:01,590 Dit het die velde name soos noem, huis, student. 1293 01:02:01,590 --> 01:02:03,720 Het jy 'n idee? 1294 01:02:03,720 --> 01:02:06,630 >> Publiek: Wel, assosiatiewe skikking is in PHP, reg? 1295 01:02:06,630 --> 01:02:07,880 En voorwerp in JavaScript? 1296 01:02:07,880 --> 01:02:12,330 1297 01:02:12,330 --> 01:02:14,820 >> JASON Hirsch: Honestly, daar is geen werklik 'n verskil tussen die twee. 1298 01:02:14,820 --> 01:02:19,540 Albei het stringe as die sleutels, en kan het basies enigiets as die waarde. 1299 01:02:19,540 --> 01:02:21,250 Verskillende tale noem een ding assosiatiewe skikking, 1300 01:02:21,250 --> 01:02:22,750 een ding wat 'n voorwerp. 1301 01:02:22,750 --> 01:02:25,960 So eerlik, daar is geen werklike verskil, maar daar is beslis 'n paar 1302 01:02:25,960 --> 01:02:27,730 sintaktiese verskille tussen die twee. 1303 01:02:27,730 --> 01:02:28,200 Ja. 1304 01:02:28,200 --> 01:02:33,580 >> Publiek: So is ook voorwerp gekodeerde onder die kap as 'n hash tafel, dan? 1305 01:02:33,580 --> 01:02:35,796 >> JASON Hirsch: Wat doen jy bedoel, gekodeerde onder die enjinkap? 1306 01:02:35,796 --> 01:02:38,017 >> Publiek: Ons is vertel dat assosiatiewe skikking was tegnies 'n 1307 01:02:38,017 --> 01:02:39,960 hash tafel. 1308 01:02:39,960 --> 01:02:44,510 So is ook voorwerp tegnies 'n gemors tafel? 1309 01:02:44,510 --> 01:02:45,350 >> JASON Hirsch: Ek gaan nie daardie vraag te beantwoord. 1310 01:02:45,350 --> 01:02:46,600 Ek sal terug te kry om jou op daardie. 1311 01:02:46,600 --> 01:02:48,980 Maar ek sou nie dink nie van diegene soos dit. 1312 01:02:48,980 --> 01:02:53,790 Maar, op enige wyse, assosiatiewe skikking en voorwerp, in die algemeen, mense gebruik dié 1313 01:02:53,790 --> 01:02:54,910 terme verwissel. 1314 01:02:54,910 --> 01:02:57,630 In hierdie geval, die koel deel is jy sleutels kan gebruik. 1315 01:02:57,630 --> 01:03:00,580 Strings as sleutels, eerder as net 'n eenvoudige getalle. 1316 01:03:00,580 --> 01:03:02,070 >> So ek het gepraat oor dit vir 'n rukkie. 1317 01:03:02,070 --> 01:03:04,090 Hopelik, sommige mense gekry het op hierdie. 1318 01:03:04,090 --> 01:03:08,050 Ons gaan 'n paar PHP en HTML te skryf kode, soos wat ons kry 'n twee-kolom 1319 01:03:08,050 --> 01:03:11,830 tafel met TFS name en huise. 1320 01:03:11,830 --> 01:03:15,380 >> OK, ek sou ook 'n kop hou ry op hierdie tafel. 1321 01:03:15,380 --> 01:03:18,410 So ek gaan reguit kry in hierdie. 1322 01:03:18,410 --> 01:03:20,770 Ons gaan om te dien, 'n nuwe, en ons gaan - 1323 01:03:20,770 --> 01:03:27,780 1324 01:03:27,780 --> 01:03:28,320 >> OK. 1325 01:03:28,320 --> 01:03:29,970 Hoe begin ek 'n tafel? 1326 01:03:29,970 --> 01:03:32,090 Wat is die etiket, Michael, 'n tafel te begin? 1327 01:03:32,090 --> 01:03:32,890 >> Publiek: Table. 1328 01:03:32,890 --> 01:03:34,020 >> JASON Hirsch: Table. 1329 01:03:34,020 --> 01:03:37,870 En as ek 'n merker oopmaak, wat anders het ek nodig? 1330 01:03:37,870 --> 01:03:39,810 >> Publiek: 'n kop? 1331 01:03:39,810 --> 01:03:41,040 Of, dink ek, die klas. 1332 01:03:41,040 --> 01:03:41,730 >> JASON Hirsch: So, jammer. 1333 01:03:41,730 --> 01:03:45,430 Aanvaar dat ons reeds geskryf doctab, HTML, al daardie dinge. 1334 01:03:45,430 --> 01:03:50,230 Maar as ek oop die tafel etiket, wat anders moet ek skryf? 1335 01:03:50,230 --> 01:03:53,450 vir bekragtig HTML? 1336 01:03:53,450 --> 01:03:55,000 >> Publiek: sluit dit. 1337 01:03:55,000 --> 01:03:56,050 >> JASON Hirsch: Maak die etiket. 1338 01:03:56,050 --> 01:03:57,575 Hoe skryf ek 'n close-tafel tag? 1339 01:03:57,575 --> 01:03:59,580 >> Publiek: Dot streep tafel. 1340 01:03:59,580 --> 01:04:00,960 >> JASON Hirsch: Sny tafel, groot. 1341 01:04:00,960 --> 01:04:02,730 Maak seker sin om beide te skryf van diegene saam, want 1342 01:04:02,730 --> 01:04:03,870 jy het om dit te doen. 1343 01:04:03,870 --> 01:04:08,575 OK, as ek wil 'n kop ry, hoe Ek skryf 'n kop-ry met titels? 1344 01:04:08,575 --> 01:04:11,650 1345 01:04:11,650 --> 01:04:19,290 >> Publiek: Is dit minder as 10 uur naby - 1346 01:04:19,290 --> 01:04:21,550 TR, ja. 1347 01:04:21,550 --> 01:04:22,100 >> JASON Hirsch: TR? 1348 01:04:22,100 --> 01:04:25,080 >> Publiek: Toe dieselfde ding, die streep, ja. 1349 01:04:25,080 --> 01:04:26,610 >> JASON Hirsch: OK, en gee my twee kolomme. 1350 01:04:26,610 --> 01:04:30,100 1351 01:04:30,100 --> 01:04:33,210 >> Publiek: T D? 1352 01:04:33,210 --> 01:04:34,460 >> JASON Hirsch: OK. 1353 01:04:34,460 --> 01:04:37,730 1354 01:04:37,730 --> 01:04:39,520 Ek wil twee kolomme. 1355 01:04:39,520 --> 01:04:40,960 Is dit gee my twee kolomme? 1356 01:04:40,960 --> 01:04:43,880 Hoeveel kolomme is dit? 1357 01:04:43,880 --> 01:04:45,920 Een. 1358 01:04:45,920 --> 01:04:47,170 So laat kopieer en plak dit. 1359 01:04:47,170 --> 01:04:59,750 1360 01:04:59,750 --> 01:05:03,390 >> So eintlik, op die quiz, al hierdie kode wat ons tot dusver was geskryf 1361 01:05:03,390 --> 01:05:04,710 eintlik aan jou gegee. 1362 01:05:04,710 --> 01:05:06,200 Maar jy moet waarskynlik nog weet hoe om dit te skryf. 1363 01:05:06,200 --> 01:05:06,470 Ja. 1364 01:05:06,470 --> 01:05:10,636 >> Publiek: Jou huis is tussen die twee. 1365 01:05:10,636 --> 01:05:11,130 >> JASON Hirsch: Boom. 1366 01:05:11,130 --> 01:05:12,720 Dit moet net daar gaan nie, reg? 1367 01:05:12,720 --> 01:05:14,600 Goeie oproep. 1368 01:05:14,600 --> 01:05:17,760 So weer, al hierdie kode is eintlik aan jou gegee op die werklike toets. 1369 01:05:17,760 --> 01:05:19,570 Maar dit is pret om dit te skryf, en jy moet weet hoe om dit te skryf. 1370 01:05:19,570 --> 01:05:23,640 So dit is waar jy moet jou kode te begin. 1371 01:05:23,640 --> 01:05:25,150 Wat moet ons hier skryf? 1372 01:05:25,150 --> 01:05:28,640 1373 01:05:28,640 --> 01:05:30,565 >> Jammer, ek nodig het om te verander die naam van hierdie lêer. 1374 01:05:30,565 --> 01:05:41,180 1375 01:05:41,180 --> 01:05:44,270 Sodat ons dit gestoor in 'n. HTML-lêer, nie in 'n. PHP lêer. 1376 01:05:44,270 --> 01:05:47,030 Hierdie dinge sou niks beteken in 'n. PHP lêer. 1377 01:05:47,030 --> 01:05:48,500 So ons is in 'n. HTML lêer. 1378 01:05:48,500 --> 01:05:50,090 Wat is die eerste ding wat Ek nodig het om te skryf? 1379 01:05:50,090 --> 01:05:52,990 Ek wil 'n paar PHP te sit kode in 'n HTML. 1380 01:05:52,990 --> 01:05:57,300 >> Publiek: PHP, soos 'n ander wortel en vraagteken PHP, reg? 1381 01:05:57,300 --> 01:05:58,310 >> JASON Hirsch: Groot. 1382 01:05:58,310 --> 01:05:59,360 En hoe kan ek eindig dit? 1383 01:05:59,360 --> 01:06:02,510 >> Publiek: Met 'n vraagteken. 1384 01:06:02,510 --> 01:06:03,120 >> JASON Hirsch: Dit is 'n groot. 1385 01:06:03,120 --> 01:06:07,090 Dit is die eerste ding wat ek nodig het as ek wil sommige PHP-kode om te sit in hier. 1386 01:06:07,090 --> 01:06:11,210 >> Publiek:. Ek het gedink 'n PHP lêer kon HTML neem. 1387 01:06:11,210 --> 01:06:12,290 >> JASON Hirsch: Ja. 1388 01:06:12,290 --> 01:06:15,330 A. PHP lêer kan neem 'n paar HTML en word vertoon. 1389 01:06:15,330 --> 01:06:16,450 Dit was my sleg. 1390 01:06:16,450 --> 01:06:18,300 Ek het net probeer om na te boots wat dit was op die quiz. 1391 01:06:18,300 --> 01:06:21,910 1392 01:06:21,910 --> 01:06:24,720 >> OK, jammer om jou te verwar. 1393 01:06:24,720 --> 01:06:25,550 Ja, practice.HTML. 1394 01:06:25,550 --> 01:06:27,340 Nou gaan ons om te sit sommige PHP-kode in 1395 01:06:27,340 --> 01:06:30,530 Wat is die eerste lyn van PHP-kode moet ek skryf? 1396 01:06:30,530 --> 01:06:33,360 Ek gaan om te gaan deur middel van hierdie reeks en maak dit in 'n tabel. 1397 01:06:33,360 --> 01:06:34,600 Ja. 1398 01:06:34,600 --> 01:06:37,160 >> Publiek: Jy kan óf gebruik 'n vir H lus of 'n lus vir. 1399 01:06:37,160 --> 01:06:38,415 >> JASON Hirsch: OK, wat wil jy gebruik? 1400 01:06:38,415 --> 01:06:40,720 >> Publiek: Ek sou gebruik om 'n lus vir. 1401 01:06:40,720 --> 01:06:48,700 Vir en dan doen jy dollar-teken Ek is gelyk aan 0 kommapunt dollar 1402 01:06:48,700 --> 01:06:51,580 teken ek minder as 2. 1403 01:06:51,580 --> 01:06:55,455 En dan kommapunt i dollar teken ek plus plus. 1404 01:06:55,455 --> 01:07:01,890 1405 01:07:01,890 --> 01:07:03,880 >> JASON Hirsch: Hoe doen jy weet te gebruik 'n 2? 1406 01:07:03,880 --> 01:07:10,444 >> Publiek: Omdat daar twee assosiatiewe skikkings binne die groter 1407 01:07:10,444 --> 01:07:11,960 assosiatiewe skikking. 1408 01:07:11,960 --> 01:07:13,610 >> JASON Hirsch: So het die groot ding se nie 'n mede-skikking. 1409 01:07:13,610 --> 01:07:15,500 Die groot ding is net 'n gewone skikking. 1410 01:07:15,500 --> 01:07:17,380 Maar jy is reg, daar is twee assosiatiewe skikkings 1411 01:07:17,380 --> 01:07:18,910 in ons groter verskeidenheid. 1412 01:07:18,910 --> 01:07:20,310 Dit is hoekom jy gebruik om die twee. 1413 01:07:20,310 --> 01:07:24,270 Ek voel ongemaklik in die veronderstelling dat hulle is 2, so wat is 'n manier om te skryf 1414 01:07:24,270 --> 01:07:26,810 sonder die veronderstelling dat hulle is 2? 1415 01:07:26,810 --> 01:07:27,507 >> Publiek: [onhoorbaar]? 1416 01:07:27,507 --> 01:07:29,165 >> JASON Hirsch: OK, hoe skryf jy dit? 1417 01:07:29,165 --> 01:07:35,262 >> Publiek: foreach dollar-teken TFS of soos dollar teken tf. 1418 01:07:35,262 --> 01:07:38,360 1419 01:07:38,360 --> 01:07:41,960 >> JASON Hirsch: OK, so vir elke TFS as TFS, ek wil nou 1420 01:07:41,960 --> 01:07:43,650 weer, het my tafel. 1421 01:07:43,650 --> 01:07:45,250 So wat my kan gee volgende lyn van die kode? 1422 01:07:45,250 --> 01:07:52,870 1423 01:07:52,870 --> 01:07:59,810 >> Publiek: Print, en dan in kwotasies, bracket tr einde 1424 01:07:59,810 --> 01:08:02,670 bracket, einde kwotasie. 1425 01:08:02,670 --> 01:08:05,300 Einde hakies, kommapunt. 1426 01:08:05,300 --> 01:08:07,135 >> JASON Hirsch: OK, en Wat is dit gaan doen? 1427 01:08:07,135 --> 01:08:08,610 >> Publiek: Dit gaan om te sê, 'n nuwe ry. 1428 01:08:08,610 --> 01:08:11,070 Dit gaan sit die merk vir 'n nuwe ry. 1429 01:08:11,070 --> 01:08:13,000 >> JASON Hirsch: Right, hierdie PHP, soos het ons gepraat oor vroeër - dit 1430 01:08:13,000 --> 01:08:22,160 PHP gaan geëvalueer word, en dan dit gaan om uit te druk van hierdie lêer 'n 1431 01:08:22,160 --> 01:08:26,350 tafel sleep, en dan is dit HTML geëvalueer sal word. 1432 01:08:26,350 --> 01:08:27,810 Ons is net die kopiëring van hierdie HTML het ons hier. 1433 01:08:27,810 --> 01:08:28,120 Ja. 1434 01:08:28,120 --> 01:08:29,470 >> Publiek: [onhoorbaar]? 1435 01:08:29,470 --> 01:08:30,290 >> JASON Hirsch: Jammer? 1436 01:08:30,290 --> 01:08:31,240 Dit is reg hier. 1437 01:08:31,240 --> 01:08:33,590 Val 2012. 1438 01:08:33,590 --> 01:08:35,970 Moenie kyk na die antwoorde, laat se los dit saam. 1439 01:08:35,970 --> 01:08:37,330 So het ons druk tafel ry. 1440 01:08:37,330 --> 01:08:38,550 So is jy waarskynlik in die swaai van die dinge. 1441 01:08:38,550 --> 01:08:41,060 Wat is die volgende lyn van kode wat ons nodig het om te skryf? 1442 01:08:41,060 --> 01:08:42,926 Assam, gee my die volgende lyn van kode. 1443 01:08:42,926 --> 01:08:46,290 >> Publiek: Jy moet die tf se naam. 1444 01:08:46,290 --> 01:08:54,319 Tf oop hakies aanhalingstekens noem geslote hakies. 1445 01:08:54,319 --> 01:08:57,310 >> JASON Hirsch: Gee my hul naam. 1446 01:08:57,310 --> 01:08:58,540 >> Publiek: Jy moet dit te druk. 1447 01:08:58,540 --> 01:08:59,790 >> [INTERPOSING Voices] 1448 01:08:59,790 --> 01:09:01,963 1449 01:09:01,963 --> 01:09:03,430 >> JASON Hirsch: OK, hoe kan ek druk dit? 1450 01:09:03,430 --> 01:09:04,680 >> [INTERPOSING Voices] 1451 01:09:04,680 --> 01:09:08,609 1452 01:09:08,609 --> 01:09:10,350 >> JASON Hirsch: ek mis iets wat nou. 1453 01:09:10,350 --> 01:09:12,470 Wat mis ek? 1454 01:09:12,470 --> 01:09:13,720 >> Publiek: Jy moet 'n dollar-teken. 1455 01:09:13,720 --> 01:09:15,960 1456 01:09:15,960 --> 01:09:17,210 >> JASON Hirsch: Wat anders mis ek? 1457 01:09:17,210 --> 01:09:20,100 1458 01:09:20,100 --> 01:09:21,650 Al wat ons het so ver gedruk is die tr. 1459 01:09:21,650 --> 01:09:25,589 1460 01:09:25,589 --> 01:09:27,470 >> Publiek: Maak die tr nadat dit. 1461 01:09:27,470 --> 01:09:28,720 >> JASON Hirsch: So moet ons die tr te na te sluit. 1462 01:09:28,720 --> 01:09:34,390 1463 01:09:34,390 --> 01:09:37,906 Wat sien wat ons mis on line 16? 1464 01:09:37,906 --> 01:09:39,340 Ja, Anna. 1465 01:09:39,340 --> 01:09:47,050 >> Publiek: Jy moet oopmaak 'n td en krullerige draadjies. 1466 01:09:47,050 --> 01:09:49,380 >> JASON Hirsch, en waar sit ons krulhakies? 1467 01:09:49,380 --> 01:09:51,790 >> Publiek: Rondom die tf naam. 1468 01:09:51,790 --> 01:09:53,080 >> JASON Hirsch: Soos hierdie? 1469 01:09:53,080 --> 01:09:55,420 >> Publiek: Ja. 1470 01:09:55,420 --> 01:09:59,000 En dan sluit die td. 1471 01:09:59,000 --> 01:10:00,250 >> JASON Hirsch: Soos wat? 1472 01:10:00,250 --> 01:10:03,370 1473 01:10:03,370 --> 01:10:06,950 >> Publiek: Het jy behoefte aan dubbele aanhalingstekens punte langs die krulhakies? 1474 01:10:06,950 --> 01:10:07,460 >> JASON Hirsch: Right hier? 1475 01:10:07,460 --> 01:10:08,710 Nee, jy doen nie. 1476 01:10:08,710 --> 01:10:10,820 1477 01:10:10,820 --> 01:10:12,550 So dit is presies reg. 1478 01:10:12,550 --> 01:10:12,940 Ja. 1479 01:10:12,940 --> 01:10:15,290 >> Publiek: So het die verskil tussen wat en encatenating met kolle is, indien 1480 01:10:15,290 --> 01:10:18,420 jy punte gebruik, sal jy wil hê dat die dubbele aanhalingstekens, dan 'n dot, 1481 01:10:18,420 --> 01:10:20,370 dan is die dot - 1482 01:10:20,370 --> 01:10:20,520 >> JASON Hirsch: Korrekte. 1483 01:10:20,520 --> 01:10:23,800 So jy sê daar is 'n uiteindelike manier om te skryf hierdie soos dit. 1484 01:10:23,800 --> 01:10:26,760 1485 01:10:26,760 --> 01:10:28,966 Wat die aaneenskakellling operateur in JavaScript? 1486 01:10:28,966 --> 01:10:31,200 >> Publiek: 'n plus-teken. 1487 01:10:31,200 --> 01:10:34,710 Jy het vergeet om te sit die krullerige stut terug. 1488 01:10:34,710 --> 01:10:35,760 >> JASON Hirsch: Groot. 1489 01:10:35,760 --> 01:10:38,850 En daar is nog 'n lyn van die kode ontbreek. 1490 01:10:38,850 --> 01:10:40,130 Wie kan my die laaste reël van die kode ons ontbreek? 1491 01:10:40,130 --> 01:10:43,940 1492 01:10:43,940 --> 01:10:47,602 >> Publiek: Net presies dieselfde ding, net met die huis in plaas van die naam. 1493 01:10:47,602 --> 01:10:52,960 1494 01:10:52,960 --> 01:10:53,450 Groot 1495 01:10:53,450 --> 01:10:54,390 >> JASON Hirsch: Groot. 1496 01:10:54,390 --> 01:10:59,320 En jou sintaksis is presies reg vir om dinge in 'n mede-skikking. 1497 01:10:59,320 --> 01:11:04,450 So in die werklike toets, is jy eintlik gegee tot hier. 1498 01:11:04,450 --> 01:11:05,710 So hierdie kode is wat aan jou gegee. 1499 01:11:05,710 --> 01:11:07,750 Al wat jy het om te skryf was hierdie vier lyne en onthou om te 1500 01:11:07,750 --> 01:11:09,190 sluit die tafel etiket. 1501 01:11:09,190 --> 01:11:11,370 Julle het eintlik en nog baie meer. 1502 01:11:11,370 --> 01:11:11,810 Ja. 1503 01:11:11,810 --> 01:11:14,850 >> Publiek: So is dit funksioneel wees dieselfde as jy moes net dat al in 1504 01:11:14,850 --> 01:11:17,250 een groot druk oproep, reg? 1505 01:11:17,250 --> 01:11:19,630 En dan net saamgevoeg dit op, ensovoorts? 1506 01:11:19,630 --> 01:11:20,730 >> JASON Hirsch: Soos wat? 1507 01:11:20,730 --> 01:11:21,980 >> Publiek: Ja. 1508 01:11:21,980 --> 01:11:23,810 1509 01:11:23,810 --> 01:11:26,940 Dit sou net nie goed lyk as jy kyk na dit wanneer jy inspekteer 1510 01:11:26,940 --> 01:11:28,550 die element op jou webwerf, reg? 1511 01:11:28,550 --> 01:11:29,800 >> JASON Hirsch: Ek stem saam. 1512 01:11:29,800 --> 01:11:35,410 1513 01:11:35,410 --> 01:11:38,710 As ek gelaai hierdie webblad, wil ek wees staat om hierdie PHP-kode om te sien, ooit? 1514 01:11:38,710 --> 01:11:39,240 >> Publiek: No 1515 01:11:39,240 --> 01:11:40,080 >> JASON Hirsch: No 1516 01:11:40,080 --> 01:11:42,240 En eintlik, ek wou nie. 1517 01:11:42,240 --> 01:11:43,920 >> Publiek: Dit is nie HTML, reg? 1518 01:11:43,920 --> 01:11:45,000 So kan jy dalk in staat wees om - 1519 01:11:45,000 --> 01:11:46,780 >> JASON Hirsch: So dit sou PHP geëvalueer bediener kant. 1520 01:11:46,780 --> 01:11:51,020 PHP is altyd geëvalueer bediener kant, so jy nog nooit in staat PHP-kode te sien. 1521 01:11:51,020 --> 01:11:52,980 >> Publiek: Maar jy wil in staat wees om sien die gevolg van die druk. 1522 01:11:52,980 --> 01:11:53,480 >> JASON Hirsch: Right. 1523 01:11:53,480 --> 01:11:55,510 En dit eerlik mag nie sit dit op die lyn. 1524 01:11:55,510 --> 01:11:59,740 Dit kan dit mooi klaarmaak vir julle, of dit kan dit op een lyn. 1525 01:11:59,740 --> 01:12:01,521 Onduidelik. 1526 01:12:01,521 --> 01:12:03,596 Maar ja, 'n goeie punt. 1527 01:12:03,596 --> 01:12:06,470 >> Publiek: Hoe kom daar ' geen teks Verligting vir 1528 01:12:06,470 --> 01:12:07,550 enige van die PHP instruksies? 1529 01:12:07,550 --> 01:12:09,370 Omdat ek onthou aangesien. 1530 01:12:09,370 --> 01:12:11,620 >> JASON Hirsch: Omdat dit 'n . HTML-lêer hier op die top. 1531 01:12:11,620 --> 01:12:20,390 1532 01:12:20,390 --> 01:12:21,650 Daar gaan jy. 1533 01:12:21,650 --> 01:12:25,752 1534 01:12:25,752 --> 01:12:28,800 >> Publiek: As ons die eerste metode met die vir loops, reg, as ons 1535 01:12:28,800 --> 01:12:33,500 wou 'n TFS om toegang te verkry, sou ons doen TFS bracket 0 bracket, dan 1536 01:12:33,500 --> 01:12:35,180 [Onhoorbaar]? 1537 01:12:35,180 --> 01:12:35,970 >> JASON Hirsch: Jy sal - 1538 01:12:35,970 --> 01:12:40,560 So jy sê vir die for-lus, het jy in dollar-teken TFS bracket 1 sou doen 1539 01:12:40,560 --> 01:12:41,850 of ek, reg. 1540 01:12:41,850 --> 01:12:46,780 Of dollar teken i sluit bracket en dan vierkante hakies 1541 01:12:46,780 --> 01:12:49,600 dubbele aanhalingstekens, ja. 1542 01:12:49,600 --> 01:12:50,640 >> OK, 'n uitstekende. 1543 01:12:50,640 --> 01:12:53,020 Ons het nog 'n vinnige een. 1544 01:12:53,020 --> 01:12:55,090 Sewe minute, so ek wil om te gaan oor hierdie een. 1545 01:12:55,090 --> 01:12:56,160 Dit is nog 'n voorbeeld. 1546 01:12:56,160 --> 01:12:58,740 Ons is nou 'n totaal ander taal. 1547 01:12:58,740 --> 01:12:59,990 >> Ons het 'n paar HTML-kode. 1548 01:12:59,990 --> 01:13:02,480 1549 01:13:02,480 --> 01:13:07,460 Dit is soort van 'n klein op die skerm, maar Ek wil jou om te kyk deur dit regtig 1550 01:13:07,460 --> 01:13:11,140 vinnig, en kan iemand my vertel, as ek hierdie webblad te laai, 1551 01:13:11,140 --> 01:13:12,390 wat ek sien? 1552 01:13:12,390 --> 01:13:22,710 1553 01:13:22,710 --> 01:13:26,450 Beskryf alles oor hierdie webblad. 1554 01:13:26,450 --> 01:13:28,630 Noag? 1555 01:13:28,630 --> 01:13:30,450 Wat sou ek sien? 1556 01:13:30,450 --> 01:13:38,140 >> Publiek: Kode aan die voorkant van Google met 'n gevoel vir die teks en 'n 1557 01:13:38,140 --> 01:13:39,190 stuur knoppie. 1558 01:13:39,190 --> 01:13:41,180 >> JASON Hirsch: En wat sou die knoppie sê? 1559 01:13:41,180 --> 01:13:42,430 >> Publiek: Stuur. 1560 01:13:42,430 --> 01:13:44,620 1561 01:13:44,620 --> 01:13:45,160 O, soek. 1562 01:13:45,160 --> 01:13:45,840 Ek is jammer. 1563 01:13:45,840 --> 01:13:46,830 >> JASON Hirsch: Dit sou sê soek. 1564 01:13:46,830 --> 01:13:47,520 Onthou, noem. 1565 01:13:47,520 --> 01:13:50,550 Wat gebruik ons ​​naam vir? 1566 01:13:50,550 --> 01:13:53,774 Hierdie naam eienskap, wat is wat gebruik word vir? 1567 01:13:53,774 --> 01:13:55,470 >> [INTERPOSING Voices] 1568 01:13:55,470 --> 01:13:59,300 >> Publiek: Dit is sy naam wanneer dit gekliek? 1569 01:13:59,300 --> 01:14:00,160 >> JASON Hirsch: Dit kan wees. 1570 01:14:00,160 --> 01:14:02,690 Maar wat doen ons in die algemeen sien - waarom gee ons hierdie naam tou? 1571 01:14:02,690 --> 01:14:03,830 Hoekom sien ons dit? 1572 01:14:03,830 --> 01:14:05,220 Ja. 1573 01:14:05,220 --> 01:14:08,600 >> Publiek: Maak nie wat geword indeks van die super globale veranderlike? 1574 01:14:08,600 --> 01:14:12,740 >> JASON Hirsch: Ja, in die algemeen wanneer hierdie vorm sal dien, en dan waar 1575 01:14:12,740 --> 01:14:13,500 sou dit aan? 1576 01:14:13,500 --> 01:14:14,750 Wat bladsy? 1577 01:14:14,750 --> 01:14:16,820 1578 01:14:16,820 --> 01:14:18,460 Noag, wat sou hierdie bladsy aan? 1579 01:14:18,460 --> 01:14:25,710 1580 01:14:25,710 --> 01:14:27,700 >> Publiek: Ek is nie seker nie. 1581 01:14:27,700 --> 01:14:28,920 >> JASON Hirsch: Waar kon ons dit kan kry? 1582 01:14:28,920 --> 01:14:31,025 Waar vind jy wat bladsy dit lê aan? 1583 01:14:31,025 --> 01:14:32,850 Wat reël van die kode? 1584 01:14:32,850 --> 01:14:34,040 >> Publiek: Form aksie. 1585 01:14:34,040 --> 01:14:34,650 >> JASON Hirsch: Presies. 1586 01:14:34,650 --> 01:14:35,130 Aksie. 1587 01:14:35,130 --> 01:14:37,100 So dit lê aan die soektog bladsy. 1588 01:14:37,100 --> 01:14:38,630 Agteroorskuisstreep soek. 1589 01:14:38,630 --> 01:14:40,140 So dit is presies reg. 1590 01:14:40,140 --> 01:14:40,680 Watter metode? 1591 01:14:40,680 --> 01:14:42,090 >> Publiek: Kry. 1592 01:14:42,090 --> 01:14:42,490 >> JASON Hirsch: Kry. 1593 01:14:42,490 --> 01:14:43,420 Presies. 1594 01:14:43,420 --> 01:14:44,490 So lees ons hierdie. 1595 01:14:44,490 --> 01:14:45,180 Dit gaan 'n vorm te wees. 1596 01:14:45,180 --> 01:14:45,910 Jy is presies reg. 1597 01:14:45,910 --> 01:14:50,340 Twee dinge wat op die vorm, die titel van die bladsy en die top sal wees Google. 1598 01:14:50,340 --> 01:14:54,270 >> So hier is twee vrae wat jy behoort in staat wees om te antwoord oor hierdie bladsy. 1599 01:14:54,270 --> 01:15:01,760 As dit HTML woon op hierdie webwerf en die gebruiker insette fout in hierdie teks 1600 01:15:01,760 --> 01:15:06,900 gebied reg hier, wat URL sal die gebruiker haarself vind op 1601 01:15:06,900 --> 01:15:08,150 indiening van die vorm? 1602 01:15:08,150 --> 01:15:10,980 1603 01:15:10,980 --> 01:15:12,510 >> So het ons hierdie reg hier. 1604 01:15:12,510 --> 01:15:13,720 Ek gaan om terug te gaan na hierdie bladsy, al is. 1605 01:15:13,720 --> 01:15:16,980 Ek sal skryf hierdie eerste deel. 1606 01:15:16,980 --> 01:15:18,230 Kan almal sien hier? 1607 01:15:18,230 --> 01:15:30,620 1608 01:15:30,620 --> 01:15:32,906 OK, Mario, jy dink jy weet? 1609 01:15:32,906 --> 01:15:34,700 Wat bladsy? 1610 01:15:34,700 --> 01:15:37,630 >> Publiek: agteroorskuisstreep soek. 1611 01:15:37,630 --> 01:15:38,880 >> JASON Hirsch: Ek gaan om hier te beweeg. 1612 01:15:38,880 --> 01:15:44,800 1613 01:15:44,800 --> 01:15:49,155 OK, backslash soek vraag punt Q gelyk fout. 1614 01:15:49,155 --> 01:15:53,560 1615 01:15:53,560 --> 01:15:55,165 Enigiemand het 'n ander voorstel? 1616 01:15:55,165 --> 01:15:57,910 1617 01:15:57,910 --> 01:15:59,160 Ja. 1618 01:15:59,160 --> 01:16:01,700 1619 01:16:01,700 --> 01:16:03,740 >> So hoe kry ons dit? 1620 01:16:03,740 --> 01:16:05,520 Wel, ons het dit voor gesien. 1621 01:16:05,520 --> 01:16:07,170 En jy het met hierdie vroeër. 1622 01:16:07,170 --> 01:16:08,870 Jy was reg, Noag, dat die aksie om ons te vertel wat 1623 01:16:08,870 --> 01:16:11,700 bladsy gaan ons. 1624 01:16:11,700 --> 01:16:12,820 >> Ons weet ook watter metode. 1625 01:16:12,820 --> 01:16:13,420 Ons doen kry. 1626 01:16:13,420 --> 01:16:17,040 En die verskil tussen AOO en post is wat kry vertoon in die URL 1627 01:16:17,040 --> 01:16:18,490 en na nie. 1628 01:16:18,490 --> 01:16:22,760 So as ek geskryf post reg daar in die metode, wat sou anders wees? 1629 01:16:22,760 --> 01:16:24,250 >> Publiek: Dit sou net wees streep soek. 1630 01:16:24,250 --> 01:16:25,400 >> JASON Hirsch: Dit sou net streep word soek. 1631 01:16:25,400 --> 01:16:27,400 Niks hier sou gebeur. 1632 01:16:27,400 --> 01:16:30,030 Maar, want dit is 'n te kry, die URL word soos volg vertoon. 1633 01:16:30,030 --> 01:16:35,140 Eerste sien ons 'n vraagteken en sien ons die naam en die waarde. 1634 01:16:35,140 --> 01:16:42,730 Sê daar was een ander teks veld en Ek het dit 'n naam van r en ek insette 'n 1635 01:16:42,730 --> 01:16:45,220 waarde, ruspe. 1636 01:16:45,220 --> 01:16:48,560 Wat sou dit nou lyk? 1637 01:16:48,560 --> 01:16:52,040 Ek het nog 'n teks veld, gee ek 'n naam van r en 'n waarde van ruspe. 1638 01:16:52,040 --> 01:16:56,990 >> Publiek: Na bar wat jy wil hê die ampersand ruspe. 1639 01:16:56,990 --> 01:16:58,380 >> JASON Hirsch: Dis nie, en-teken. 1640 01:16:58,380 --> 01:17:00,500 >> Publiek: Of is dit net watter die en-simbool. 1641 01:17:00,500 --> 01:17:01,330 >> JASON Hirsch: Ja, nee. 1642 01:17:01,330 --> 01:17:03,700 Jy was reg, ek was verkeerd. 1643 01:17:03,700 --> 01:17:05,660 Dit is soos 'n g. 1644 01:17:05,660 --> 01:17:06,910 >> Publiek: Caterpillar. 1645 01:17:06,910 --> 01:17:08,840 1646 01:17:08,840 --> 01:17:11,090 r gelyk ruspe, jammer. 1647 01:17:11,090 --> 01:17:13,970 1648 01:17:13,970 --> 01:17:14,700 >> JASON Hirsch: Is daar Nee R in daar? 1649 01:17:14,700 --> 01:17:16,680 >> Publiek: Nee, daar is. 1650 01:17:16,680 --> 01:17:18,030 >> JASON Hirsch: Ons sal praat oor wat na die klas. 1651 01:17:18,030 --> 01:17:18,930 Dit is presies reg. 1652 01:17:18,930 --> 01:17:20,530 So het die en is korrek. 1653 01:17:20,530 --> 01:17:23,430 En dan kan jy baie van hierdie het, en hulle sal almal saamgevoeg word 1654 01:17:23,430 --> 01:17:24,950 saam met dit en. 1655 01:17:24,950 --> 01:17:25,900 So dit is presies reg. 1656 01:17:25,900 --> 01:17:27,700 >> Daar is nog 'n vraag. 1657 01:17:27,700 --> 01:17:30,676 Teken hierdie HTML DOM se begin met dokument. 1658 01:17:30,676 --> 01:17:33,330 1659 01:17:33,330 --> 01:17:34,570 Ons kan dit doen in twee minute. 1660 01:17:34,570 --> 01:17:36,790 Ons sal dit doen hier. 1661 01:17:36,790 --> 01:17:38,040 Ek kom terug na hierdie webblad te gaan. 1662 01:17:38,040 --> 01:17:40,630 1663 01:17:40,630 --> 01:17:42,160 OK, ons begin met dokument. 1664 01:17:42,160 --> 01:17:49,698 1665 01:17:49,698 --> 01:17:52,090 >> Wat is volgende? 1666 01:17:52,090 --> 01:17:53,910 So wanneer jy dit lees deur - 1667 01:17:53,910 --> 01:17:54,540 >> Publiek: HTML. 1668 01:17:54,540 --> 01:17:55,790 >> JASON Hirsch: HTML is volgende. 1669 01:17:55,790 --> 01:17:57,850 Ons gaan om te gaan tag deur tag. 1670 01:17:57,850 --> 01:18:00,890 Wat se na HTML? 1671 01:18:00,890 --> 01:18:01,550 >> Publiek: Hoof. 1672 01:18:01,550 --> 01:18:02,800 >> JASON Hirsch: Hoof. 1673 01:18:02,800 --> 01:18:05,090 1674 01:18:05,090 --> 01:18:08,520 Wat is ná kop? 1675 01:18:08,520 --> 01:18:09,770 >> Publiek: titel. 1676 01:18:09,770 --> 01:18:11,880 1677 01:18:11,880 --> 01:18:12,560 >> JASON Hirsch Titel. 1678 01:18:12,560 --> 01:18:14,740 En die titel het 'n waarde van Google, maar ek is nie van plan om 1679 01:18:14,740 --> 01:18:16,240 skryf dat vir nou. 1680 01:18:16,240 --> 01:18:18,750 OK, waar kom die liggaam te gaan? 1681 01:18:18,750 --> 01:18:20,890 >> Publiek: kom ook af van die HTML. 1682 01:18:20,890 --> 01:18:21,490 >> JASON Hirsch: Presies. 1683 01:18:21,490 --> 01:18:22,820 Liggaam kom af van hier. 1684 01:18:22,820 --> 01:18:25,970 1685 01:18:25,970 --> 01:18:30,330 Nie almal sien waarom dit die geval is? 1686 01:18:30,330 --> 01:18:32,970 Jy moet waarskynlik in staat wees om te vind dit uit ook, selfs al het ek nie 1687 01:18:32,970 --> 01:18:33,665 hierdie mooi inkeping. 1688 01:18:33,665 --> 01:18:37,680 >> Die inkeping soort gee dit weg, maar jy kan sien dat die hoof tag het 1689 01:18:37,680 --> 01:18:41,240 gesluit is, wat beteken dat ons waarskynlik kan nie gaan hier af. 1690 01:18:41,240 --> 01:18:43,460 Ons moet terug te gaan na wat ook al was reg voor die kop 1691 01:18:43,460 --> 01:18:44,730 tag, of onder daardie. 1692 01:18:44,730 --> 01:18:46,720 Ons is selfs met die kop tag. 1693 01:18:46,720 --> 01:18:48,560 >> En onder liggaam gaan vorm. 1694 01:18:48,560 --> 01:18:50,300 Onder vorm, is daar twee insette. 1695 01:18:50,300 --> 01:18:53,330 1696 01:18:53,330 --> 01:18:54,420 OK. 1697 01:18:54,420 --> 01:18:55,490 Dit is al wat ek gekry het. 1698 01:18:55,490 --> 01:18:56,980 Quiz 1 is môre. 1699 01:18:56,980 --> 01:18:58,350 Ek is so opgewonde vir julle. 1700 01:18:58,350 --> 01:18:59,690 Dit gaan 'n belewenis wees. 1701 01:18:59,690 --> 01:19:00,250 >> As jy - 1702 01:19:00,250 --> 01:19:00,600 >> Publiek: [Applous] 1703 01:19:00,600 --> 01:19:02,460 >> JASON Hirsch: O stop, stop. 1704 01:19:02,460 --> 01:19:04,520 Maar nee, ek grap. 1705 01:19:04,520 --> 01:19:07,220 As jy enige vrae het, reg na artikel, sal ek buite te wees. 1706 01:19:07,220 --> 01:19:11,700 As jy enige vrae vanaand, voel vry om te bel, e-pos, gchat, 1707 01:19:11,700 --> 01:19:12,740 duif my. 1708 01:19:12,740 --> 01:19:13,950 Sterkte môre. 1709 01:19:13,950 --> 01:19:16,220 Het 'n wonderlike Thanksgiving breek, As ek sien nie dat jy voor dan. 1710 01:19:16,220 --> 01:19:19,320 En Ek sal julle sien ná Thanksgiving op Dinsdag vir ons finale 1711 01:19:19,320 --> 01:19:20,295 artikel partytjie ooit. 1712 01:19:20,295 --> 01:19:21,545 >> Publiek: [onhoorbaar]. 1713 01:19:21,545 --> 01:19:25,270 1714 01:19:25,270 --> 01:19:25,790 >> JASON Hirsch: Groot. 1715 01:19:25,790 --> 01:19:28,900 OK, ek sien julle ouens volgende week, of in twee weke. 1716 01:19:28,900 --> 01:19:30,150 En baie geluk môre. 1717 01:19:30,150 --> 01:19:32,203