[MUSIC kucheza] 

SPIKA 1: All haki, kila mtu. Karibu sehemu yako ya mwisho na mimi. Imekuwa ni kabisa muhula. Siwezi kuamini hii ni, kama, wiki 12 au 11, kitu kama hicho. Lakini kwa sababu ni mwisho wetu sehemu, tuna kura ya pipi. Na mimi nina kwenda kujaribu na prep ninyi kama vile mimi unaweza kwa jaribio yako juu ya Jumatano. Basi pengine si njia bora ya, kama, mwisho sehemu na jaribio mapitio. Lakini tutaweza kujaribu na kufanya hivyo na furaha. Na kuna pipi. Hivyo hopefully, kwamba kutakuwa na kufanya vizuri zaidi. 

Jaribio yako ni kwenda kuwa pretty kiasi kitu kimoja kama Quiz Zero. Ni kwenda kuwa sawa format, urefu sawa. Wewe utakuwa na katika vyumba kutawanyika hela ya chuo, kwa sababu kuna ni karibu na 900 wenu, na sisi hawawezi wote kushikilia wewe katika vyumba kama hii. Hivyo kuwa na uhakika kuangalia yote ya Quiz One nyaraka online saa cs50.harvard.edu usiku wa leo au kesho usiku. Hakikisha unajua ambapo wewe ni kwenda, nini unahitaji kuleta. Kweli, wewe tu haja ya kuleta mwenyewe na kalamu, na unapaswa kuwa faini. maswali itakuwa sawa sana. Kuna pengine kuwa wanandoa uchaguzi nyingi, wanandoa short jibu, baadhi coding, labda baadhi ya kweli / uongo, vinavyolingana aina ya mambo. Hivyo unapaswa kuwa pia kushangazwa na format. 

Nini inaweza kuwa jambo la kushangaza ni urefu, ambayo, katika miaka ya nyuma, imekuwa muda mrefu. Katika mwaka wangu, sina rafiki single kwamba mimi kumbuka kumaliza mtihani. Kulikuwa na kama nyingi kurasa kushoto tupu. Hivyo urefu inaweza kuwa aina ya disorienting kwa sababu tu katika baadhi ya miaka, ina imekuwa muda mrefu zaidi kuliko Quiz One. Mimi hawana wazo nini ni kwenda kuwa kama mwaka huu, lakini ni kitu kuwa na ufahamu wa. 

Zaidi ya hayo, watu difficulty-- huwa kupata Quiz One zaidi ngumu zaidi kuliko Quiz Zero. Tena, unajua, kama wewe ni aina ya kutembea nje hisia uneasy kidogo kwa sababu hakuwa kufanya vizuri kama wewe walidhani ungependa au kujisikia kama alivyofanya si kufanya vizuri kama alivyofanya juu ya Quiz One, kukumbuka kwamba kuna pengine mengi ya watu wengine hisia kwa njia hiyo. Mimi ni dhahiri alikuwa mmoja wa watu hao. Quiz moja, kama, kurusha nami kwa kitanzi. Na marafiki zangu kuwa hii kubwa picha ya yao katika JP Licks aina ya na hizi kubwa sundaes, kuwa kama, Quiz One, na kuangalia kama wao uko katika machozi. 

Hivyo ni hisia kwa ujumla. Ni mtihani mgumu, ni jaribio mgumu. Ni wazi, kama wewe kuja nje na wewe kujisikia kama wewe inakabiliwa hayo, kubwa kwa ajili yenu. Lakini tunajua kwamba wewe pengine not-- wewe ni karibu zaidi dhahiri si peke yake kama wewe kutembea nje hisia kama, eh, pengine inaweza kuwa na kujipatia bora. Ni ngumu. Mm-hm. 

Watazamaji: Ni kiasi gani ni thamani kuhusiana na [inaudible]? 

SPIKA 1: Ni thamani sawa. Yeah. Lakini tena, ni pia kwenda kuwa walioathirika na jinsi wengine darasani hivyo, jinsi sehemu yako hivyo, jinsi umefanya kuboresha zaidi ya muda. Grading ni kidogo ya sanduku nyeusi. Hivyo kile idadi halisi au asilimia kupata si lazima kama moja kwa moja uhusiano na daraja wewe ni kwenda kupata. Kuna mengi ya sababu ya kuwa na kwenda katika hiyo. 

Hivyo, pamoja na kwamba, tunakwenda kwenda kwa baadhi ya mapitio quiz. Mimi tu kwenda kukimbia hii kama mara ya mwisho kwa ajili yenu guys. Nina majibu yote kwa jaribio moja ya mwaka jana. Hivyo kama wewe guys wanataka kuvuta kuwa hadi kwenye kompyuta yako mwenyewe, kama wameweza kuchukuliwa mtihani huu kabla na una maswali, Mimi nilikuwa kufikiri tunaweza tu kwenda kupitia baadhi ya wale ngumu zaidi juu ya hilo. Hivyo tunaweza kuzungumza kuhusu suala hilo, labda kupata kidogo zaidi ufahamu ndani ya Intuition nyuma baadhi ya maswali haya, jinsi ya kuzitumia. 

Kama vile, kama mara ya mwisho, Nina 100-slide staha ambayo ina kimsingi wote ya slides kwamba mimi kuwa tayari kwa ajili uliopita sehemu tangu jana quiz-- mimi yako kuwa katika staha hii. Hivyo tunaweza kwenda kwa pretty kiasi chochote kwamba tumekuwa aliyesema kuhusu kabla kwamba labda wewe wanataka ufafanuzi zaidi kidogo juu. Tunaweza kufanya kwamba kwanza. 

Lakini vinginevyo, mimi nina super furaha tu aina ya kazi njia ya matatizo hayo pamoja nawe. Na mimi nina kweli hapa kuzingatia nini guys kufikiri itakuwa muhimu zaidi kwa kuzingatia. Kama, ni wazi, yote ya mambo haya ni muhimu. Hasa kama sisi kwenda kwa njia ya Quiz One, Mimi utakuwa dhahiri kumweka nje mambo kama, oh, hii inaweza kuwa kitu wewe kweli unataka kujua au unataka kuwa juu ya kudanganya karatasi yako. Mimi itakuwa nawaambia mambo kama sisi aina ya kwenda kupitia. 

Kadhalika kumbuka kwamba, kuna mambo yoyote kwamba wewe guys ungependa kwenda juu? Pia, kama sina ni katika staha yangu, tunaweza kuvuta up kitu kwenye mtandao, au tunaweza kujaribu na kufanya up mfano juu ya kuruka. Lakini dhana yoyote kwamba guys ni kidogo fuzzy juu. [? Brian,?] Ulienda have-- 

Watazamaji: Oh, ni nyongeza? Kama, ni mambo ya juu Quiz Zero kwenda kuwa juu hapa? 

SPIKA 1: Ni nyongeza, lakini ni mengi zaidi ya msisitizo juu ya mambo tangu jaribio yako ya mwisho. Hivyo ni wazi, wewe guys kuwa kujifunza kuhusu vigezo, na loops, na conditionals. Na si kama wale tu kwenda mbali, kwa sababu wao ni wazi asili ya kila kitu kingine kwamba tumejifunza sasa. 

Kunaweza kuwa na swali juu ya kila aina, au kuna inaweza kuwa swali juu ya utafutaji tofauti. Au huenda kuna wanandoa maswali juu ya labda kitu kuwa na kufanya na kuandaa au makosa mbalimbali. Lakini kama wewe Tumeangalia katika Quiz mmoja kutoka mwaka jana, utasikia taarifa kwamba ni sana kulenga mambo ambayo yametokea tangu jaribio yako ya mwisho. 

Kwa nini ni mlango kwamba daima imefungwa? Ni kweli ananisumbua. Kwa sababu mimi daima kujaribu kwenda kwa njia hiyo. 

Hivyo kwamba kiasi pretty jinsi jaribio itakuwa. Hivyo kuna dhana yoyote ambayo nyie ungependa kwenda juu? Au tunaweza kuruka haki katika tu kuangalia Quiz One kuanzia mwaka jana na aina ya kwenda kupitia maswali mazoezi huko. Sisi pia unaweza kubadili na kurudi. Hii si wakati mmoja aina ya kitu. Maswali yoyote? Ndiyo. 

Watazamaji: Naweza kuuliza swali kuhusu another-- 

SPIKA 1: Mwingine? 

Watazamaji: Hii ni kutoka mwaka mwingine. 

SPIKA 1: Yeah. Sisi pia unaweza kufanya mwaka mwingine. 

Watazamaji: OK. Kadhalika 2011. 

SPIKA 1: 2011. Ooh, kwamba ilikuwa mwaka kabla yangu. Hebu kuvuta hii up. 

Watazamaji: nadhani. 

SPIKA 1: Jambo hili uwiano ni kutupa mimi mbali. 

Watazamaji: 11 na 12. 

SPIKA 1: 11 na 12. OK. Naam, hapa, kwa nini sio sisi kufanya hili? You guys-- kila mtu tu kuchukua michache ya dakika kuangalia njia ya Quizzes. Na tutaweza kukusanya orodha. Na kisha tutaweza kwenda kwa njia yao. Wote haki? Wakati mimi kupata rundo ya mambo haya kuanzisha. OK. Mimi tu kwenda kuandika mambo ya chini juu ya karatasi. 

2011, 11 na 12? Mimi tu kwenda na mabadiliko ya kuonyesha hii. OK. Hiyo ni bora. Hii juu. Wote haki. 

Mtu mwingine yoyote kwamba Ningependa kuanza na? Pia, alisahau kusema, kama unataka zaidi rundo la watu kuzungumza saa wewe na tu kutoa ufa Bila shaka katika wiki sita iliyopita, sisi ni mbio mapitio kikao kutoka 7:00 kwa 8:30 usiku katika Northwest B103, ambayo pia kilichotokea mara ya mwisho, ambapo ni kwenda kuwa mimi, Hana, Daven, pamoja na Gabe na Rob aina ya kusaidia kutoka wakati wa aina tu ya kutupa wote habari kwamba wewe nguvu wanataka kuwa juu ya kudanganya karatasi yako, kufyeka, kujua kwa ujumla huko. Watazamaji: Hiyo pia online, haki? SPIKA 1: Ni pia online. Hivyo unaweza pia kukaa nje ya hii hali ya hewa icky, kwenda Dorm yako, na kuishi-mkondo ni kama Ningependa. Mimi nina uhakika mengi ya people-- Mimi najua napenda kuwa kufanya hivyo kama ningekuwa katika viatu yako. OK. Hivyo kwa nini sio sisi kuanza with-- wakati wewe guys-- hopefully, wewe ni kuangalia kwa njia ya. Kama si, mimi ili tu kuanza kufanya kazi kupitia mambo mbalimbali juu ya Quiz One kuanzia mwaka jana isipokuwa wewe una maswali maalum. 

Tutaweza kuanza na hii swali hapa kuhusu mwingi. Hivyo haina kila mtu kukumbuka namna ya nini stack ni? Jinsi sisi huwa to-- yeyote anaweza kutoa tu mimi maelezo ya jumla ya stack? aina ya muundo data. OK. Hivyo ni moja ya miundo data kwamba sisi wanatarajia kuwa familiar with-- kama mwingi, arrays, foleni, kadhalika. Ndiyo. 

Watazamaji: Kama Kwanza Katika, jana Out, kitu fulani. 

SPIKA 1: Ni Kwanza Katika, Kati mwisho. Hasa. Hivyo stack ni hasa nini sisi huwa na kufikiri kuhusu wakati sisi kufikiri ya stack ya mambo. Hivyo stack ya sahani. sahani ya kwanza kuweka chini ni kwenda kuwa chini, na ni kwenda kuwa wa mwisho moja kwamba wewe kuondoa mwishoni. Kwa sababu wao stack up. 

Na wewe kuchukua moja nje ya chini, kawaida, mambo ajali na kuvunja. Hivyo mwingi unaweza kufikiria tu kama stack ya sahani. Au mfano sisi daima kama kutumia ni katika D kumbi, una trays, wao ni wote sifa juu, na wewe kuchukua kutoka juu. Hivyo moja ya mwisho katika ni ya kwanza nje. OK. 

Hivyo katika kesi hapa, sisi kuona sisi have-- Nashangaa kama naweza kweli zoom katika kidogo. Hivyo tuna hii struct hapa. Haki? Hivyo una baadhi ya struct kwamba ana baadhi int idadi ya uwezo. Basi je, tunafikiri kwamba inawakilisha? Hii ni safu na ukubwa UWEZO. 

Hivyo hii kweli inawakilisha stack yetu kwa ujumla. Stack yetu ni kweli tu safu na baadhi ya simu kuweka yaani max wake, yaani, UWEZO wake. Na kisha tuna baadhi ya ukubwa int, ambayo kufuatilia ukubwa wa stack yetu katika kozi ya wakati tunayatumia. OK? 

Katika kesi hiyo haki hapa, tunasema kwamba yetu stack ukubwa imekuwa initialized kwa 0. Hivyo tuna stack tupu hivi sasa. Na kisha tunataka kukamilisha utekelezaji wa pop vile kwamba anarudi int saa ya juu. Na kisha kama ni tupu, kuirudisha hasi 1. OK? Hiyo mimi nataka wewe guys tu kufikiri kuhusu nini sisi tupate kufanya huko. Nini kinaweza kuwa moja ya kwanza mambo tunatarajia unataka kuangalia? Kuna jambo kubwa hapa ni. Kila ni says-- kama kuna milele baadhi Kama taarifa, kama "Kama stack ni tupu," au "Kama hii anarudi null," au "Kama hili ni chochote" - sorry. 

Watazamaji: Andika maelezo Kama. 

SPIKA 1: Haki. Unaweza kuandika taarifa Kama. Na kwamba pengine ni moja ya mambo ya kwanza unataka kuangalia. OK. Kila wao kukupa aina ya kama kesi kona kama hii, kwamba ni kawaida moja ya mambo ya kwanza wewe ni kwenda kuangalia katika code yako. 

Pia, kitu kutambua kwa jaribio ni kama una njia ufanisi kufanya jambo fulani, kuandika ni chini. Kwa sababu sisi siyo grading wewe juu ya kubuni, tuko grading wewe juu ya usahihi kwa Quizzes. Hivyo hata kama wewe kujua kwamba ni super njia mbaya kufanya kitu lakini ni kazi, kuandika ni chini, OK? 

Literally, nimeona kids mwisho year-- kama ukiangalia moja mwaka jana, wao ni kama, kufanya Mario piramidi. Nao literally tu alifanya "magazeti, hash, magazeti, hash, hash, magazeti, hash, hash, hash. " Lakini ni sahihi. Haina nini tunaambiwa ni kwa, hivyo huwezi kuchukua pointi off. Kama wewe ni chini ya waya, ni wazi, wewe wanataka kupata ufumbuzi zaidi ya kifahari, na ufumbuzi zaidi ya kifahari pengine kuwa chini code, ambayo ina maana pengine kuwa na nafasi kubwa ya kuwa na haki. Lakini kama wewe ni kama, unajua nini, hakuna, mimi hawana muda, mimi kujua hii ni ufumbuzi, si bora, kuandika. Na unaweza hata kuandika juu ya upande, najua hii ni ya kutisha, lakini najua ni kazi. Hivyo tu vichwa-up. OK. 

Hivyo ni wazi, jambo la kwanza ni kauli hii Kama. Basi je, tunafikiri hii Kama taarifa hiyo ni kwenda kuwa? Na kwa kweli, napenda wazi up Mtukufu mhariri wangu mkubwa. Mimi nina kwenda na kanuni hii na kisha kuonyesha guys wakati ni kosa. Hivyo int pop. OK. Hivyo kama tuna hii int pop void-- hivyo ni wazi, hii ni baadhi ya kazi ambayo inachukua katika chochote na anarudi integer, haki? Hivyo ni tu kwenda kuzungumza kuhusu stack hii kwamba tumeunda. 

Hivyo tu kutafsiri hii ya mwisho hukumu, "kama stack ni tupu, pop lazima kurudi hasi 1, "jinsi gani sisi kufanya hivyo? Hivyo Kama nini? Jinsi gani tunajua kwamba stack ni tupu? Ni kawaida tu sawa na 0. Stack.size sawa 0. Pia, mimi nina aina ya kuandika hapa kipofu. Hivyo kama mimi kufanya lolote typos-- oh, pia alisahau kutaja hii. 

Wiki iliyopita, Mimi kabisa figured nje nini tatizo letu ni pamoja na JavaScript. Je, si capitalize mimi na D. You lazima tu capitalize mimi na kupata kipengele kwa Id. Na kwamba alikuwa makosa nzima. Hivyo kama wewe guys kwenda nyuma na kweli kuangalia kwa njia ya kanuni wangu, kama wewe tu kufanya kila kitu a lowercase d, "kusahau kipengele kwa Id," itakuwa kazi. Hivyo kama mimi aliahidi, nilikuwa karibu sana. I just mtaji kitu Mimi nilikuwa hawatakiwi, ambayo Mimi nina uhakika guys alikuwa katika pset yako ya mwisho. 

Hivyo kama kawaida yetu ni sawa na 0, kile ni sisi wanatakiwa kufanya nini? 

Watazamaji: Kurudi hasi 1. 

SPIKA 1: Rejea hasi 1. Baridi. Hivyo sasa tunafanya nini? Tunataka pop kitu mbali. Sasa hii ni kesi ambapo tuna kitu. Kawaida yetu ni mkuu kuliko 1 au zaidi ya 0, haki? Sisi kweli kuwa kitu huko. Hivyo nini tunataka kufanya ni sisi wanataka kurudi haki hapa. Sisi ni kwenda kusema tunataka kurudi juu ya stack. OK? 

Hivyo jinsi gani sisi kufanya hivyo? Jinsi gani sisi kurudi juu ya stack? Kumbuka, stack yetu ni tu safu, haki? Ina baadhi ya uwezo wa kwamba tumekuwa aliyopewa yake. Kama tumekuwa kuweka mambo on-- au kweli, sisi ni kwenda kuandika "kushinikiza" baada ya hii. Kama mambo ni katika there-- labda picha itasaidia. Hm, mimi kama chaki kubwa zaidi. 

Hivyo if-- na unaweza tu kufikiri ya hii kama stack yetu. Hivyo hii ni 0, 1, 2. Mimi sijui ni kwa nini masanduku yangu ni kupata ndogo. Lakini kuna. OK. 

Hivyo hii ni baadhi stack na uwezo wa 5. Na hebu sema tuna kitu hapa na tuna kitu hapa. Hivyo katika hatua hii, yetu ukubwa ni sawa na nini? 2. Na kama tunataka pop kitu mbali ya hayo, hiyo ina maana tunataka kupata kuepuka haki hii hapa. OK? Hivyo ni jinsi gani sisi kurudi thamani hii? 

Watazamaji: Size minus 1. 

SPIKA 1: Haki. Hivyo ukubwa minus 1, au inaweza kufanya ukubwa minus minus. Lakini hatuwezi tu kufanya kawaida. Ni ndani ya struct, haki? Hivyo stack.struct. au stack.size. Hiyo ni index haki yetu huko. OK? 

Na kisha kama sisi kuangalia nyuma katika struct yetu hapa, sisi taarifa kwamba kwa kweli kupata safu, tunahitaji kufanya stack.numbers kwa kweli kupata kwamba safu. Hivyo kwamba anarudi juu ya stack. 

Lakini kitu that-- kama wewe guys kuangalia jibu muhimu, hii yote ni wao kukupa. Hivyo hii ni yake. Lakini mimi wanaweza kusema kwamba wao ni miss-- ooh, si nini nilitaka. Mimi wanaweza kusema kwamba wao ni kukosa kitu, because-- ndiyo. Watazamaji: Kupungua kawaida. SPIKA 1: Haki. Tunahitaji kupungua kawaida yetu sasa. Basi nini Tricky kuhusu hii ni mara ya kurudi kitu, kazi yako ya kwenda exit, haki? Hivyo kile tupate kufanya ni kweli kupungua ukubwa yetu ya kwanza. Na kisha tunaweza tu stack.size. 

Tunaweza tu kutumia stack.size kama orodha yetu, hawakuweza sisi? Kwa sababu kama stack.size ni 2, sisi pungufu yake. Na hivyo ni 1, ambayo ni indice yetu halisi. Mara sisi kujikwamua hii, sisi kweli tu kuwa kitu kimoja katika safu yetu. Hivyo ni gani wote. Watazamaji: [inaudible]? 

SPIKA 1: Naam, katika kesi hii, sisi tu akarudi kipengele saa ya juu kwamba ni katika yetu ukubwa kwamba saa ya juu. Lakini hatujafanya chochote ukubwa baada ya sisi kuondolewa kwamba kipengele. Hii haujabadilika kawaida yetu bado. Hii haina kweli asili mabadiliko ya kawaida yetu. 

Lakini kwa kufanya hivyo wazi kidogo, unaweza kufanya stack.size minus minus. Kwangu mimi, inafanya, mimi sijui, zaidi kidogo wazi that-- ah, kwamba wewe ni kweli kubadilisha ukubwa na kurudi yake. njia nyingine ilikuwa nzuri, kwa sababu ungekuwa kubadilika na kurudi wakati huo huo. Lakini hii ni tu njia nyingine ya kuandika ni kwamba nilitaka kuonyesha nyie. Je, hiyo mantiki? Mwingi, nadhani, ni rahisi zaidi kuliko foleni. [Anacheka] OK. Je, una maswali yoyote maalum juu ya 11 na 12, au just-- 

Watazamaji: Nadhani ilikuwa ni stack. 

SPIKA 1: ukubwa stack? 

Watazamaji: Yeah. 

SPIKA 1: Gotcha. OK. Yeah, unaweza kufanya hivyo katika moja ya njia hizi mbili. OK. 

Hivyo basi, tuna kila mmoja wetu. Hii ni kweli weird, kama kutokuwa na hii juu ya screen yangu. Hivyo kama sisi kuangalia hapa, sisi sasa wanataka kukamilisha utekelezaji wa kushinikiza, ambayo kwa kweli unaweka kitu, huenda na kuwekeza kitu katika foleni yetu, au kwenye mkusanyiko wetu. OK? 

Hivyo kama sisi taarifa, sisi kuwa wanandoa wa mambo. Tuna great-- wetu kama wote mwingine, wakati sisi kuwa mmoja wa haya, nyie lazima angalau kupata nusu uhakika, kwa sababu wote una kufanya ni kubadilisha huu katika C. Na wao kukupa nusu yake. Hivyo "kama stack ni kamili au ni hasi, basi kushinikiza lazima kurudi uongo. " OK? 

Hivyo sisi tu wanataka chanya integers kuwa juu ya stack yetu. Wote haki? Na hii ni kwenda ama kurudi kweli au uongo. Hivyo tunapaswa [inaudible] bool. OK. Hivyo kutafsiri. 

Watazamaji: [inaudible]. 

SPIKA 1: Oh, thanks. Yeah. Hii ni kwa nini mimi na wewe guys. Int n. Perfect. Kwa sababu sisi ni kuweka kitu juu ya stack yetu. Sisi kwa kweli haja ya baadhi ya idadi. OK. 

Hivyo tu kuchukua kwamba mstari wa mwisho kwamba wao alitupa, aina yetu ya kona ya kesi, unafikiri nini sisi hapa? Ni wazi, tunakwenda kuwa na baadhi ya Kama. OK. Hivyo sisi akasema, Kama stack yetu ni n full au kama ni hasi. Basi pengine rahisi kuanza na, hivyo kama n ni chini ya 0 or-- kumbuka nzuri yako NA na AU operators huko. 

Jinsi gani sisi kuangalia kuona kama stack yetu ni kamili? Nini kinatokea? 

Watazamaji: Size UWEZO sawa. 

SPIKA 1: Hasa. Perfect. OK. Na nini tunataka kufanya huko? 

Watazamaji: Kurudi uongo. 

SPIKA 1: Kurudi uongo. Perfect. Hivyo nusu ya huko, haki? Kwa uchache sana, you guys itakuwa na nusu ya hizi. Hivyo hebu fikiria kuhusu hili. 

Hivyo hii ni stack sisi kuanza na. Sisi ni kujaribu kuweka baadhi ya kipengele hapa. 

Tuna ukubwa kwamba sawa na 2 hivi sasa. Tuna uwezo kwamba sawa na 5. Na hebu kusema tuna baadhi n kwamba sawa na 3. Hivyo tunahitaji pembejeo 3 katika nafasi hii. Na tunahitaji pembejeo katika index 2. Haki? 

Hivyo jinsi gani sisi kufanya hili? Kujaribu assign-- sisi wanataka kupata safu yetu. Hivyo stack.numbers. Lakini katika kile indice ingekuwa tunataka hii kuwa? 

Watazamaji: [inaudible]. 

SPIKA 1: Yeah. Stack.size. Na tunataka kuwa na n sawa, haki? 

Watazamaji: [inaudible]. SPIKA 1: Mimi kwa kweli tu kuangalia saa hiyo. Nadhani ni makosa. 

Watazamaji: Je, si unataka nafasi zamani ukubwa wa sasa? 

SPIKA 1: Naam, kama sisi kuangalia hapa, kawaida yetu katika hatua hii ni 2. Tunataka kwenda katika index 2, kwa sababu hii ni juu ya stack yetu. Hivyo napenda kusema kwamba ni lazima stack.size, na basi ingekuwa kuongeza stack.size. Je, kila mtu kukubaliana? Nadhani kukubaliana na kwamba. You guys unaweza kusema na mimi kama Ningependa. Au wanasema, lakini tunaweza kujadili suala hilo. 

Watazamaji: [inaudible]. 

SPIKA 1: Mm-hm, ni ambapo ni kufungua kwa sababu ya sifuri Indexing. Hivyo ambapo katika sehemu ya kwanza, Nilidhani walikuwa sahihi, na walikuwa kweli haki, hii sehemu, mimi kwa kweli nadhani walikuwa na makosa. Napenda kusema unapaswa dhahiri pembejeo hapa. Nadhani sisi wote kukubaliana tuna kawaida ya 2. Hiyo ni hasa ambapo sisi wanataka idadi wetu mpya kwenda. Hivyo stack.numbers katika stack.size lazima sawa n. Na kisha sisi ingekuwa increment stack.size. ++. Na kisha nini tunataka kufanya? Kuna jambo moja iliyopita tuna kufanya kama sisi mafanikio kuingizwa hili? Kurudi kweli. Na sasa wewe ni kosa. Hivyo mimi kuhisi kama ilivyokuwa minus nzima minus stack.size na stack.size ++ kwamba messed mambo up. Ugh. Mimi keep-- nina hii goti-jerk tabia ya daima hit Control, S, kwa sababu mimi kamwe wanataka kupoteza yoyote ya kazi yangu. Lakini mimi hawana haja ya kufanya hivyo sasa. OK. Ili kwamba ilikuwa stack. Baridi. 

Je, kuna kitu? Je, guys kupata yoyote maswali mengine ambayo wewe d kama kwenda juu kutoka Quizzes uliopita? Kama siyo, tunaweza aina ya kuanza kuzungumza kupitia Quiz mmoja kutoka mwaka jana. Ndiyo. 

Watazamaji: Kwa mara ya kwanza sehemu, mimi si kweli kuelewa jinsi gani ilifutwa simu. Je, si ni bado huko? 

SPIKA 1: idadi bado kuna. Lakini nini kinatokea ni kwamba kwa sababu wewe wameweza aliiambia kwamba juu ya stack yako ni hapa, wakati wa kwenda kuongeza kitu kwenye stack, hivyo itabidi tu kuchukua nafasi yake. 

Watazamaji: Oh, OK. SPIKA 1: Yeah. Hivyo ni kama alisahau na ni huko aina ya kitu hata kama ni huko. Watazamaji: [inaudible] au kitu chochote? SPIKA 1: No. Kwa sababu tuko katika safu, huna na wasiwasi about-- utasikia tu override ni wakati unahitaji yake. Wote haki. Yoyote maswali mengine? Kama siyo, tunakwenda tu kuanza kufanya kazi kwa njia ya. Yeah. 

Watazamaji: Naam, hii ni moja ya juu ya mwaka 2013, lakini tu kwenda kwa njia ya mambo SQL. SPIKA 1: SQL? OK. Hivyo hii ni 26 kwa njia ya 29. Watazamaji: Yeah. SPIKA 1: OK. Lovely. Hebu vuta wale up. Oh, kuangalia. Je, guys kufurahia Steve Ballmer kuzungumza, kwa njia? Ilikuwa pretty hilarious, kwa maoni yangu. I love kwamba kila wakati mimi kuleta CS50 ya tovuti wakati sehemu, ni kama, oh, kuangalia sehemu. Na mimi nina kama, mm. 

Watazamaji: Je, sisi kufanya hivyo? 

SPIKA 1: Tutaweza kufanya hivyo mwishoni. Jinsi hiyo? Kwa sababu najua nyie siku zote alitaka. Hivyo tutaweza kufanya hivyo mwishoni. Maswali moja. 

Watazamaji: [inaudible]. SPIKA 1: Ni utakuwa meta sehemu. Watazamaji: Ni kama sekunde 5. Watazamaji: Kweli? Watazamaji: Ni kama sekunde 20. [INTERPOSING VOICES] [Kicheko] SPIKA 1: Mimi kama kwamba umefanya tayari amefanya yake, ambayo ni nini hufanya mimi furaha. OK. 26. OK. Kweli, tunakwenda tu kioo hii sasa, kwa sababu mimi siwezi. Hii ni annoying. OK. Sasa unaweza kuona kila kitu. Lovely. OK. 

Hivyo ni wazi, hii lazima kuleta nyuma kumbukumbu kubwa kutoka [? CSG?] Fedha. Nusu ya juu na lenu graded sasa. nusu nyingine nami kupata sana, haraka sana, mimi ahadi. 

Hivyo tuna baadhi meza SQL hiyo ni ya Hesabu hapa. Pengine sawa na guys yako 'user meza. Na tuna baadhi ya idadi kwamba ilikuwa muhimu PRIMARY na inawakilisha 12-tarakimu idadi ya akaunti. Na usawa ni kiasi gani cha fedha wao. Na thamani default ni 100. Na wao kuwapa $ 100 yoyote muda wao kufungua akaunti. Napenda benki yangu alifanya hivyo. OK. 

Hivyo tunataka kukamilisha schema na kubainisha karibu na idadi katika mizani sahihi ya aina SQL. Basi je, guys kufikiri itakuwa aina ya kama goti-jerk yako majibu kwa ajili ya aina ya hizi mbili? 

Watazamaji: Int. 

SPIKA 1: int. OK. Na kisha kwa usawa? Alisema. OK. Hivyo haki decimal ya. Int ni karibu. Aina ya jambo kubwa ni hii alitilia 12-tarakimu idadi ya akaunti. Wakati sisi kuwa na kitu hiyo ni kubwa kuliko tarakimu nane, wanataka kutumia kubwa int, ambayo nadhani is-- 

Watazamaji: Je, kwamba tu SQL? 

SPIKA 1: Ni wakati tu Nimesikia ya ni SQL-- kama kutumia kubwa int. Ni tu kukupa kidogo zaidi usahihi, kuhakikisha wewe si kufurika aina kitu. Katika uaminifu wote, nadhani hii ni dhahiri mmoja wa wale ambapo ni kama, oh, ni maana kwa ajili ya watu ambao wana ujuzi zaidi kidogo ya SQL. Sisi kamwe alizungumzia ints kubwa katika pset yako. Hivyo ni aina ya kama mimi nina uhakika pretty kama wewe kuweka int, ilikuwa nusu mikopo. 

Na kama nilivyosema hapo kabla, kuna ni kwenda kuwa baadhi ya maswali kwamba ni tu maana ya safari wewe juu, hivyo kwamba si kila mtu anapata 100. Kwa sababu bila shaka, kuna baadhi ya watu katika CS50 ambao wamekuwa wakifanya hivyo kwa kama miaka minane, na wewe ni kama, unafanya nini? Lakini yeah. 

Alisema kwa usawa ilikuwa dhahiri moja. Na kisha kubwa int kwa idadi kwa sababu tu ya kwamba, kama, alielezea 12-tarakimu. Kila kitu ni katika ujasiri au ni kusisitiza, kama, makini na hilo. Sisi siyo kufanya kwamba kwa sababu tu. OK. 

Hivyo "kudhani inaweka kwamba benki $ 20 kila mwezi ada kwenye akaunti zote. Kwa nini swala inaweza benki dra $ 20 kutoka kila akaunti hata kama ni matokeo kutoka baadhi mizani hasi? " Basi hebu kuanza rahisi. Tuna amri kuu nne kwa SQL, ambayo ni? Je guys kumbuka nne ndio kubwa kuwa niliwaambia? 

UPDATE, kufuta, SELECT, na kuingiza. Perfect. Got it. Basi je, tunafikiri nguvu kuwa muhimu sana kwa ajili ya hii moja? Sisi are-- UPDATE. Hasa. Hivyo UPDATE, kwa sababu sisi ni kuangalia katika akaunti kwamba tayari yapo. 

Basi kumbuka ujumla wetu aina ya kitu ni update. Na kisha nini inakuja baada UPDATE? Tuna baadhi ya meza kwamba sisi ni referencing. Hivyo kama mimi kuvuta up Mtukufu again-- UPDATE. Hivyo hii ni format ujumla. Hivyo tuna UPDATE meza. Na kisha nini jambo la pili tuna? 

Unaweza kufanya WAPI. Na kisha tuna baadhi ya kufuzu hapa. Na kisha nini tuna ijayo? Tuna baadhi SET-- kitu sawa na kitu. Blah blah sawa. Updated blah. Haki? Hivyo hiyo ni kama ujumla wazo kwa ajili ya baadhi ya update. OK? 

Basi hebu kuanza kujaza hii katika na nini ni lazima. Hivyo kile meza ni sisi kuzungumza juu? Akaunti. Na kisha katika kesi hii, nini kweli cool ni ni sisi kuzungumza juu maalum watumiaji katika akaunti yetu, au ni sisi kuzungumza juu watumiaji wote? Tunazungumzia watumiaji wote. Hivyo katika kesi hiyo, tunaweza tu kufuta hii WAPI kufuzu. WAPI ni tu wakati unataka kikomo nini wewe kubadilika. Kama unataka mabadiliko ya nzima meza, unaweza tu kuacha hiyo. OK. 

Hivyo sasa tuko katika SET wetu sehemu. Je, tunataka mabadiliko? 

Watazamaji: Mizani. 

SPIKA 1: Mizani. Na tunakwenda to-- jinsi ni sisi kwenda na mabadiliko mizani? Tuna $ 20 ada, haki? Minus 20. Wakasema ni sawa kama tuna mizani hasi. Hivyo katika kesi hii, huna haja ya kufanya lolote zaidi ya kuangalia makosa. OK? Hiyo ni literally wote una kufanya. Cool? OK. 

Basi hebu kwenda kwa njia ya moja ijayo. "Kwa nini SQL query inaweza benki retrieve idadi ya akaunti ya ya tajiri wateja wake na mizani zaidi kuliko $ 1,000? " Kama benki yako na tajiri wateja wako ni wale tu na zaidi ya $ 1,000, Mimi kujisikia kama uko kufanya kitu kibaya. Kama, jinsi gani benki kuishi juu ya hilo? Kama, maslahi ya kwamba, si kutosha kabisa. OK. Kwa aina hii ya kitu, je, unafikiri, ya kazi yetu nne, unafikiri tunakwenda kutumia? SELECT. Perfect. SELECT. OK. Hivyo sisi ni kuchagua baadhi ya kitambulisho kutoka meza. Na kisha WAPI hali hiyo. Hivyo kama sisi kwenda kwa njia ya haya, mimi nina kwenda tu kukupa guys rejea ujumla juu ya muundo wa jumla wa yote haya. 

Hivyo sisi ni kuchagua aina fulani ya [? kitu. ?] Katika kesi hiyo, hii ni kwenda kuwa kawaida baadhi safu. Hivyo katika kesi yetu, tuna posta, mizani. Katika kesi guys wako, labda ilikuwa ID, jina, password. Yoyote ya nguzo hizo, hiyo ni kawaida nini tuko kuchagua. 

Hivyo katika kesi hii hapa, ambayo aina ya safu, nini kitambulisho sisi kuunganisha kutoka meza yetu? Nini kuuliza sisi kwa? Ni anauliza nasi kwa namba yetu, haki? idadi ya akaunti. Basi kumbuka, tu idadi katika kesi hii. Kama wewe guys milele alikuwa makosa, kwamba sanduku rangi ya machungwa atakuja up. Na ilikuwa ni kama, zisizotarajiwa mstari katika, kama, chochote. Hiyo ni kwa sababu wewe kuitwa meza yako vibaya, haki? Hivyo kuwa na uhakika kwamba wewe ni wito safu usahihi. 

Hivyo kutoka meza, meza yetu ni kuitwa akaunti. Tena, kuhakikisha wewe ni referencing meza yako kwa usahihi. Na kisha nini hali yetu hapa? Je, ni sisi kuangalia kwa? Tunataka watu matajiri wetu. Ndiyo. Hivyo usawa zaidi ya 1,000. Kuna kwenda. Hiyo ni hoja yako. Si mbaya sana, haki? OK. 

Hivyo sasa kwa moja yetu ya mwisho. Pamoja na kwamba, sisi ni breezing kupitia. OK. Hivyo sasa "na kile swala inaweza benki karibu, dvs., kufuta "- hawana upendo jinsi tu alitoa wewe DELETE-- "Kila akaunti ambayo ina uwiano wa 0?" Nadhani tunaweza wote wanakubaliana tuko pengine kwenda kuwa na kutumia kufuta. Mimi nina kuwakaribisha kwa kuchukua yoyote majadiliano ya suala hilo. Lakini nadhani ni pretty salama kusema kwamba tunaweza kutumia kufuta. 

Hivyo sisi ni kwenda kwa kufuta baadhi watumiaji kutoka meza, WAPI hali hiyo. Aina hiyo hiyo ya jambo kama SELECT. Hivyo katika hili case-- oh, sorry. Mimi lazima kufuta kutoka. Kwa sababu ya kufuta kufuta mstari mzima. Hivyo hatuna haja ya kuzungumza kuhusu ambayo mambo maalum kuhusu user tuko kufuta. Kama sisi kufuta mtumiaji, tuko kufuta kila kitu juu yao. 

Hivyo katika kesi hii, sisi tu haja ya kujaza WAPI yetu na hali yetu. Hivyo meza yetu ni akaunti yetu tu meza, kama tumekuwa kufanya. Na kisha ni nini hapa hali yetu? 

Watazamaji: Mizani. 

SPIKA 1: Mizani sawa 0. Sahihi. Wema wote. Ndiyo. 

Watazamaji: [inaudible]. 

SPIKA 1: Kwa hiyo kufuta asili deletes kila kitu. Hivyo ambapo pamoja na SELECT, SELECT inachukua katika baadhi ya nguzo kwamba unataka kurudi. Kama alitaka kila kitu kuhusu user akarudi, unatumia nyota. Star anasema, kurudi kwangu kila kitu kutoka kwa mtumiaji huyu. Au kama wewe kuweka WAPI nyota, kwamba maana nipe kila kitu tu. 

Lakini kufuta asili ina hiyo. Hivyo kama wewe kusema, kufuta kutoka akaunti ambapo uwiano sawa 0, ni kwenda kupitia. Na kila mahali kwamba usawa ni sawa na 0, ni asili anafanya hivyo. Ni itabidi kufuta kila kitu. nyota ni zaidi for-- na SELECT au UPDATE, ni kuzungumza zaidi juu ya mtu binafsi mashamba sambamba kwa mtumiaji. 

Hivyo wakati huna CHAGUA nyota kutoka meza WAPI ID sawa 1, kwamba anarudi na wewe kila kitu kuhusu user na ID 1. Kama ungekuwa na kufanya idadi SELECT au CHAGUA ID jina comma kutoka kwa watumiaji WAPI ID sawa 1, kwamba tu anarudi idadi yao au ID zao na majina yao. OK? 

Hivyo sisi kutumia nyota katika kesi hiyo kwa kutupa kila kitu kuhusu user. Na kufuta asili anafanya hivyo. Haina tu kufuta ID, au tu jina, au chochote. Yeah, hakuna. Ni tu deletes user nzima. Hivyo hatuna kuwa na wasiwasi kuhusu nyota huko. 

Kama alitaka kufuta kila kitu, unaweza kufanya hivyo, na hii itabidi kuacha kila kitu. Lakini kwa kawaida, wewe hawataki kufanya hivyo. Lakini kama wewe milele unataka kufuta kila kitu, unaweza kufanya hivyo. OK. 

Je, guys kupatikana maswali yoyote? Ndiyo. 

Watazamaji: Je, unaweza kufanya 26? 

SPIKA 1: 26 sisi tu alivyofanya. Watazamaji: Oh, 25, sorry. SPIKA 1: 25. OK. 25. Oh. Wao ni kufanya JavaScript. Oh, siwezi kuamini. Mimi nina kwenda kwa fujo sisi juu tena, guys. OK. Sisi got hii. Sisi ni kwenda kufanya kazi hii. Ah, jQuery. Furaha. OK. 

Hivyo sisi ni kwenda kukamilisha utekelezaji wa ukurasa wa mtandao katika namna kwamba kama wao kutembelea, pembejeo jina yao, na kuwasilisha fomu, wana tahadhari hii kubwa dirisha kwamba ni kwenda kuonekana. Hivyo kitu chochote na alerts, tunajua kwamba tunakwenda kuwa na matumizi ya JavaScript. Yay, JavaScript. Na kama wao kushindwa pembejeo a jina kabla ya kuwasilisha fomu, hakuna tahadhari inapaswa kuonekana. Hivyo unaweza kutumia jQuery, lakini huna kwa. 

Hivyo mimi nina kwenda basi wewe guys kazi juu ya hili kwa dakika kadhaa. Fikiria kuhusu hilo. Na kisha sisi kanuni ya yake. Kufyeka Mimi kwenda kujaribu na kufikiria njia bora ya kuelezea jibu hili na wewe. Wote haki. Tutaweza kupata ni kuanzisha. OK. 

Hivyo sisi ni kwenda tu kutembea kwa njia hii, sababu najua jQuery ni utata kidogo. JavaScript. Ni kidogo huko nje. Hivyo nini tunakwenda kufanya ni [Inaudible] kweli kutatuliwa tatizo hili na jQuery. Hivyo kama wewe kumbuka, jQuery ni maktaba kwamba tu kujengwa juu ya JavaScript. Ni maana ya kufanya yako maisha rahisi kidogo. 

Napenda dhahiri, kama una muda, kuangalia juu ya kidogo ya nyaraka kwa jQuery. Lakini ni sawa na JavaScript. Ni got mitizamo kama hiyo, ambapo kutumia hii dot operator kuwaita kazi juu ya vitu kwamba una. 

Hivyo nini sisi hapa ni kwa ajili ya jQuery, unapaswa daima kuwa aina hii ya wrapper, ambayo ni $ (Hati) .ready (kazi) kazi katika mabano hapa. OK. Hivyo hii inaweza kuwa kitu unataka kwenye kudanganya karatasi yako. Kwa sababu kwa uchache sana, unaweza kuwa wrapper kwa jQuery yako. Na kutakuwa na angalau kupata wewe sehemu njia huko. 

Hivyo katika njia sawa kwamba sisi aliongea mengi kuhusu JavaScript, na tunataka kuanza kwa kuangalia katika kile sisi ni kujaribu kuhariri au kile sisi ni kujaribu mabadiliko. Na kwamba ingekuwa kawaida kuwa Jambo la kwanza kwamba tunatarajia kuweka katika. Hivyo katika kesi hii, kama sisi kwenda nyuma ya hii hapa na sisi kuangalia fomu yetu hapa, tuna pembejeo hii, haki, id hii ya pembejeo. Na tunajua kwamba msingi juu ya suala yetu, sisi ama kwenda kutupa kosa kama hii ni tupu, au tunakwenda kuweka huu katika tahadhari, haki? Basi pengine salama kusema kwamba tuko kwenda kushughulika na pembejeo hapa. 

jQuery ni sawa sana kwa kuwa kama sisi kufikiri nyuma CSS, na chochote ID sisi kuangalia kwa hash. Chochote na darasa sisi inaonekana katika na dot, haki? Hivyo katika njia sawa hapa, nini tunazungumzia ni pembejeo. Tuliona kwamba pembejeo ni ID ndani ya fomu yetu. Hivyo sisi ni kwenda kwa kutaja kama vile. Pembejeo. OK? 

Hivyo wakati katika shaka, hata kama una mahali pa, kama wewe ni kweli uhakika kuhusu jinsi ya mbinu hii, A, na wrapper hii. Hivyo kuanza pale na wrapper kwa jQuery. B, kuhakikisha kwamba unajua nini yanabadilika. Na wakati katika shaka, kuweka kwamba katika kitu, na kufanya dot, chochote unafikiri unapaswa kufanya na hayo. 

Watazamaji: ni wrapper nini? 

SPIKA 1: wrapper ni mstari huu wa kwanza. Hivyo hii anasema, kusubiri hadi hati yangu ni tayari. Kisha kuanza messing na mambo. OK? Hivyo tunajua tuko messing na pembejeo. Hivyo sisi ni kama, OK, pembejeo ni aina yetu. Hiyo ni ID wetu. Hivyo kwamba ni nini tuko kwenda kutafuta. Na tunataka kuona nini kinatokea wakati fomu hii ni kuwasilishwa, haki? 

Hivyo kama sisi kufikiri, tuna baadhi ya .submit. Hivyo .submit tu anasema, OK, aina hii kwamba tumekuwa inatazamwa na hash pembejeo, wakati ni kuwasilishwa, nitafanya kitu kingine. Hivyo sisi ni kwenda kuwa na baadhi ya kazi. Taarifa tuna kazi bila majina hapa. Tuna kazi bila majina hapa. Ndiyo. 

Watazamaji: Je, ni daima kuwa .submit, au ni kwa sababu tu katika HTML, sisi alifanya aina kifungo Kuwasilisha? 

SPIKA 1: Ni lazima .submit, kwa sababu ni aina fulani kwamba sisi ni kuwasilisha. Kwa sababu .submit hii haina si lazima yanahusiana na nini kifungo ni kama kwa simu. Lakini ukweli kwamba ni kuunda kwamba sisi ni kuwasilisha. OK. 

Hivyo taarifa bila majina kazi hapa kwamba says-- Watazamaji: Mimi si kweli kuelewa kazi bila majina. SPIKA 1: Kwa hiyo bila majina kazi, wao uko kazi tu kwamba hawana jina. Hivyo badala ya kuwa baadhi ya kazi kuu kwamba calls-- tunaweza kusema, Kama hati tayari, basi tunataka kuwaita pembejeo. Na kisha, Wakati kuwasilishwa, call-- kama, Kama ni hivyo-na-hivyo kuwasilishwa, tunatarajia kuwaita baadhi ya kazi nyingine. kazi bila majina tu hana jina, na itakuwa tu nitafanya ndani ya aina ya mambo haya. 

Hivyo katika kesi hii, ni nini hii anasema ni, Wakati hati yetu ni tayari, nitafanya kazi hii. Kazi hii ni linajumuisha ya kila kitu ndani ya hapa. Na basi ijayo safu katika ni, OK, wakati pembejeo ni kuwasilishwa, nitafanya hii. Ni njia tu ya denoting nini lazima ifanyike wakati. Ni literally tu kazi ambayo haina kuwa na jina, hivyo wao huwa na kuwa nested ndani ya kila mmoja, sababu huwezi kuwaita kwa jina. OK? Literally, kazi bila majina ni tu kazi bila jina. Hiyo ni. Tu njia ya kurejelea mambo mbalimbali kwamba tunataka kunyongwa kwa wakati maalumu. 

Watazamaji: [inaudible]. 

SPIKA 1: vent? Wapi? 

Watazamaji: Katika mabano baada ya kazi? 

SPIKA 1: Baada ya kazi. Ambayo moja? 

Watazamaji: Wote. Kama kuweka, kama, tukio, au kama kuweka hoja huko, itakuwa ni makosa? 

SPIKA 1: Katika kesi hii, nadhani unaweza kuweka hoja katika huko. Lakini kwa sababu hatuna haja hoja, kuna haipaswi. Kama, ni mzima, kama, unapaswa tu kuwa mambo ambayo ni muhimu aina ya kitu. Katika njia sawa kwamba kama tulikuwa yoyote kazi ambayo ina int kuu void-- kama, na int kuu utupu, wewe inaweza kufanya int ARG v, chochote. Lakini kama huna haja hayo, haipaswi kuwa nao huko. Same kitu. Emma, ​​je una swali? OK. Baridi. OK. Hivyo kile sisi hadi sasa ni wakati wetu hati ya tayari, nitafanya hii. Sasa sisi ni kuangalia wakati ni kuwasilishwa. Hivyo sasa sisi kweli kuwa aina ya nyama ya kitu yetu. Hivyo tunahitaji kupata thamani kwamba user kuwasilishwa, ni kama kwamba jina au tupu. Na kisha tunahitaji ama kurudi tahadhari hii au kutupa makosa. Aidha njia. 

Hivyo ni jinsi gani sisi kutangaza variable katika JavaScript? Var. Hivyo hebu sema, jina var equals-- au kweli, tutaweza kufanya thamani tangu Nadhani ni jina. OK. Hivyo tuna baadhi ya thamani hapa kwamba sisi wanataka kuvuta kutoka pembejeo fomu yetu. Hivyo katika njia sawa kwamba sisi aina ya alifanya pembejeo, yeyote anaweza kuniambia nini sisi inaweza kuwa wito ndani ya hapa kama sisi alitaka kupata jina kutoka fomu? Na kama sisi kuangalia nyuma katika fomu yetu hapa, sisi taarifa kwamba tuna ID ya jina. Watazamaji: [inaudible]. 

SPIKA 1: Huna kufikiria ni kama safu. Huna haja ya kuwa na wasiwasi juu ya hilo. Hivyo sisi tu na baadhi ya jina. Na kisha kwa sababu JavaScript na mambo ni weird, hatuwezi tu kufanya "jina." Sisi kwa kweli kuwaita baadhi ya kazi ambayo inatupa, kama hiyo, thamani ya kwamba kitambulisho. OK? Hivyo kwamba ni tu .val. 

Watazamaji: [inaudible]. 

SPIKA 1: OK. Hivyo, pamoja na JavaScript, aina hii ya jambo la haki hapa tu hupitia. Na unaweza kufikiria hii as-- ni kama karibu getElementById, ambapo getElementById ingekuwa kweli kurudi kitu full na wewe. $ ("# Jina") ni kama, OK, mimi kuwa ni, siwezi kupata hiyo, lakini kama kweli unataka kurudi thamani ya you-- 

Watazamaji: Je, ni kama pointer? 

SPIKA 1: Ni aina ya kama pointer. Unaweza kufikiria kama aina ya kama pointer. Kama, inasema, OK, mimi kujua jinsi ya kupata huko, lakini kwa kweli kupata thamani nje ya hivyo, una wazi kuuliza kwa ajili yake. Na kwa bahati mbaya, ni wazi, hatufanyi kufanya sana na JavaScript na jQuery. 

Hivyo ni kwenda kuja chini na kiasi gani wewe guys-- nini kutokea kwa kujua, nini kutokea kwa nimeona, na kile unaweza aina ya mantiki nadhani katika. Kwa kuwa baadhi ya mambo haya, inaweza pengine kupata nusu ya huko. Lakini kupata kabisa haki, Nadhani tatizo hili pengine alikuwa mmoja wa alama ya chini. Watazamaji: Kama, kwa mfano, kwa [inaudible] pembejeo, kwa nini sio una kuweka Val huko? SPIKA 1: Kwa hili? Watazamaji: Yeah. SPIKA 1: Yeah. Kwa sababu hii ni aina ya kama, kama sisi alisema, baadhi pointer, na hii ni mimi referencing na kwa kweli kupata sisi thamani. 

Watazamaji: Wakati [inaudible]? 

SPIKA 1: Kwa pembejeo, pembejeo ni tu some-- ni kama tuko tu kuangalia saa yake kwa ujumla, na .submit hii inaonyesha tunachohitaji kujua. jQuery na JavaScript ni weird. Mimi najua. Mimi najua, guys. Mimi najua. Kuna sababu mimi si kufanya programu ya mtandao. Just kidding. Mimi si alikuwa na yatokanayo kutosha yake. 

Watazamaji: [inaudible] CSS. 

[Kicheko] 

SPIKA 1: OK, hiyo ni CSS. CSS ni tu, kama, kufanya mambo pretty, si kama hebu kukabiliana na data. Kuna tofauti huko. OK. Hivyo sasa hopefully, hii part-- pia, kwa tatizo kama hii, ambapo msitende kujua syntax, unaweza kuwa kama, OK, unaweza kuwa na baadhi ya thamani var na kuwa kama, kudhani mimi got thamani usahihi. Na kisha unaweza pengine kuandika sehemu hii ya pili. Hii sehemu ya pili pengine wanaonekana zaidi rahisi, au ingekuwa kufanya mantiki hisia na wewe guys. 

Wakati nini tumekuwa imeandikwa hivyo mbali, Mimi najua itakuwa kama, umm, yeah, Sijui kwamba katika jaribio. Unaweza kuandika kabisa psuedocode na kisha kuvunja katika kanuni halisi wakati you-- ni aina ya kama math. Kama ve milele alikuwa na baadhi ya sehemu mbalimbali tatizo ambapo huna kujua jinsi ya kupata nyuma hatua ya kwanza, lakini kila kitu kingine hutegemea hatua hiyo ya kwanza, wewe tu kusema, kama, x kudhani sawa 4. Na kisha kukimbia nayo, haki? 

Unaweza kufanya kitu kimoja na kanuni. Hivyo unaweza kusema, kudhani I got thamani ya haki. Kisha kufanya sehemu hii ya pili hapa. Kwa sababu sehemu hii kwa kweli lazima pretty mantiki. 

Hivyo sisi haja ya kuangalia kama thamani yetu ni tupu. Au kama ni baadhi ya jina, kweli kutoa tahadhari. Hivyo kile anaweza tunataka kuangalia? Tunataka kuwa na baadhi Kama. Unafikiri Kama yetu ni kwenda kuwa? Tunahitaji kuangalia kuona kama thamani is-- kama si kamba tupu. 

Perfect. Hasa. OK. Hivyo kama hiyo kesi, nini tunataka kufanya? Tunataka kutupa tahadhari baadhi, haki? Hivyo ni tahadhari tu. Na kisha chochote tunataka ndani. Kwa hiyo kile ni tulidhani kuwa na ndani ya tahadhari yetu? 

Watazamaji: "Hello." 

SPIKA 1: Comma. Na kisha kufanya nyie kukumbuka jinsi ya concatenate? 

Watazamaji: Plus. 

SPIKA 1: Plus. Hivyo tunataka kuwa plus. Na kisha tunahitaji pamoja na mwingine kwa Moderators kumweka yetu. Baridi. OK. Vinginevyo, nini kinaweza tunataka kufanya? Hatutaki kufanya kitu chochote, haki? Hivyo sisi tu kurudi uongo. Si nini nataka kufanya. OK. 

Na kisha hizi, course-- nini muhimu ni kukumbuka kwa karibu kazi yako bila majina. Hivyo kama wewe taarifa, tuna baadhi ya kazi hapa kwamba kuishia hapa. Hivyo tunahitaji kuifunga kwanza moja na kuongeza semicolon. Na kisha hii moja hapa ina kufanya na kazi hii bila majina, hivyo sisi karibu yake huko. Hiyo goti-jerk majibu ya kuokoa. Ndiyo. Watazamaji: Je, kuna sababu that-- tu katika mifano yote katika JavaScript kwamba nimeona, tuna kwanza braces curly juu ya mstari huo kama kazi? 

SPIKA 1: Hiyo ni Stylistic. Yeah. Na kwa kweli, kama wewe kuchukua 61, sisi kufanya njia kwamba wote braces yetu curly. Huh? 

Watazamaji: Kama sisi alifanya kufanya hivyo juu ya Pset, ni kwamba mbaya kwa style? 

SPIKA 1: No. Sisi wazi aliiambia nyie kufanya hivyo. Lakini kwa kweli, hii ni aina ya mkataba kuhodhi katika mengi ya madarasa C na JavaScript na jQuery. Hivyo ni wazi, mimi nina sure-- na kwa kweli, kama mimi walikuwa kufanya tatizo hili kabisa kipofu bila ya kuwa inaonekana saa yake, kuna pengine ni wachache sana njia napenda waliopata hii. 

Nipate wamekuwa kama, OK, labda mimi unahitaji kunyakua kitu ambacho ni pembejeo. Na nadhani kuwa maarifa kwamba, kama, OK, kama nataka kupata kitu kutoka fomu ambayo ina ID, Mimi rejea ni kwa njia hii, Ningependa pengine kupata hiyo. Nipate kupata hii. Lakini kwa kweli, kitu pekee kwamba nadhani Napenda kweli kupata ni haki hii hapa. 

Hivyo ni aina ya muhimu kujua, kama na mtihani yoyote ngumu, wewe aina ya kuchagua vita yako, sawa? Kama unajua kwamba wewe si kwenda kupata kwamba sehemu ya kwanza kwa jQuery, kama nilivyosema, kudhani kwamba una thamani hii na kufanya nini unaweza na hayo. Na kama una muda, kwenda nyuma na kujaribu na kujaza vipande vipande. Lakini si basi swali kama kweli hii kuumiza vichwa vya chini. Kwa sababu gani? Hii ilikuwa swali moja katika jQuery nje ya mtihani nzima. Hivyo ndiyo, ni d kuwa kubwa kama wewe got it. 

Watazamaji: [inaudible] wewe Unakaribishwa kutumia jQuery. SPIKA 1: Wewe ni kuwakaribisha kwa kutumia jQuery. Watazamaji: OK. [Inaudible]. SPIKA 1: Jinsi gani unaweza si matumizi yake? Napenda kuwa na kuangalia up wangu wote JavaScript. Ni kweli rahisi sana, Nadhani, kwa kutumia jQuery, kwa sababu jQuery kweli hupunguza kiasi cha JavaScript kuandika pengine na, kama, nusu. Hivyo kanuni zetu pengine ingekuwa mara mbili kwa muda mrefu bila hiyo. Hivyo kama wewe recognize-- kubwa Jambo kuchukua mbali tatizo hili ni mwelekeo. Kama wewe ni kupata kitu kutoka fomu, wewe ni kwenda kutumia quotes, hash, chochote wewe ni kujaribu kufikia. Kama ni kuwa kuwasilishwa, unataka kutumia kitu kama .submit. Pengine wewe kwenda kutumia kazi bila majina huko. Kama kweli unahitaji thamani ya kitu, wewe ni kwenda kufanya quotes, hash, chochote uwanja yaani, .val. Na kutambua chati kama kwamba ni kwenda kuwa mbali muhimu zaidi kuliko kweli kujua nitty gritty. Ndiyo. 

Watazamaji: Hivyo kama user elekeza jina yao na anaendesha kwa njia ya taarifa kwamba, mapenzi ni kwenda chini na kurudi uongo baada ya hili? 

SPIKA 1: Hapana, kwa sababu tahadhari, unaweza kufikiria ni kama kurudi. Yeah. Hivyo kutakuwa na exit. Yeah. 

Watazamaji: Je wewe [? mahali?] mabano ya kuwasilisha, mabano, kitu? 

SPIKA 1: Mimi alifanya, naamini. Hii ni moja ya kufungwa haki hapa. Na kisha hii moja anapata kufungwa hapa. 

Watazamaji: Oh, huko. Wote haki. 

SPIKA 1: Ni wazi, kidogo, mambo kidogo kisintaksia kama kwamba, sisi itabidi pengine tu mduara na kuwa kama, usisahau mabano yako. Lakini yeah. OK. Je, tuna mtu mwingine kwamba tunataka kufanya? Je, guys kupata mti binary moja? Je, tunataka kwenda juu ya kwamba mmoja? Najisikia kama miti binary na kondomu lazima pointi kwamba wewe guys kupata pretty urahisi. Nisingependa wewe kupoteza pointi juu ya hilo. OK. 

Hebu kufanya DOM hii hapa. Nilikuwa napenda Surface yangu ili niweze inaweza tu kuteka juu ya screen. Hiyo ni nini mimi kutumika kufanya mwaka jana. OK. Hivyo kama nilivyoeleza, sisi aliyesema kuhusu DOM, Document Object Model. Wao ni pengine ni kwenda kukupa baadhi kidogo ya snippet kama hii na kuuliza wewe kuunda mti kwa ajili yake. Na hii yote tu ana kufanya na kukimbia kwa njia ya vitambulisho. Hivyo hebu jaribu na kufanya hili. 

Pia, kama kwa kawaida, kama wewe guys kufanya haya Quizzes, kama mimi sana kupendekeza kwamba wewe kufanya kama mazoezi, yeyote kati yao kwamba wewe ni kama, Mimi kwa kweli hawapati nini kinachoendelea hapa, tu, bila shaka, tuma barua pepe yangu na swali, nami kueleza kama bora naweza. OK. 

Tuna baadhi ya hati, na sisi HTML. OK. Hivyo basi sisi ni kuchambua tu vitambulisho hapa, haki? Basi je, tunaona comes-- ni nini subheadings mbili chini HTML? Hasa kwa sababu re indented vizuri? Kichwa na mwili. Ah. Kichwa na mwili. Lovely. Hivyo basi hebu kuanza hapa kwa kichwa. Nini chini ya kichwa? Nini tag yetu ijayo? Title. Na kisha ndani ya kichwa cha habari, quiz. OK. 

Hivyo literally, ni tu kutembea kwa njia ya vitambulisho, OK? Hivyo basi kama tuna mwili, kama sisi kwenda kupitia, mwili ina mambo matatu ndani yake, haki? Ni got divs tatu. Kila div anapata kidogo yake mwenyewe sanduku. Na nini katika div kwanza? [Inaudible] Na kisha moja ya pili ni katikati, ambayo mimi nina kwenda tu abbreviate. Na kisha moja ya mwisho ni ya chini. 

Hivyo kweli, ni tu kutembea kwa njia ya. Na kwa sababu tunakwenda kutoa HTML kwamba ni vizuri indented, unaweza literally tu kukimbia kwa njia ya na kuwa kama, OK, hapa ni HTML. Hivyo hii ni yttersta kona, au akipiga kushoto, hivyo kwamba ina kuwa kitu yake mwenyewe. Hizi ni juu ya indention huo. 

Hivyo tunajua kwamba kichwa inahitaji kuwa katika kiwango sawa kama mwili, lakini chini ya HTML. Ni nini sisi hapa. Kichwa na mwili ni ndugu, lakini wao ni chini ya HTML. Na kisha sisi tu kwenda katika kila moja ya haya. Hivyo kichwa ina jina, ambayo ina jaribio, kama tunaona hapa. Na kisha katika kesi hii, tuna mwili, ambayo ina mistari hizi tatu. Hivyo haya yote ni ndugu wote chini ya mwili. OK? Hivyo hopefully wakati unaweza kuona kitu kama hii, wewe ni kama, ndiyo, mimi tu kupata kuteka mti. Ni gonna kuwa kubwa. OK. Hivyo alitaka kuhakikisha nyie alijua kwamba. 

Hivyo kwa nini sio sisi kwenda 32 na binary yetu mti? Kwa sababu mara tu kuelewa binary search mti, ni kweli kuwa mbaya. Hivyo Everett, naweza erase-- mimi maana, hayo yote ni online, pia. Hivyo kama una maswali yoyote. 

Waliopotea nafasi kidogo huko, lakini ni sawa. Hivyo search binary mti ni njia tu kuandaa data si katika safu, ambapo mizizi ni daima zaidi kuliko mtoto wa kushoto na mizizi ni daima chini ya mtoto kulia. OK. 

Hivyo tuna search mti huu mkubwa hapa. Tuna namba hizi, 34, 59, 20, 106, 36, na 52. Na tunahitaji kupanga yao kwa namna kama kwamba mzizi ni mkubwa kuliko kila kitu kwa upande wa kushoto na ni chini ya kila kitu upande wa kulia. Na kawaida, nini wanataka kufanya ni kujaribu na kupata kitu kuhusu katikati. Kwa miti binary search, unaweza kuwa na kucheza karibu kidogo na hayo. 

Lakini katika kesi hii, hebu tu kudhani kwamba sisi kujua moja hii kwanza. Hivyo 36 ni moja wetu wa kwanza hapa. Kwa kawaida, napenda kujaribu na kuchagua kitu kuhusu katikati kwamba itabidi pengine mavuno matokeo bora. Hivyo sasa tunajua kwamba kila kitu juu ya upande huu mahitaji ya kuwa chini ya 36. Lakini pia, nini unaweza kuona ni kwamba tuna mbili matangazo zaidi ya hapa. Hivyo, ikiwa tunajua kuwa tunahitaji mbili idadi ambayo ni chini ya mizizi, basi unaweza ili tu haya na kuchagua idadi ya tatu. OK. 

Hivyo kwa nini sio sisi kuanza na upande huu? Hivyo, ikiwa tunajua kwamba kila kitu katika upande huu mahitaji ya kuwa chini ya 36-- lakini kama sisi kuangalia hii moja, tunajua kwamba idadi hii ina kuwa chini ya idadi hii, sawa? Kwa sababu idadi hii hapa ni upande wa kulia. Na kumbuka, kama vile katika kubwa wetu mti, kila kitu juu ya haki mahitaji ya kuwa kubwa kuliko mizizi. Kwa njia hii, tunajua kwamba vilivyomo katika mahitaji hii kuwa kubwa kuliko chochote hapa. OK? 

Hivyo tuna maamuzi mawili kwa Bubbles hizi mbili. Tuna 32 na 34-- au sorry. 20 na 34. Hivyo ni jinsi gani unafikiri tupate kuweka haya katika? Kama hii moja ina kuwa kubwa kuliko hii moja, hiyo ina maana tunataka kuwa 20 hapa na 34 hapa. OK. 

Hivyo katika njia hiyo hiyo, sisi kuangalia katika aina hii ya mti ndogo. Na sisi kusema, OK, tuna si 36. Tuna 106, 52, na 59. Haki? Katika kesi hii hapa, sisi kujua mahitaji kwamba hii moja kuwa na jambo moja kwamba ni kubwa kuliko na jambo moja kwamba ni chini ya yake. Haki? Hivyo kama sisi kuweka haya ili, ni tu juu ya kutafuta kwamba thamani katikati tena. Hivyo thamani yetu katikati ni 59. Hivyo basi sisi kusema, OK, nini chini ya 59? Naam, hiyo ni 52. Na nini zaidi kuliko 59? Naam, hiyo ni 106. OK? Hivyo ni kidogo tu kama puzzle. Ni kawaida inasaidia, hasa katika miti midogo kama hii, kama wewe tu ili ni, kama wewe kujua jinsi wengi ni wa kushoto na jinsi wengi ni juu ya haki, kwamba unaweza tu kuruhusu kuchagua nini wanapaswa kuwa mizizi yako. Na kisha unaweza aina ya kazi kutoka huko. Mm-hm. 33? Uhakika. OK. Hivyo tunataka kujenga nodi au binary search mti. Na hebu kuangalia nini wanaweza kuwa katika hilo. Na nadhani mapenzi hii kweli kuwa tatizo letu la mwisho. Ah. OK. OK. 

Hii ni kama nini tunaweza kufikiria kama nodi, haki? Tuna baadhi ya thamani, na sisi kujua kwamba ama wameondoka na watoto kulia. Search Binary tree-- kwamba njia kwamba ina, saa zaidi, watoto wawili. OK? Hebu fikiria kuhusu jinsi sisi defined orodha wanaohusishwa, haki? 

Tulikuwa na baadhi int kwamba kuwakilishwa thamani. Tulikuwa na baadhi ya pointer kwamba kuwakilishwa nini ilikuwa ni kwenda ijayo. Binary search mti ni sawa sana. Bado tuna baadhi ya thamani, n, kwamba sisi kutoa, sawa? Na kisha nilitoa haya sana wazi kwa mishale, kwa sababu wao ni ufanisi kuyatumia. OK? 

Hivyo n ni kawaida nini? Ni baadhi ya thamani. Tufanye nini kawaida mteule kama? int. Hivyo tuna baadhi n int, au thamani int, au chochote Ningependa simu yake. Na kisha tuna kushoto mtoto na mtoto wa kulia. Haki? Na tunajua kwamba kile wao uko point-- nini wao akizungumzia? Wao ni akizungumzia nodes nyingine, sawa? Hivyo ni jinsi gani sisi kutangaza pointer nodi? 

Watazamaji: [inaudible]. 

SPIKA 1: Mm-hm. Na sisi itawabidi mbili kati ya hizo, haki? Na kisha tunaweza literally Je, kushoto kwa mtoto wa kushoto na haki kwa mtoto wa kulia. Actually-- sorry. Sababu tunahitaji struct. 

Hivyo struct ni kwa sababu tuna si kumaliza kutangaza nodi bado. Hivyo nodi ni ndani ya hapa. Ni aina ya kama kujirudia ufafanuzi, haki? Hivyo wakati sisi ni ndani ya ufafanuzi huu, sisi si kumaliza kutangaza node kama muundo, hivyo inabidi kufanya struct node tu kusema, ndiyo, sisi ni kwa kweli akimaanisha nyuma wenyewe aina kitu. Hiyo kama mara moja ni umba, utakuwa na faini. 

Hivyo ni jinsi kubwa guys kufikiri hii ni? Nini ukubwa wa muundo huu? 12. Kwa nini? Usahihi. Na kwa kweli, moja ya maswali ya kwanza moja Quiz One ni kuhusu ukubwa, ambayo ni kwa nini mimi aliuliza. Wote haki. 

Sisi ni kwenda mwisho, kwa sababu DCE itakuwa yell saa yangu kama sisi hawana. Lakini kama wewe guys una maswali yoyote, bila shaka, email yangu, basi mimi kujua. You guys ni kwenda kwa mwamba yake. Mimi nina super msisimko. You guys itafanyika kama ya Jumatano, na kisha utasikia kupata kazi juu ya mwisho wako miradi, na ni kwenda kuwa kutisha. 

Mimi nitakuwa hapa karibu wiki 4:00-4:30 kama wewe guys wanataka kuja kuchukua Quizzes yako. Kama unataka kupata nami baadhi ya wakati mwingine au tu kuratibu wakati tofauti, kujisikia huru basi mimi kujua. Vinginevyo, hii ni sehemu yetu ya mwisho. Hivyo ilikuwa kubwa kuona nyie. Tafadhali kuchukua pipi zaidi. Na bahati nzuri juu ya chemsha bongo yako.