>> [Hudba hrať]
>> Reproduktor 1: Dobre, všetci.
Vitajte vo svojej poslednej časti so mnou.
Je to už celkom semester.
Nemôžem uveriť, že to je, ako, týždeň 12 alebo 11, niečo také.
Ale pretože je to náš posledný časť, máme veľa cukroví.
A budem sa snažiť a prípravka vás rovnako ako ja
môže pre vašu kvíz v stredu.
Takže asi nie je najlepší spôsob, ako, ako, koncový úsek s kvíz preskúmania.
Ale budeme snažiť, aby to sranda.
A je tu stále cukroví.
Tak dúfajme, že to robiť lepšie.
>> Váš kvíz bude dosť to isté ako Kvíz Zero.
Je to bude rovnaký formát, rovnakej dĺžky.
Budete v izbách rozptýlených cez akademickej pôde, pretože tam
sa blíži 900 z vás, a my nemôžeme všetci držať vás v miestnostiach, ako je tento.
Tak sa určite pozrieť sa na všetky One dokumentácia Quiz
on-line na cs50.harvard.edu dnes v noci alebo zajtra v noci.
Uistite sa, že viete, kde ste ide to, čo budete potrebovať, aby.
Naozaj, stačí, aby sa a ceruzku, a vy by ste mali byť v poriadku.
Tieto otázky budú veľmi podobne.
Tam bude pravdepodobne pár multiple choice, pár krátka odpoveď,
niektorí kódovanie, možno nejaký true / false, zodpovedajúce rad vecí.
Takže by ste nemali byť príliš prekvapený formáte.
>> Čo môže byť prekvapivé, je dĺžka, ktorá v minulých rokoch,
bolo oveľa dlhšie.
V mojom roku, nemám jedinú priateľa Spomínam si, že dokončenie skúšky.
Tam boli ako násobok Stránky prázdne.
Takže dĺžka môže byť druh mätúce
len preto, že v niektorých rokoch, to má Bol oveľa dlhšie, než Quiz One.
Nemám potuchy, čo to je bude ako tento rok,
ale je to niečo, čo byť vedomí.
>> Okrem toho, difficulty-- ľudia majú tendenciu
nájsť Kvíz One oveľa viac ťažšie, než Kvíz Zero.
Opäť platí, že viete, ak je ste druh chôdze
sa cítil trochu nesvoj z nasledujúcich dôvodov ste neurobili, rovnako ako ste si mysleli
by ste, alebo máte pocit, že nie robiť, rovnako ako tie na Quiz One,
nezabudnite, že tam sú asi kopa ďalších ľudí sa cíti týmto spôsobom.
Bola som určite jeden z tých ľudí.
Kvíz jeden, rovnako ako, hodil ma na slučku.
A moji priatelia majú tento skvelý obraz z nich v JP Licks
druh s nimi obrovský poháre, je rád, Quiz One,
a pozeral sa, ako by to v slzách.
>> Takže je to všeobecný pocit.
Je to ťažký test, je to ťažké kvíz.
Je zrejmé, že ak sa vyjsť von a vy pocit, že to otriaslo, ideálne pre vás.
Ale viem, že ste pravdepodobne ne-- môžete si byť takmer celkom určite nie
sám, ak budete chodiť von pocit, eh, pravdepodobne mohol dostať lepší.
Je to tuhé.
Mm-hm.
>> Divákov: Koľko je to stojí za to vo vzťahu k [nepočuteľné]?
>> Reproduktor 1: Stojí to isté.
Jo.
Ale opäť, je to tiež bude ovplyvnená ako zvyšok triedy
robí, ako sa váš oddiel robí, Ako ste sa zlepšil v priebehu času.
Triedenie je trochu z čiernej skrinky.
Takže to, čo je skutočný počet alebo percento dostanete
nie je nutne páčiť priamo koreluje so stupňom
budete dostať.
Je tu veľa faktory, ktoré idú do toho.
>> Takže s tým, že budeme prejsť nejaké recenzie kvíz.
Ja som jednoducho ísť na spustenie tohto ako minule pre vás.
Mám všetky odpovede na Kvíz Jeden z minulého roka.
Takže ak vy chcete vytiahnuť že sa na svojich vlastných počítačoch,
ak ste si vziať túto skúšku Pred a máte nejaké otázky,
Myslel som, že by sme mohli len prejsť niektoré
z tých ťažkých ty na to.
Tak sme si o tom pohovoriť, možno si trochu väčší vhľad
Do intuícia za niektoré Tieto otázky, ako k nim pristupovať.
>> Rovnako tak, ako minule, Mám 100 prezentáciu palubu
že má v podstate všetky zo snímok, ktoré som
Pripravili pre predchádzajúce oddiely od vašej poslednej quiz-- I
majú v tomto balíčku.
Takže môžeme prejsť čokoľvek
že sme hovorili o vopred, že možno vás
Chcete niečo viac o objasnenie.
Mohli by sme to urobiť ako prvý.
>> Ale inak, že som super šťastní, že druh práce
cez tieto problémy s vami.
A ja som naozaj tu zamerať sa na to, čo vy na to
Bolo by veľmi dôležité zamerať sa na.
Ako, samozrejme, všetci toto je dôležité.
Zvlášť keď sme sa prejsť Quiz One, Určite poukázať na veci ako:
oh, mohlo by to byť niečo, čo naozaj chcete vedieť
alebo ak chcete mať na svojom ťahák.
Budem vám rozprávať, čo ako sme trochu prejsť.
>> Takže v takom prípade, sú tam nejaké veci že chlapci chceli prejsť?
Tiež v prípade, nemám to v mojom palubu, môžeme vytiahnuť niečo na webe,
alebo môžeme skúsiť a urobiť up príklad za chodu.
Ale všetky pojmy, ktoré vám chlapci sú trochu rozmazaný ďalej.
[? Brian ,?] Ste have--
>> Publikum: Oh, to je kumulatívne?
Rovnako ako je veci na Quiz Zero bude tu?
>> Reproduktor 1: To je kumulatívny, ale je to oveľa viac
o dôraz na veci od vášho posledného testu.
Tak samozrejme, vy chlapci majú sa dozvedel o premenných, a slučiek,
a podmieňovací spôsob.
A to nie je ako ty, len ísť preč, pretože sú
samozrejme vlastné na všetko ešte že sme sa naučili teraz.
>> Je možné, že otázka na druhy, alebo tam
môže byť otázka na rôznych vyhľadávanie.
Alebo že by mohlo byť pár Otázky týkajúce sa možno niečo, čo ste
majú čo do činenia s zostavovania alebo rôzne chyby.
Ale ak ste sa pozrel na Kvíz Jeden z minulého roka,
zistíte, že to je Veľmi veľa zameral na veci
ktoré sa stalo od posledného testu.
>> Prečo sa tie dvere stále zamknuté?
To ma naozaj trápi.
Pretože som sa vždy snaží prejsť.
>> Tak to je celkom veľa Ako test bude.
Takže nejaké pojmy, ktoré chalani chceli prejsť?
Alebo môžeme skočiť priamo do Len pri pohľade na Quiz One
od minulého roka a druh deje cez otázky praxi.
Môžeme tiež prepínať tam a späť.
To nie je jednorazový podobne.
Nejaké otázky?
Áno.
>> Divákov: Mohol by som požiadať otázka o another--
>> Reproduktor 1: Ďalší?
>> Divákov: To je od ďalší rok.
>> Reproduktor 1: Jo.
Môžeme tiež urobiť ďalší rok.
>> Divákov: OK.
Tak v roku 2011.
>> Reproduktor 1: 2011.
Ooh, že bol rok predo mnou.
Dovoľte mi, aby som to vytiahnuť hore.
>> Divákov: Myslím si, že.
>> Reproduktor 1: Tento aspekt pomer hádže ma.
>> Divákov: 11 a 12.
>> Reproduktor 1: 11 a 12.
OK.
No, tu, tak prečo nie my to?
Ste guys-- všetci len vziať pár minút prehliadnuť vypočúva.
A budeme zostavovať zoznam.
A potom pôjdeme cez ne.
V poriadku?
Aj keď som si veľa tejto veci nastaviť.
OK.
Ja som jednoducho ísť písať veci na papier.
>> 2011, 11, a 12?
Ja som jednoducho ísť k zmene tohto zobrazenia.
OK.
To už je lepšie.
Tento koniec.
Dobrá.
>> Každý, kto iný má všetky, ktoré by chcel začať?
Tiež zabudol povedať, ak chcete viac Partia ľudí, hovorí sa na vás
a len tak vám crack Samozrejme, v posledných šiestich týždňoch
utekáme recenziu relácie z 07:00
do 08:30 večer v severozápadnom B103, ktorý tiež náhodou
Naposledy tam, kde to bude byť ja, Hannah, Daven, s Gabe
a Rob druh pomoci od okraj len tak hádzať všetky
informácie, ktoré by vás mohli Chcete mať na svojom ťahák,
lomítko, viem, všeobecne tam.
Divákov: To je tiež on-line, je to tak?
Reproduktor 1: Je to tiež on-line.
Takže si môžete tiež nepleť sa do toho fuj počasie, prejdite na koľaji,
a live-stream to, ak budete chcieť.
Som si istý, že veľa people-- viem, že by som
sa robiť, že keby som bol na vašom mieste.
OK.
Tak prečo nezačneme with-- pri guys-- dúfajme,
pozeráte skrz.
Ak nie, mohol by som len začať pracovať prostredníctvom rôznych vecí na Quiz One
z minulého roka, ak majú konkrétne otázky.
>> Začneme s tým Otázkou o komíny.
Takže to všetci pamätať druh, čo je zásobník?
Ako máme tendenciu to-- môže niekto len tak me všeobecný popis komína?
Druh dátovej štruktúry.
OK.
Takže to je jedna z dátové štruktúry, ktoré sme
Očakávam, že sa zoznámili with-- ako komíny, pole, fronty, atď.
Áno.
>> Divákov: Ako prvý V, vydržať, niečo.
>> Reproduktor 1: Je to First In, Last Out.
Presne tak.
Takže stack je presne to, čo máme tendenciu si myslieť
o tom, kedy si myslíme, že na hromadu vecí.
Takže stoh dosiek.
Prvá doska dáte dole bude na dne,
a to bude posledná ten, ktorý ste odstrániť na konci.
Vzhľadom k tomu, že vyrovnať.
>> A budete mať jeden z dna, obvykle, veci zrútenie a zlomiť.
Takže komíny si môžete myslieť rovnako ako hromadu dosiek.
Alebo príklad vždy chceli použiť je v D halách, máte zásobníky,
sú všetci tiesnia, a budete mať z vrcholu.
Takže posledná v je prvý von.
OK.
>> Takže v tomto prípade, my pozri sme have-- Zaujímalo by ma,
či môžem skutočne priblížiť trochu.
Takže máme Táto štruktúra tu.
Je to tak?
Takže máte nejaké struct, ktorý má niektoré int množstvo kapacity.
Takže to, čo si myslíme si, že predstavuje?
To je pole s kapacitou veľkosti.
>> Takže to naozaj znamená náš stack všeobecne.
Naša stack je naozaj len pole s nejakou nastavenou
že je jeho maximálna, to znamená, že jeho kapacita.
A potom máme nejaké veľkosť int, čo bude sledovať veľkosť zásobníka nášho
v ďalšom priebehu keď sme ju používate.
OK?
>> V tomto prípade je práve tu, môžeme povedať, že naše Veľkosť zásobníka bola inicializovaná na 0.
Takže máme prázdny zásobník práve teraz.
A potom chceme dokončiť implementácia popu
tak, že sa vracia int v hornej časti.
A potom, ak je to prázdny, vráti negatívne 1.
OK?
Takže chcem vy len premýšľať o tom, čo by mohlo robiť.
Čo by mohlo byť jedným z prvých veci, ktoré sme chceli skontrolovať?
Je tu skvelá vec tu.
Kedykoľvek says--, či je vôbec nejaký Ak sa tvrdenia, rovnako ako: "Ak stack je prázdny,"
alebo "Ak sa to vráti null," alebo "Ak je to, čo" - sorry.
>> Divákov: Napíšte príkazu IF.
>> Reproduktor 1: Right.
Dalo by sa napísať príkaz If.
A to je pravdepodobne jeden z Prvou vecou, ​​ktorú chcete skontrolovať.
OK.
Kedykoľvek sa vám niečo ako rohového prípadu
takto, to je typicky jeden z prvých vecí
budete kontrolovať v kóde.
>> Tiež niečo uznávajú kvízu
je, ak máte neefektívny spôsob niečo urobiť, napíšte to dole.
Pretože nie sme triedenie ste na dizajn, my sme
triedenie vás správnosť na kvízy.
Takže aj keď viete, že je to super zlý spôsob, ako niečo urobiť, ale funguje to,
napísať to, OK?
>> Doslova som videl deti posledný rok-- keď sa pozriete na minuloročnej jeden,
sú radi, robiť Mario pyramídu.
A doslova urobil "tlač, hash, tlač, hash, hash, tlač, hash,
hash, hash. "
Ale je to správne.
To, čo sa nám to povedané, takže si nemôžete vziať body off.
Ak ste až do drôt, vás samozrejme,
Chcete získať viac elegantné riešenie, a viac elegantné riešenie bude pravdepodobne
byť menej kódu, ktorý vás znamená pravdepodobne majú väčšiu šancu, že sú v poriadku.
Ale ak ste ako, vieš čo, no, ja nemám čas, ja
že to je riešenie, to nie je najlepšie, napíšte to.
A dokonca môžete písať na side, viem, že je to hrozné,
ale ja viem, že to funguje.
Takže len heads-up.
OK.
>> Tak samozrejme, prvá vec, ktorú je toto vyhlásenie If.
Takže to, čo si myslíme, že to, ak vyhlásenie bude?
A skutočne, dovoľte mi, aby som open up mojej veľkej Sublime editor.
Chystám sa kód to a potom sa ukázať vám chalani, keď sa to robí.
Tak int pop.
OK.
Takže ak máme to int pop void-- tak samozrejme,
To je nejaká funkcia, ktorá berie v nič a vráti celé číslo, nie?
Takže to len tak hovoriť o tento stack, že sme vytvorili.
>> Takže len preklady táto posledná veta "ak stack je prázdny,
pop by sa mali vrátiť negatívny 1, "ako môžeme robiť, že?
Takže či to, čo?
Ako vieme, že zásobník je prázdny?
Je to len veľkosť sa rovná 0.
Stack.size rovná 0.
Tiež som trochu písať sem slepý.
Takže ak urobím niektorý typos-- oh, tiež zabudol spomenúť.
>> Minulý týždeň som sa totálne prišiel na to, čo náš problém bol s JavaScriptom.
Nenechajte zarábať I a D. Mali by ste len
zarábať I a dostať sa element Id.
A to bol celý chybe.
Takže ak vy vrátiť a skutočne listovať mojom kódu,
Ak ste práve urobiť všetko malé písmená d, "zabudnúť element Id,"
to bude fungovať.
Tak ako som sľúbil, som bol veľmi blízko.
Len som zarábal niečo Nebol som mal, čo
Som si istý, že vy ste mal v poslednej pset.
>> Takže ak naše veľkosť sa rovná 0, Čo máme robiť?
>> Divákov: Návrat negatívny 1.
>> Reproduktor 1: Návrat negatívny 1.
Super.
Tak čo teraz budeme robiť?
Chceme pop niečo off.
Teraz to je prípad kde máme niečo.
Naša veľkosť je väčšia ako 1 alebo väčšia ako 0, je to tak?
Vlastne sme sa tam niečo.
Takže to, čo chceme urobiť, je, že sme Chcete sa vrátiť práve tu.
Chystáme sa, že chceme vrátiť vrchol zásobníka.
OK?
>> Tak ako môžeme urobiť, že?
Ako sa vrátiť na vrchol stohu?
Pamätajte si, že náš stack je len polia, nie?
To má nejakú kapacitu že sme ho dal.
Ako sme dať veci on-- alebo skutočne, budeme písať "tlačiť", po tomto.
Ak veci sú v there-- Možno, že snímka pomôže.
Hm, mám rád veľké kriedy lepšie.
>> Tak if-- a môžete len myslieť na to, ako naše zásobníka.
Tak to je 0, 1, 2.
Ja neviem, prečo je môj boxy sú stále menšie.
Ale tam.
OK.
>> Tak toto je nejaký stack s kapacitou 5.
A povedzme, že máme niečo tu a máme tu niečo.
Takže v tomto okamihu, naša veľkosť zodpovedá, čo?
2.
A ak chceme pop niečo preč z toho,
to znamená, že sa chceme dostať zbaviť toho tady.
OK?
Ako by sme sa vrátiť túto hodnotu?
>> Divákov: Veľkosť mínus 1.
>> Reproduktor 1: Right.
Takže veľkosť mínus 1, alebo mohol urobiť veľkosti mínus mínus.
Ale nemôžeme jednoducho veľkosť.
Je to vnútri struct, že jo?
Tak stack.struct.
alebo stack.size.
To je náš index práve tam.
OK?
>> A potom keď sa pozrieme späť na našu struct tu,
sme si všimli, že pre v skutočnosti prístup poľa,
musíme urobiť stack.numbers v skutočnosti prístup, že pole.
Tak, že sa vráti na vrchol zásobníka.
>> Ale niečo that--, či vy vyzerať Na odpoveď kľúč, to je všetko, čo
dať.
Tak to je ono.
Ale mohol by som tvrdiť, že sú miss-- ooh, nie to, čo som chcel.
Mohol by som tvrdiť, že sú niečo chýba, protože-- áno.
Divákov: zmenšenie veľkosti.
Reproduktor 1: Right.
Musíme znížiť našu veľkosť teraz.
Takže to, čo je zložité o to je opäť vrátite
niečo, vaša funkcia je bude výstup, nie?
Takže to, čo by sme mohli urobiť, je v skutočnosti zmenšiť prvý našu veľkosť.
A potom môžeme jednoducho stack.size.
>> Môžeme len používať stack.size ako náš index, nemohli sme sa?
Vzhľadom k tomu, ak stack.size 2, to decrement my.
A tak je to 1, ktorý je náš aktuálny indica.
Potom, čo sme sa zbaviť toho, sme vlastne majú len jednu vec v našom poli.
Tak to robí oboje.
Divákov: [nepočuteľné]?
>> Reproduktor 1: No, v tomto prípade, sme sa práve vrátil prvok
Na vrchole, ktorý je v našom formát, ktorý je na vrchole.
Ale my sme neurobili nič Veľkosť potom, čo odstráni tento prvok.
To sa nezmenilo svoju veľkosť doteraz.
To robí vlastne neodmysliteľne zmeniť naše veľkosť.
>> Ale aby to trochu jasnejšie, si to mohol urobiť stack.size mínus mínus.
Pre mňa to robí to, ja neviem, trochu jasnejšie that-- ah,
že ste skutočne mení, veľkosť a vrátením.
Druhým spôsobom bolo v poriadku, pretože ste sa mení a vracia
v rovnakom čase.
Ale to je len ďalší spôsob, ako písať to, že som chcel ukázať vám chlapci.
Dáva to zmysel?
Stohy, myslím, že sú oveľa jednoduchšie, než front.
[Smiech]
OK.
Mali ste nejaké konkrétne otázky asi 11 a 12, alebo jen--
>> Divákov: Myslím, že to bolo stack.
>> Reproduktor 1: Veľkosť zásobníku?
>> Divákov: Áno.
>> Reproduktor 1: Mám ťa.
OK.
Jo, si to mohol urobiť v jeden z týchto dvoch spôsobov.
OK.
>> Takže teraz máme druhú.
To je naozaj čudné, rovnako ako nemá to na mojej obrazovke.
Takže ak sa pozrieme tu, teraz chceme dokončení implementácie Push,
ktorý vlastne dáva niečo ide a vloží niečo, čo do našej fronty,
alebo do nášho komína.
OK?
>> Takže ak sme si všimli, my majú pár vecí.
Máme great-- keď všetko ostatné, vždy, keď máme jeden z nich,
Mali by ste aspon polovica bod, pretože všetko, čo musíte urobiť,
je zmeniť toto do C a oni vám polovicu.
Takže ", ak je zásobník plný alebo je negatívny,
zatlačte by sa mal vrátiť false. "
OK?
>> Takže my len chceme pozitívne celé čísla, že je na našej zásobníka.
V poriadku?
A to bude buď return true alebo false.
Takže sme mali [nepočuteľné] bool.
OK.
Tak preklady.
>> Divákov: [nepočuteľné].
>> Reproduktor 1: Oh, vďaka.
Jo.
To je dôvod, prečo som sa vás chalani.
Int n.
Perfect.
Vzhľadom k tomu, že sme uvedenie niečo, čo sa k našej zásobníka.
My skutočne potrebujú nejaké číslo.
OK.
>> Takže len aby taký posledný riadok, ktorý oni nám dali, náš druh rohových prípadov,
Čo si myslíte, že tu máme?
Je zrejmé, že budeme mať nejaký IF.
OK.
Tak sme si povedali, Ak je náš stack je plný alebo ak n je negatívny.
Takže asi najjednoduchšie začať s, takže ak n je menšia ako 0
nebo-- spomenúť na svoje pekné AND a OR operátormi tam.
>> Ako by sme skontrolovať, zistiť, či náš stack je plná?
Čo sa stane?
>> Divákov: Veľkosť rovnakou kapacitou.
>> Reproduktor 1: Presne tak.
Perfect.
OK.
A to, čo chceme, aby tam robiť?
>> Divákov: return false.
>> Reproduktor 1: return false.
Perfect.
Takže v polovici cesty, nie?
Prinajmenšom, vy bude mať polovica tohto.
Takže poďme si o tom myslíte.
>> Tak toto je zásobník začneme.
Snažíme sa dať nejaký element tu.
>> Máme veľkosť, ktorá je rovný 2 práve teraz.
Máme kapacitu, ktorá sa rovná až 5.
A povedzme, že máme niektoré n, ktoré je rovné 3.
Preto musíme vstupu 3 do tohto priestoru.
A musíme vložiť ju do indexu 2.
Je to tak?
>> Tak ako môžeme urobiť?
Snažím sa assign-- my chcete prístup k našej ponuku.
Tak stack.numbers.
Ale na to, čo by indica chceme, aby to bolo?
>> Divákov: [nepočuteľné].
>> Reproduktor 1: Jo.
Stack.size.
A my chceme, aby na rovnej n, nie?
>> Divákov: [nepočuteľné].
Reproduktor 1: Bol som vlastne len pri pohľade na to.
Myslím si, že je v poriadku.
>> Divákov: Nechceš Priestor okolo aktuálnej veľkosti?
>> Reproduktor 1: No, ak sa pozrieme tu, Naše veľkosť v tomto bode je 2.
Chceme, aby to ísť do indexu 2, pretože to je vrchol našej zásobníka.
Takže by som povedal, že to by mala byť stack.size,
a potom by sa zvýšila stack.size.
Má všetci súhlasia s tým?
Myslím, že s tým súhlasím.
Vy môžete argumentovať so mnou, či chcete.
Alebo nie hádať, ale môžeme diskutovať.
>> Divákov: [nepočuteľné].
>> Reproduktor 1: Mm-hm, je miesto, kde je to otvoriť, pretože nulové indexovanie.
Takže zatiaľ čo v prvej časti, Myslel som, že sa mýlili,
a oni boli vlastne pravdu, tohle časť, Vlastne si myslím, že sa mýlia.
Povedal by som, že ste mal Rozhodne vstup tu.
Myslím, že sa všetci zhodneme máme veľkosť 2.
To je presne tam, kde sme aby naše nové číslo ísť.
Tak stack.numbers na stack.size by sa mala rovnať n.
A potom by sme zvýšite stack.size.
++.
A potom to, čo chceme robiť?
Je tu ešte jedna posledná vec, musíme robiť, keď sme úspešne vložený to?
Návrat pravda.
A teraz máte hotovo.
Tak som pocit, ako by to bol celý mínus mínus stack.size a stack.size ++, že
demolovať veci.
Fuj.
Aj keep-- Mám reflexívne tendencie vždy zasiahnuť
Control, S, pretože som nikdy nechcem stratiť niektoré z mojej práce.
Ale nemusí to urobiť teraz.
OK.
Tak to bol stack.
Super.
>> Je tam niečo?
Vedeli ste, chlapci nájsť žiadne ďalšie otázky, ktoré by ste
chcel ísť z predchádzajúcich kvízy?
Ak nie, môžeme trochu začať hovoriť cez Quiz Jeden z minulého roka.
Áno.
>> Divákov: Pre prvý časť, ja som naozaj
porozumieť tomu, ako ste zmazali číslo.
Nie je to ešte?
>> Reproduktor 1: Číslo je to tam stále.
Ale čo sa stane, je, že preto, že ste Povedal to, že v hornej časti zásobníka
je tu, keď idete na niečo pridať do zásobníka, bude to jednoducho nahradiť.
>> Publikum: Oh, OK.
Reproduktor 1: Jo.
Takže je to, ako by zabudol, a je to tam typ, čo, aj keď je to tam.
Divákov: [Nepočuteľné], alebo niečo?
Reproduktor 1: Nie.
Vzhľadom k tomu, že sme v polia, nemáte
sa báť about-- budete len prepísať, keď ju budete potrebovať.
Dobrá.
Nejaké ďalšie otázky?
Ak nie, sme len tak začať pracovať prostredníctvom.
Jo.
>> Publikum: No, toto je na 2013, ale práve prechádza SQL veci.
Reproduktor 1: SQL?
OK.
Tak to je 26 až 29.
Divákov: Áno.
Reproduktor 1: OK.
Lovely.
Poďme vytiahnuť tie hore.
Oh, pozrite sa.
Už ste teraz Steve Ballmer hovorí, mimochodom?
Bolo to celkom vtipné, podľa môjho názoru.
Som rád, že zakaždým, keď som sa vychovávať CS50'S webové stránky počas úseku, je to ako, oh,
sledujte sekcie.
A ja som rád, mm.
>> Divákov: Môžeme to urobiť?
>> Reproduktor 1: Urobíme to na konci.
Ako to?
Vzhľadom k tomu, poznám ťa chlapci vždy chceli.
Tak to urobíme na konci.
Jeden otázky.
>> Divákov: [nepočuteľné].
Reproduktor 1: Bude to meta sekcie.
Divákov: Je to ako 5 sekúnd.
Divákov: Naozaj?
Divákov: Je to ako 20 sekúnd.
[Vložením hlasy]
[SMIECH]
Reproduktor 1: Páči sa mi, že ste už urobili
to, čo je to, čo ma šťastnejší.
OK.
26.
OK.
Vlastne sme len tak zrkadlo to teraz, pretože ja nemôžem.
To je nepríjemné.
OK.
Teraz vidím všetko.
Lovely.
OK.
>> Tak samozrejme, malo by to priniesť späť skvelé spomienky z [? CSG?] Financie.
Polovica z vás asi majú svoj teraz triedi.
Druhá polovica sa dostanem do veľmi, veľmi skoro, sľubujem.
>> Takže máme nejakú SQL tabuľky to je tu účty.
Asi podobne ako užívateľské tabuľky vašich obchodíky.
A máme určitý počet že bol primárny kľúč
a predstavuje Číslo účtu 12-miestne.
A bilancia je, koľko peňazí majú.
A predvolená hodnota je 100.
A oni im 100 dolárov akýkoľvek čas, aby otvoriť účet.
Prial by som si, môj bankový urobil.
OK.
>> Takže chceme dokončiť schém spresní sa vedľa čísla v rovnováhe
príslušný typ SQL.
Tak čo vy myslíte, že by bolo niečo ako vašej reflexívne reakciu
pre typy pre tieto dva?
>> Divákov: Int.
>> Reproduktor 1: int.
OK.
A potom sa o rovnováhu?
Desatinné.
OK.
Takže hneď desatinných má.
Int je blízko.
Druh veľké veci, je to zdôraznila, 12-miestne číslo účtu.
Kedykoľvek máme niečo to je väčšia ako osem číslic,
chcú použiť big int, čo myslím, že je--
>> Divákov: Je to proste SQL?
>> Reproduktor 1: Je to jediný prípad, kedy som počul to je SQL-- napríklad použitie veľkej int.
Je to len na vás, aby trochu viac presnosti,
uistite sa, že nie ste Preplnený typ vec.
Vo všetkej úprimnosti, myslím, že to je určite jeden z tých,
kde je to ako, oh, Je určený pre ľudí
ktorí majú trochu viac vedomostí jazyka SQL.
Nikdy sme hovorili o Veľké ints vo vašom pset.
Takže je to niečo ako som si istá, ak dáte int, to bolo napoly úver.
>> A ako som už hovoril, že idú byť niektoré otázky, ktoré sú práve
chcel, aby vás nachytať, tak že nie každý dostane 100.
Vzhľadom k tomu, samozrejme, tam sú niektorí ľudia v CS50
ktorí robili to pre obdobné osem rokov a ste ako,
Čo to robíš?
Ale jo.
>> Desatinné rovnováhy bol zrejmý.
A potom veľký int na číslo len preto, že z toho, rovnako ako, zdôraznila 12miestny.
Kedykoľvek niečo je tučne, alebo je to zdôraznila, rovnako ako, dávajte pozor na to.
Nerobíme to len preto, že.
OK.
>> Takže "Predpokladajme, že banka účtuje 20 dolárov mesačne za poplatok na všetkých účtoch.
S tým, čo dotazu by banka odpočítať 20 dolárov z každého účtu
aj keď to vyplýva z niektoré negatívne váhy? "
Tak začnime jednoduché.
Máme štyri základné príkazy pre SQL, ktoré sú?
Myslíte si chlapci spomenúť na štyri tie veľké, že som povedal?
>> UPDATE, DELETE, SELECT a INSERT.
Perfect.
Mám to.
Takže to, čo si myslíme, že moc byť veľmi užitočné pre toto?
My are-- UPDATE.
Presne tak.
Takže UPDATE, pretože sa pozeráme na účty, ktoré už existujú.
>> Takže pamätajte naše všeobecné niečo také je aktualizácia.
A čo potom príde po aktualizácii?
Máme nejakú tabuľku že sme odkazovanie.
Takže keď som sa vytiahnuť vznešený again-- UPDATE.
Tak to je všeobecný formát.
Takže máme Aktualizácia tabuľky.
A čo potom je to ďalšia vec, ktorú máme?
>> Môžete to urobiť WHERE.
A potom máme nejaké kvalifikátor tu.
A potom to, čo máme ďalej?
Máme nejaké SET-- niečo rovný k niečomu.
Blah rovná bla.
Aktualizované bla.
Je to tak?
Tak to je ako všeobecný idea nejaké aktualizácie.
OK?
>> Tak začnime vyplnenie do toho, čo by to malo byť.
Takže to, čo tabuľka, hovoríme?
Účty.
A potom sa v tomto prípade, čo je naozaj v pohode
Je tu hovoríme o špecifických užívatelia v náš účet,
alebo sa bavíme o všetkom užívateľom?
Hovoríme o všetkom užívateľom.
Takže v tomto prípade môžeme len zmazať WHERE kvalifikátor.
Kde je len v prípade, že chcete obmedziť to, čo ste mení.
Ak chcete zmeniť celý stôl, stačí kvapka, že.
OK.
>> Takže teraz sme v našom súbore súčasti.
Čo chceme zmeniť?
>> Divákov: Balance.
>> Reproduktor 1: Balance.
A budeme to-- ako sa budeme meniť rovnováhu?
Máme 20 dolárov poplatok, nie?
Mínus 20.
A oni povedali, že je to v poriadku, ak máme záporné zostatky.
Takže v tomto prípade nepotrebujete k tomu žiadne ďalšie kontrolu chýb.
OK?
To je doslova všetko, čo musíte urobiť.
Pohode?
OK.
>> Takže poďme prejsť ďalšie.
"S tým, čo SQL dotaz mohol banka získať čísla účtov
z jeho najbohatších zákazníkov s vyrovnáva väčšia než 1000 dolár? "
Ak je vaša banka a vaša najbohatší zákazníkov sú len tie s viac ako 1000 dolárov,
Mám pocit, že ste robí niečo zlé.
Rovnako ako, ako sa banka prežiť na to?
Rovnako ako, že úroky, nie dosť.
OK.
Pri takej veci, čo robiť myslíš, z našich štyroch funkcií,
myslíš, že budeme používať?
SELECT.
Perfect.
SELECT.
OK.
Takže sme výberom niektoré Identifikátor Z tabuľky.
A potom WHERE podmienka.
Tak ako sme sa prejsť ty, ja som jednoducho ísť
aby vám chlapci všeobecný opakovacie o všeobecnej úprave všetkých týchto.
>> Takže sme výberom nejaké z [? vec. ?] V tomto prípade,
to bude typicky nejaký stĺpec.
Takže v našom prípade máme číslo, rovnováhu.
V prípade, že váš chlapci ', možno to bolo ID, meno, heslo.
Niektorý z týchto stĺpcov, to je zvyčajne to, čo sme výberu.
>> Takže v tomto prípade, ktorá sem druh kolóny, čo identifikátor
sme ťahanie z nášho stola?
Čo to opýtajte sa nás na?
To nás žiada o naše čísla, nie?
Čísla účtov.
Takže pamätajte, len čísla v tomto prípade.
Ak sa vy niekedy mali chybu, že oranžová box by prísť.
A bolo to ako neočakávaný riadku v, ako, čokoľvek.
Je to preto, že ste volal váš stôl zle, nie?
Takže buďte istí, že ste volanie správne stĺpec.
>> Takže z tabuľky, náš stôl je tzv účty.
Opäť, uistite sa, že ste prihlásenie správne tabuľku.
A čo potom je tu náš stav?
To, čo hľadáme?
Chceme, aby naše bohaté ľudí.
Áno.
Takže vyvážiť väčšie ako 1,000.
Tu to je.
To je váš dotaz.
Nie je to tak zlé, že jo?
OK.
>> Takže teraz pre náš posledný.
S tým, že sme Breezing cez.
OK.
Takže teraz "s tým, čo by mohlo dotaz banka zatvoriť, to znamená odstrániť "-
nie máte radi, ako sa Len ti dal DELETE--
"Každý účet, ktorý má bilanciu 0?"
Myslím, že sa všetci zhodneme, že sme pravdepodobne bude používať DELETE.
Som vítaný, aby sa niektorý diskusia okolo toho.
Ale myslím, že je to dosť bezpečné hovoria, že by sme mohli použiť DELETE.
>> Takže budeme odstrániť niektoré používateľov z tabuľky, kde stave.
Takže rovnaký druh vec ako SELECT.
Takže v tomto case-- oh, prepáč.
Mal by som DELETE FROM.
Vzhľadom k tomu, Delete zmazať celý riadok.
Takže nemusíme hovoriť o tom, ktoré konkrétne veci, o užívateľa ktorom sme
mazanie.
Ak budeme odstrániť užívateľa, my sme mazanie všetko o nich.
>> Takže v tomto prípade, len je treba vyplňte náš, kde a náš stav.
Takže naša tabuľka je len naše účty stôl, ako sme robili.
A čo potom je tu náš stav?
>> Divákov: Balance.
>> Reproduktor 1: Bilancia sa rovná 0.
Správne.
Všetky dobré.
Áno.
>> Divákov: [nepočuteľné].
>> Reproduktor 1: Takže DELETE neodmysliteľne odstráni všetko.
A tak zatiaľ čo sa SELECT, SELECT sa v niektoré stĺpce, ktoré chcete vrátiť.
Ak by ste chceli všetko o užívateľ vrátil, môžete použiť hviezda.
Hviezda hovorí, návrat ku mne všetko od tohto používateľa.
Alebo ak dáte WHERE hviezdu, ktorá znamená daj mi všetko.
>> Ale DELETE neodmysliteľne má to.
Takže ak ste povedal, DELETE z účty, kde rovnováha sa rovná 0,
bude to prejsť.
A všade tam, kde je rovnováha presne 0, je vo svojej podstate robí.
Ak bude odstrániť všetko.
Hviezda je for-- s SELECT alebo aktualizovať,
to hovorí viac o jednotlivca pole zodpovedá jednému používateľovi.
>> Takže keď si SELECT hviezda z stola, kde ID
sa rovná 1, ktorý sa vracia k vám všetko o užívateľov s ID 1.
Ak by ste mali urobiť výber čísla alebo SELECT ID názvu čiarku od užívateľov
WHERE ID rovný 1, že Len vráti ich počet
alebo ich ID a ich meno.
OK?
>> Tak sme sa použiť hviezdu v tomto prípade na nám všetko o užívateľovi.
A DELETE neodmysliteľne robí.
To nie je len odstrániť ID, alebo len názov, alebo čokoľvek iného.
Jo, no.
Je to len vymaže celý užívateľa.
Takže sme sa nemusíte báť o tam hviezdy.
>> Ak by ste chceli zmazať všetko, čo by ste mohli urobiť,
a to bude len kvapka všetko.
Ale obvykle tí, nechcú robiť.
Ale ak ste niekedy chceli zmazať všetko, si to mohol urobiť.
OK.
>> Už ste chlapci našiel nejaké ďalšie otázky?
Áno.
>> Divákov: Mohli by ste urobiť 26?
>> Reproduktor 1: 26 sme práve urobili.
Publikum: Oh, 25, prepáč.
Reproduktor 1: 25.
OK.
25.
Oh.
Robia JavaScript.
Oh, nemôžem tomu uveriť.
Chystám sa neporiadok nás znovu, chlapci.
OK.
Dostali sme to.
Budeme robiť túto prácu.
Ah, jQuery.
Fun.
OK.
>> Tak sme sa ísť do dokončenia implementácia webovej stránky
takým spôsobom, že v prípade, že navštíviť, vstup ich meno, a odoslať formulár,
majú tento skvelý upozornenia okno, ktoré bude vyzerať.
Takže čokoľvek sa upozornenie, my vieme, že budeme musieť použiť JavaScript.
Yay, JavaScript.
A ak sa im nepodarí Vstup A názov pred odoslaním formulára,
by sa mali objaviť žiadna výstraha.
Takže môžete použiť jQuery, ale vy nemusíte.
>> Takže budem vám chalani pracovať Na to len na pár minút.
Premýšľajte o tom.
A potom budeme kódovať to.
Slash sa budem snažiť a myslieť Najlepší spôsob, ako vysvetliť túto odpoveď na vás.
Dobrá.
Budeme si to nastaviť.
OK.
>> Takže sme len tak prejsť to,
pretože viem, že jQuery je trochu mätúce.
JavaScript.
Je to trochu mimo tam.
Takže to, čo budeme robiť, je [Nepočuteľné] vlastne vyriešený
tento problém s jQuery.
Takže ak si spomeniete, jQuery je len knižnica
to je len postavený na JavaScripte.
Je to chcel, aby vaše život trochu jednoduchšie.
>> Určite by som, ak budete mať čas, pozrite sa
trochu dokumentácia pre jQuery.
Ale je to veľmi podobné JavaScript.
Má to podobné paradigmy, kde na vás použite tento dot operátor volanie funkcie
na objekty, ktoré máte.
>> Takže to, čo tu máme, je pre jQuery, mali by ste mať vždy tento druh
z obalu, čo je Funkcia $ (document) .ready (funkcia)
v zátvorkách tu.
OK.
Tak toto by mohlo byť niečo Chcete na svojom ťahák.
Vzhľadom k tomu, prinajmenšom, môžete majú obal pre váš jQuery.
A to bude aspoň môžete rozlúčiť cesty tam.
>> Tak rovnakým spôsobom, ktorý sme veľa hovorili o JavaScripte
a my by sme začať tým, že hľadá na to, čo sa snažíme upraviť
alebo to, čo sa snažíme zmeniť.
A to by zvyčajne Prvá vec, ktorú by sme dať.
Takže v tomto prípade, ak sa vrátime k tomu tu a my sa pozrieme na náš formulár tu,
máme tento vstupy, pravdu, toto id vstupov.
A my vieme, že na základe Na našu otázku, my
sú buď bude hodiť chyba, ak je to prázdny,
alebo budeme klásť to do záznamu, že jo?
Takže asi povedať, že sme bude zaoberať vstupy tu.
>> jQuery je veľmi podobná v tom, že v prípade my Spomeňte si na CSS, čokoľvek s ID
sa pozrieme na s hash.
Čokoľvek s triede sme Pozrel sa na s bodkou, nie?
Takže rovnako tu, čo hovoríme len o vstupy.
Videli sme, že vstupy sú ID v našej forme.
Takže budeme odkazovať sa na to ako taký.
Vstupy.
OK?
>> Takže v prípade pochybností, a to aj Ak máte nikde,
ak ste naozaj istí, o tom, ako tento prístup, A, majú tento obal.
Takže tam sa začať wrapper pre jQuery.
B, uistite sa, že viete, Čo sa mení.
A v prípade pochybností, dal, že v niečom,
a robiť bodka, čo si myslíte, že treba robiť s ním.
>> Divákov: Čo je obal?
>> Reproduktor 1: wrapper je to prvý riadok.
Tak to hovorí, počkajte, kým Môj Dokument je pripravený.
Potom začnite hrať s vecami.
OK?
Takže vieme, že sme preberať s vstupmi.
Takže sme radi, OK, vstupy je naša forma.
To je naša ID.
Tak to je to, čo sme bude hľadať.
A my chceme vidieť, čo sa stane pri odoslaní tohto formulára, že jo?
>> Tak, ako sme si mohli myslieť, máme nejaké .submit.
Takže .submit len ​​hovorí, OK, táto forma že sme odkazované s hash vstupmi,
keď je predložená, vykonať niečo iné.
Takže budeme mať nejakú funkciu.
Všimnite si, máme anonymný funkcie tu.
Máme anonymný funkciu tu.
Áno.
>> Divákov: Bude to byť vždy .submit, alebo je to len preto, že v HTML,
sme typ tlačidlo Odoslať?
>> Reproduktor 1: Je potrebné .submit, pretože je to nejaký formulár, ktorý predkladáme.
Pretože tento .submit nemusí nutne zodpovedajú tomu, čo tlačidlo je ako
zavolať.
Ale skutočnosť, že je to tvoriť, že sme odoslaním formulára.
OK.
>> Tak si všimnúť anonymný tu funkcia, ktorá says--
Divákov: Ja naozaj nemám porozumieť anonymné funkcie.
Reproduktor 1: Takže anonymný funkcie, sú
len funkcie, ktoré nemajú meno.
Takže namiesto toho, aby nejakú hlavnú funkciu že calls-- by sme mohli povedať, Ak je dokument
ready, potom by sme nazvali vstupy.
A potom, ak sú predložené, call-- ako, Ak áno-a-tak predložená,
by sme zavolať nejakú inú funkciu.
Anonymné funkcie jednoducho nemá meno,
a to bude len spustiť v rámci týchto rad vecí.
>> Takže v tomto prípade je, čo to hovorí Ak je náš dokument je pripravený,
spustiť túto funkciu.
Táto funkcia sa skladá všetko v rámci tu.
A potom ďalšia vrstva, je v poriadku, ak je vstupy predložená, spustiť to.
Je to len spôsob, ako označujúci čo by malo byť vykonané pri.
Je to doslova funkcia, ktorá nie je
majú názov, takže majú tendenciu byť vnorené do seba,
pretože nemôžete volať menom.
OK?
Doslova, anonymné funkcie je len funkcia bez názvu.
To je všetko.
Len spôsob, ako zapouzdřit rôzne veci
že chceme vykonaný v určitých časoch.
>> Divákov: [nepočuteľné].
>> Reproduktor 1: otvor?
Kde?
>> Divákov: V zátvorke za funkciu?
>> Reproduktor 1: Po funkcií.
Ktorý z nich?
>> Divákov: oboje.
Ak vložíte, rovnako ako, udalosť, alebo ak dáte argument tam,
by to bolo zle?
>> Reproduktor 1: V tomto prípade, myslím, že by ste mohli dať argument tam.
Ale pretože my nepotrebujeme Argument, že by nemala byť.
Rovnako ako, to je celé, podobne, mali by ste len
majú veci, ktoré sú treba niečo takého.
Rovnakým spôsobom, že ak by sme mali akýkoľvek funkcia, ktorá má int main void-- ako:
s int main prázdnote, vy mohol robiť int arg v, čokoľvek.
Ale ak nepotrebujete tie, tie by nemali mať ich tam.
Rovnaká vec.
Emma, ​​to máte nejakú otázku?
OK.
Super.
OK.
Takže to, čo zatiaľ máme, ak je naša Dokument je pripravený, spustiť to.
Teraz sa pozeráme na keď je predložený.
Takže teraz máme skutočne sort mäsa našej veci.
Takže potrebujeme získať hodnotu, užívateľ predložené, či už je to názov
alebo prázdny.
A potom musíme buď vrátiť Táto výstraha alebo hodiť chybu.
Či tak alebo onak.
>> Tak ako sme sa vyhlásiť premenná v jazyku JavaScript?
Var.
Tak povedzme, názov var equals-- alebo vlastne, budeme
robiť hodnotu pretože si myslím, že je to meno.
OK.
Takže máme nejakú hodnotu, tu to my chcú vytiahnuť z našej vstupy formulára.
Tak rovnakým spôsobom, ktorý sme trochu urobili vstupov,
môže mi niekto povedať, čo sme môžu byť volaní v rámci tu
Ak by sme chceli získať názov z formy?
A ak sa pozrieme na náš formulár tu, sme si všimli, že máme ID mená.
Divákov: [nepočuteľné].
>> Reproduktor 1: Nemáte myslieť na to, ako pole.
Nemusíte sa starať o to.
Takže sme proste nejaký názov.
A potom, pretože JavaScript a veci sú divný, nemôžeme jednoducho "meno."
Vlastne sme sa zavolať niektoré funkcie, ktorá nám dáva,
ako je hodnota tohto identifikátora.
OK?
Takže to je proste .val.
>> Divákov: [nepočuteľné].
>> Reproduktor 1: OK.
Tak s JavaScriptom, tento druh čo tu práve prechádza.
A môžete myslieť na to, že je to as-- ako takmer v getElementById, kde
getElementById by vlastne vrátiť plnú vec pre vás.
$ ("# Meno"), je ako, OK, mám to, môžem pristupovať,
ale ak naozaj chcete ho vrátiť hodnotu you--
>> Divákov: Je to ako ukazovateľ?
>> Reproduktor 1: Je to niečo ako ukazovateľ.
Dalo by sa myslieť na to, ako Niečo ako ukazovateľ.
Rovnako ako sa hovorí, OK, ja vedieť, ako sa tam dostať,
ale v skutočnosti získať hodnotu mimo to, o ňu budete musieť požiadať.
A bohužiaľ, samozrejme, my nie robiť príliš veľa sa JavaScriptu a jQuery.
>> Takže to príde na to, ako moc tie guys-- čo sa stalo, že viete,
to, čo sa stalo, že ste videli, a čo môžete trochu logicky hádať.
Pretože niektoré z týchto vecí, budete by pravdepodobne dostanete v polovici cesty.
Ale aby sa to úplne v poriadku, Myslím si, že tento problém pravdepodobne
mal jeden z najnižších skóre.
Publikum: Ako, napríklad, pre [nepočuteľné] vstupy,
prečo si dať val tam?
Reproduktor 1: U tohoto?
Divákov: Áno.
Reproduktor 1: Jo.
Pretože sa jedná o druh of radi, ako sme povedali,
nejaký ukazovateľ, a to som ja odkazujúce to a vlastne nám dostať hodnotu.
>> Divákov: vzhľadom k tomu, [nepočuteľné]?
>> Reproduktor 1: U vstupov, vstupy je len some--
je to, ako by sme boli len pri pohľade na to ako celok,
a to .submit hovorí nám to, čo potrebujeme vedieť.
jQuery a JavaScript je divný.
Ja viem.
Ja viem, chlapi.
Ja viem.
Existuje dôvod, prečo sa mi nepáči robiť webové programovanie.
Robím si srandu.
Nemal som dosť expozíciu k nemu.
>> Divákov: [Nepočuteľné] CSS.
>> [SMIECH]
>> Reproduktor 1: OK, to je CSS.
CSS je rovnako, ako, aby sa veci dosť, to nie je ako poďme riešiť s dátami.
Je tam rozdiel.
OK.
Takže teraz dúfajme, že to part-- aj pre problém takto, kde nesmiete
poznať syntax, môžeš byť rád, OK, mohli by ste mať nejakú hodnotu, var
a to ako, Predpokladám, že dostal hodnotu správne.
A potom by pravdepodobne mohlo napísať tento ďalší diel.
Táto ďalšia časť bude pravdepodobne Zdá sa oveľa jednoduchšie,
alebo by to robiť logické zmysel pre vás chlapci.
>> Vzhľadom k tomu, čo písali sme tak ďaleko, Viem, že by to ako, ehm, jo,
Ja neviem, že na kvíz.
Môžete úplne písať psuedocode a potom sa preniknúť do reálneho kódu
keď you-- je to trochu ako matematika.
Ak ste niekedy mali nejaké Problém multikomponentové, kde
neviete, ako sa dostať cez prvom kroku,
ale všetko ostatné sa opiera o prvý krok,
stačí povedať, ako, prevziať x rovná 4.
A potom sa spustiť s tým, že jo?
>> Môžete urobiť to isté s kódom.
Takže by sa dalo povedať, predpokladať, Mám správnu hodnotu.
Potom sa to urobiť ďalší diel tu.
Vzhľadom k tomu, táto časť sa v skutočnosti by malo byť celkom logické.
>> Preto musíme skontrolovať ak naše hodnota je prázdna.
Alebo či je to nejaký názov, skutočne dať upozornenia.
Takže to, čo by sme mohli chcieť skontrolovať?
Chceme mať nejaké If.
Čo si myslíte, že naša Pokiaľ bude?
Musíme skontrolovať, či hodnota je-- pokiaľ to nie je prázdny reťazec.
>> Perfect.
Presne tak.
OK.
Takže ak je to tak, to, čo chceme robiť?
Chceme hodiť nejaké upozornenie, že jo?
Takže je to len v strehu.
A potom, čo chceme dovnútra.
Takže to, čo sme mali mať v našom upozorniť?
>> Divákov: "Dobrý deň."
>> Reproduktor 1: Comma.
A potom si chlapci Spomínam si, ako sa spojiť?
>> Divákov: Plus.
>> Reproduktor 1: Plus.
Takže chceme mať znamienko plus.
A potom musíme ďalšie plus pre naše výkričníkom.
Super.
OK.
Inak to, čo môžeme robiť?
Nechceme nič robiť, je to tak?
Tak sme sa jednoducho vráti false.
Nie to, čo chcem robiť.
OK.
>> A potom tie, na course--, čo je dôležité
je pamätať uzavrieť Vaše anonymné funkcie.
Takže ak si všimnete, máme nejaké Funkcie tu, že tu končí.
Preto musíme uzavrieť túto Prvý a pridajte bodkočiarku.
A potom sa to človek tu musí robiť s touto anonymné funkcie,
tak sme to tam zavrieť.
To automatickú reakciu sporenia.
Áno.
Divákov: Je nejaký dôvod, that-- Len vo všetkých príkladoch v JavaScripte
že som videl, máme prvý zložené zátvorky
na rovnakej linke ako funkcia?
>> Reproduktor 1: To je štýlová.
Jo.
A skutočne, ak budete mať 61, my robiť všetky naše zložené zátvorky týmto spôsobom.
Huh?
>> Divákov: Keď sme robiť na pset, je to zlé pre štýl?
>> Reproduktor 1: Nie.
Výslovne Povedali sme vy to urobiť.
Ale v skutočnosti, to je druh z dominujúci dohovoru
v mnohých tried C a JavaScript a jQuery.
Tak samozrejme, že som sure-- a skutočne, keď som
sa k tomu tento problém úplne slepý, bez toho, aby sa na to pozeral,
je pravdepodobne veľmi málo spôsoby, ako by som dostal to.
>> Možno som bol rád, OK, možno by som treba dať niečo, čo je vstup.
A myslím, že s poznanie, ktoré, rovnako ako,
OK, ak chcem, aby si niečo z formulára, ktorý má ID,
Mám na mysli to týmto spôsobom, Asi by som si to.
Mohol by som si to.
Ale naozaj, jediná vec, ktorá si myslím, Ja by som naozaj je to tu.
>> Takže je to docela dôležité, aby Viete, ako s nejakou zložitou skúškou,
tak nejako si vybrať svoje bitky, nie?
Ak viete, že nie ste dostane že prvá časť pre jQuery, ako som povedal,
Predpokladajme, že máte túto hodnotu a robiť to, čo môžete s ním.
A ak budete mať čas, vrátiť sa a pokúsiť sa vyplniť kusov.
Ale nenechajte takú otázku to naozaj močiar vás.
Vzhľadom k tomu, čo?
To bola jedna otázka jQuery z celej skúšky.
Takže áno, to by bolo skvelé, keby ju dostal.
>> Divákov: [nepočuteľné] vás majú k dispozícii jQuery.
Reproduktor 1: Ste vitajte na použitie jQuery.
Divákov: OK. [Nepočuteľné].
Reproduktor 1: Ako by ste ju použiť?
Musel by som sa pozrieť up všetkých mojich JavaScript.
To je v skutočnosti oveľa jednoduchšie, Myslím, že na použitie jQuery,
pretože jQuery skutočne znižuje Množstvo JavaScript píšete pravdepodobne
by, rovnako ako, napoly.
Takže náš kód by pravdepodobne dvakrát tak dlho, bez toho by to.
Takže ak máte recognize-- najväčší to, aby sa od tohto problému
sú vzory.
Ak máte prístup niečo z formulára,
budete používať citácie, hash, nech sa snažíte získať prístup.
Ak je to byť predložená, chcete- použiť niečo ako .submit.
Vy ste pravdepodobne bude používať anonymné funkcie tam.
Ak naozaj potrebujete hodnotu niečo, budete robiť citácie,
hash, čo to pole, .val.
A rozpoznanie vzorcov ako sa deje
byť oveľa užitočnejšie než naozaj poznať natvrdlý odvážny.
Áno.
>> Divákov: Takže ak Užívateľ zadá svoje meno
a to prejde tohto vyhlásenia, bude to ísť dole a vrátiť false po tomto?
>> Reproduktor 1: Nie, pretože záznamu, si môžete myslieť na to ako návrat.
Jo.
Takže to bude ukončiť.
Jo.
>> Divákov: Mohli by ste [? miesto?] zátvorky
o predložiť zátvorky, čo?
>> Reproduktor 1: ja, verím.
Toto je zavretý tu.
A potom sa to dostane jeden uzatvorený tu dole.
>> Publikum: Oh, tam.
Dobrá.
>> Reproduktor 1: Samozrejme, malý, málo syntaktické veci
ako to, že budeme pravdepodobne len krúžiť a že bude rád,
nezabudnite si zátvorky.
Ale jo.
OK.
Máme ešte jeden že by sme chceli robiť?
Vedeli ste Chlapi binárny strom jeden?
Chceme ísť cez to jedno?
Mám pocit, že binárne stromy a domov by mali byť body
že vy dostanete celkom ľahko.
Nechcel by som vás stratiť body na to.
OK.
>> Poďme to urobiť DOM tu.
Prial som Povrch, tak som mohol len kresliť na obrazovke.
To je to, čo som k tomu v minulom roku.
OK.
Tak, ako som už spomenul, sme sa rozprávali o DOM, Document Object Model.
Najskôr bude vám niektorí trochu z úryvku takhle
a požiada vás o vytvorenie strom pre neho.
A to všetko len má čo do činenia s beh cez tagy.
Takže poďme sa pokúsiť to urobiť.
>> Tiež, podľa obvyklé, ak vy robiť tieto kvízy, ako som vysoko
Odporúčame, aby ste robiť, čo prax, niektoré z nich, ktoré ste ako,
Naozaj nechápem, čo je tu deje, proste, samozrejme,
pošlite mi e-mail s otázkou, a ja vám vysvetlí, ako najlepšie viem.
OK.
>> Máme nejaký dokument, a máme HTML.
OK.
Takže sme proste analyzovať tagy tu, nie?
Takže to, čo vidíme, aké sú comes-- dve podpoložky pod HTML?
Zvlášť preto, že či sú správne odsadené?
Hlava a telo.
Ah.
Hlava a telo.
Lovely.
Takže začnime tu s hlavou.
Čo je pod hlavu?
Aký je náš ďalší tag?
Názov.
A potom sa v titule, kvíz.
OK.
>> Takže doslova, je to len prechádzke značiek, OK?
Takže ak máme telo, ako sme prejsť,
Telo má tri veci vnútri, že?
Má to tri divy.
Každý div dostane svoju vlastnú malú krabičku.
A čo je v prvom div?
[Nepočuteľné]
A potom ďalší, kto je stredná, ktorý som len tak skrátiť.
A potom posledný z nich je dole.
>> Takže naozaj, je to len prechádza.
A pretože budeme dávať you HTML, ktorý je správne členité,
môžete doslova len prejsť a to ako, OK, tu je HTML.
Tak toto je vonkajšie roh, alebo najďalej vľavo,
tak, že musí byť vlastnú vec.
Tie sú na rovnakej odsadenia.
>> Takže vieme, že hlava je potrebné byť na rovnakej úrovni ako subjektu,
ale pod HTML.
To je to, čo tu máme.
Hlava a telo sú súrodenci, ale sú v HTML.
A potom sme sa jednoducho ísť do každého z nich.
Takže hlava má názov, ktorý má kvíz, ako vidíme tu.
A potom sa v tomto prípade máme orgán, ktorý má tieto tri riadky.
Tak to sú všetky súrodenci všetko pod telom.
OK?
Takže dúfajme, že keď vidíte niečo také, ste ako,
áno, len som si nakresliť strom.
Bude to skvelé.
OK.
Preto chcel, aby sa ubezpečil vy vedel.
>> Tak prečo nejdeme do 32 s našou binárnym stromom?
Vzhľadom k tomu, akonáhle pochopíte, binárne vyhľadávací strom, je to naozaj nie je tak zlé.
Takže Everett, môžem erase-- I znamenať, to všetko sú online, taky.
Takže ak máte nejaké otázky.
>> Stratené málo miesta tam, ale to je v poriadku.
Takže binárny vyhľadávací strom je len spôsob, ako usporiadať dát
nie je v poli, kde koreň je vždy vyššia
ako ľavá dieťa a koreň je vždy menšie ako pravé dieťa.
OK.
>> Takže máme tento skvelý vyhľadávací strom tu.
Máme tieto čísla 34, 59, 20, 106, 36, a 52.
A musíme usporiadať je tak
tak, že koreň je väčšia ako všetko na ľavej strane
a to je menej ako všetko na pravej strane.
A zvyčajne, čo ťa chcem urobiť, je pokúsiť sa nájsť
niečo uprostred.
S binárne vyhľadávacie stromy, môžete mať pohrať trochu s ním.
>> Ale v tomto prípade, povedzme Predpokladám, že vieme, že tento prvý.
Takže 36 je náš prvý, kto tu.
Obvykle by som skúsiť a vybrať niečo
o uprostred, ktoré vám pravdepodobne prinesú najlepšie výsledky.
Takže teraz vieme, že všetko na táto strana musí byť menší ako 36.
Ale tiež to, čo ste mohli vidieť, je že máme dva body viac ako tu.
Takže ak vieme, že potrebujeme dva Čísla, ktoré sú menšie ako koreň,
potom by ste mohli len, aby títo a vyberte si tretie číslo.
OK.
>> Tak prečo nie my začíname tejto strane?
Takže ak vieme, že všetko, čo na táto strana musí byť menšia ako 36--
ale ak sa pozrieme na toto, vieme, že toto číslo
musí byť menšie ako toto číslo, že?
Pretože toto číslo tu je na pravej strane.
A pamätajte si, rovnako ako v našej väčšej strom, všetko na pravej strane
musí byť väčší ako root.
Týmto spôsobom, my vieme, že čo je v tejto potreby
byť väčšia než čo je tu.
OK?
>> Takže máme dve možnosti pre tieto dve bublinky.
Máme 32 a 34-- alebo ľúto.
20 a 34.
Tak ako si myslíte, môžeme dať ich do?
Ak je tento jeden musí byť väčšie, než je tento,
to znamená, že chceme, aby majú 20 tu a 34 tu.
OK.
>> Takže rovnakým spôsobom, sa pozrieme V tomto druhu podstromu.
A my hovoríme, OK, nemáme 36.
Máme 106, 52 a 59.
Je to tak?
V tomto prípade je tu, my vedia, že tento človek potrebuje
na jednu vec, ktorá je väčšia než to a jedna vec, ktorá je menšia než to.
Je to tak?
Takže ak dáme ich do poriadku, je to len o zistenie, že stredné hodnoty znova.
Takže naša stredná hodnota je 59.
Takže hovoríme, OK, čo je menej ako 59 rokov?
No, to je 52.
A čo je väčší ako 59?
No, to je 106.
OK?
Takže je to len trochu ako puzzle.
To typicky pomáha, najmä v malej stromy, ako je tento,
ak ste len, aby to, ak máte vedieť, koľko je na ľavej strane
a koľko je na pravdu, že môže len
vám umožní vybrať si, čo by mala byť koreňového adresára.
A potom môžete druh práca odtiaľ.
Mm-hm.
33?
Iste.
OK.
Preto chceme vytvoriť uzol alebo binárny vyhľadávací strom.
A poďme sa pozrieť na to, čo by mohlo byť v ňom.
A myslím, že to bude v skutočnosti byť naša posledná problém.
Ah.
OK.
>> To je ako to, čo môžeme myslieť ako uzol, nie?
Máme nejakú hodnotu, a my viem, že to bude buď
opustili a právo detí.
Binárne vyhľadávanie tree--, že prostriedky že má nanajvýš dve deti.
OK?
Premýšľajme o tom, ako sme sa definoval prepojeného zoznamu, je to tak?
>> Mali sme nejaké int, že predstavovalo hodnotu.
Mali sme nejaký ukazovateľ, ktorý predstavoval čo to bude nabudúce.
Binárny vyhľadávací strom je veľmi podobná.
Máme ešte nejakú hodnotu, n, že dáme to, že jo?
A potom som čerpal tieto veľmi výslovne sa šípkami,
preto, že sú skutočne ukazovatele.
OK?
>> Takže n je zvyčajne to, čo?
Je to nejaká hodnota.
Čo typicky označiť ju ako?
Int.
Takže máme nejaké int n, alebo int hodnota, alebo čo by ste chceli, aby to nazvať.
A potom máme vľavo dieťa a právo dieťa.
Je to tak?
A my vieme, že to, čo sú point--, čo sa im ukazuje to?
Sú smerujúce do iných uzlov, že jo?
Tak ako by sme vyhlásiť ukazovateľ uzla?
>> Divákov: [nepočuteľné].
>> Reproduktor 1: Mm-hm.
A budeme mať dvaja z nich, že jo?
A potom sa môžeme doslova sa vľavo pre ľavú dieťa
a priamo na pravej dieťa.
Actually-- ľúto.
Vzhľadom k tomu, potrebujeme struct.
>> Takže struct je, že sme nie dokončil uverejnenia uzol doteraz.
Uzol, takže je v tu.
Je to niečo ako rekurzívne definície, že jo?
Takže keď sme v rámci táto definícia, my
neskončil uverejnenia Uzol ako štruktúra,
takže musíme urobiť struct uzol len povedať, áno,
sme v skutočnosti na mysli späť k sebe samému typu vec.
Že rovnako ako kedysi, že je to vytvorený, bude to v poriadku.
>> Tak, ako veľký si chlapci myslíte, že to je?
Aká je veľkosť tejto štruktúry?
12.
Prečo?
Presne tak.
A v skutočnosti, jeden z prvej otázky jeden Quiz One
je o veľkosti, čo je dôvod, prečo som sa pýtal.
Dobrá.
>> Ideme do konca, pretože DCE bude kričať na mňa, ak to neurobíme.
Ale ak vy máte nejaké otázky, Samozrejme, napíšte mi, dajte mi vedieť.
Vy sa chystáte zatraste.
Som super nadšený.
Vy sa uskutoční tak, ako stredy, a potom
dostanete pracovať na svoje finále projekty, a to bude úžasné.
>> Budem tu nabudúce týždeň od 4:00 do 04:30
ak vy chcete prísť vyzdvihnúť svoje kvízy.
Ak chcete, aby mi nájsť nejaký iný čas alebo len koordinovať iný čas,
neváhajte a dajte mi vedieť.
V opačnom prípade, je to naša posledná úsek.
Tak to bolo skvelé, že ťa vidím ľudí.
Venujte viac cukríky.
A veľa šťastia na vašej kvíz.