[Mūzikas atskaņošanai] SPEAKER 1: Nu labi, visi. Laipni lūdzam jūsu pēdējā sadaļā ar mani. Tas ir bijis diezgan semestris. Es nespēju noticēt, tas ir, piemēram, nedēļā 12 vai 11, kaut kas tamlīdzīgs. Bet tāpēc, ka tā ir mūsu pēdējā sadaļa, mums ir daudz konfektes. Un es esmu gatavojas izmēģināt un ieplūdes jūs kā arī I var par savu viktorīnas trešdien. Tātad, iespējams, nav labākais veids, piemēram, beigu daļā ar viktorīna pārskatīšanu. Bet mēs cenšamies, un padarīt to jautri. Un tur vienmēr konfektes. Tik cerams, ka būs padarīt to labāku. Jūsu viktorīna būs diezgan daudz pats, Quiz Zero. Tas būs Tas pats formāts, vienāda garuma. Jūs būsiet telpās izkaisīti pāri pilsētiņu, jo tur ir tuvu 900 no jums, un mēs nevaram visi turēt jums telpās, kā šis. Tāpēc pārliecinieties, lai apskatīt visas Quiz One dokumentācija tiešsaistē cs50.harvard.edu šovakar vai rīt naktī. Pārliecinieties, ka jūs zināt, kur jūs esat iet, kas jums ir nepieciešams, lai panāktu. Tiešām, jums ir nepieciešams, lai sevi un zīmuli, un jums vajadzētu būt labi. Jautājumi būs ļoti daudz to pašu. Tur droši vien būs pāris atbilžu variantiem, pāris Īsā atbilde, daži kodēšana, varbūt daži pareizi / nepareizi, saskaņojot veidu lietas. Tātad jums nevajadzētu būt pārāk pārsteigts formātā. Kas var būt pārsteidzoši ir garums, kas, kā iepriekšējos gados, ir daudz ilgāk. Manā gadā, man nav viens draugs ka es atceros apdares eksāmenu. Tur bija kā vairākiem lapas atstāta tukša. Tātad garums var būt veida disorienting tikai tāpēc, ka dažos gados, tā ir bijusi daudz ilgāk nekā viktorīnā One. Man nav ne jausmas, kas tas ir būs tāpat šajā gadā, bet tas ir kaut kas jāapzinās. Bez tam, difficulty-- cilvēki mēdz atrast Quiz One daudz vairāk grūtāk nekā Quiz Zero. Atkal, jūs zināt, ja jūs veida kājām out sajūta mazliet neomulīgi arī tāpēc, Jums nav darīt, kā arī jūs domāja jūs vai jums justies kā jums nav darīt, kā arī jūs uz Viktorīna One, jāatceras, ka ir iespējams citu cilvēku jūtas, ka veidā daudz. Es noteikti bija viens no tiem cilvēkiem. Viktorīna viens, tāpat kā, iemeta mani cilpu. Un mani draugi ir šī lielā priekšstatu par tiem JP laiza veida ar šo milzīgo sundaes, ir līdzīgi, Quiz One un meklē, piemēram, viņi ar asarām. Tātad, tas ir vispārējs nespēks. Tas ir grūts tests, tas ir grūts viktorīna. Protams, ja jūs nākt ārā, un jūs justies kā jūs satricināja to, liels jums. Bet zinu, ka jūs, iespējams, not-- Jums ir gandrīz visvairāk noteikti nav atsevišķi, ja jūs staigāt sajūta, piemēram, eh, iespējams, varētu būt gotten labāk. Tas ir sīksts. Mm-hm. Mērķauditorija: Cik daudz tas ir tā vērts attiecībā uz [dzirdams]? SPEAKER 1: Tas ir vērts pats. Yeah. Bet atkal, tas arī būs skārusi cik pārējo klasi tas, kā jūsu sadaļā nav, cik jūs esat uzlabojās laika gaitā. Šķirošana ir mazliet melnā kaste. Tātad, ko faktiskais skaits vai procentos jums ne vienmēr patīk tieši korelē ar pakāpē jūs gatavojas saņemt. Tur ir daudz faktori, kas iet uz to. Tātad ar to, mēs ejam, lai iet caur kādu viktorīna pārskatīšanu. Es esmu tikai gatavojas, lai palaistu šo piemēram, pēdējo reizi jums puiši. Man ir visas atbildes lai Viktorīna Viena no pagājušā gada. Tātad, ja jūs puiši vēlas, lai vilktu kas līdzi savu datoru, ja esat veicis šo eksāmenu pirms un jums ir jautājumi, Es domāju, mēs varētu tikai iet caur kādu no grūtāk tiem par to. Tātad, mēs varam runāt par to, varbūt saņemt nedaudz vairāk ieskatu uz intuīciju aiz dažām šiem jautājumiem, kā tuvoties tiem. Kā arī, piemēram, pēdējo reizi, Man ir 100 slaidu klāja kas ir pamatā visiem no slaidiem, ka es ir sagatavoti iepriekšējā sadaļas kopš Jūsu pēdējā quiz-- I ir šajā klāja. Tātad, mēs varam iet cauri diezgan daudz kaut ka mēs esam runājuši par iepriekš, ka varbūt jums vēlas nedaudz vairāk skaidrojumu par. Mēs varētu darīt vispirms. Bet citādi, es esmu super laimīgs tikai veida darbu caur šīm problēmām ar jums. Un es esmu patiešām šeit koncentrēties uz to, ko jūs guys domā būtu ļoti svarīgi koncentrēties uz. Tāpat, protams, visi šis stuff ir svarīgi. It īpaši, kā mums iet cauri Viktorīna One, Es noteikti norādīt lietas, piemēram, oh, tas varētu būt kaut kas jūs tiešām vēlaties zināt vai arī jūs vēlaties, lai ir uz jūsu apkrāptu lapas. Es būšu stāsta jums lietas kā mēs veida iet cauri. Tātad uz šo piezīmi, ir vēl kādas lietas ka jūs guys gribētu iet pāri? Arī tad, ja man nav to manu klāja, mēs varam uzvilkt kaut tīmeklī, vai arī mēs varam mēģināt un darīt up piemēru par lidot. Bet kādi jēdzieni, kas jūs puiši ir nedaudz izplūdušas tālāk. [? Brian,?] Vai jūs have-- Mērķauditorija: Ak, tas ir kumulatīvs? Tāpat, ir sīkumi par viktorīna Zero būs šeit? SPEAKER 1: Tas ir kumulatīvi, bet tas ir daudz vairāk ar uzsvaru uz lietām kopš jūsu pēdējās viktorīnas. Tātad acīmredzot, jums puiši ir uzzināja par mainīgo, un cilpas, un conditionals. Un tas nav kā tiem, tikai iet prom, jo ​​viņi acīmredzot raksturīgi visu cits, ka mēs esam iemācījušies tagad. Tur varētu būt jautājums par veidu, vai tur varētu būt jautājums uz dažādiem meklējumiem. Vai tie var būt pāris jautājumi par varbūt kaut ko kam sakars ar apkopojot vai dažādas kļūdas. Bet, ja jūs esat paskatījās Viktorīna Viens no pagājušā gada, Jūs pamanīsiet, ka tā ir ļoti koncentrējas uz lietām kas ir noticis kopš jūsu pēdējās viktorīnas. Kāpēc ir tā, ka durvis vienmēr aizslēgtas? Tas tiešām uztrauc mani. Tāpēc, ka es vienmēr cenšos iet caur to. Tā ka ir diezgan daudz cik viktorīna būs. Tātad ir kādi jēdzieni, jūs guys gribētu iet pāri? Vai mēs varam pārlēkt pa labi tikai apskatot Quiz One no pagājušā gada un veida iet caur prakses jautājumiem tur. Mēs varam arī pārslēgties uz priekšu un atpakaļ. Tas nav vienreizējs veida lieta. Kādi jautājumi? Jā. Mērķauditorija: Vai es varētu jautāt jautājums par another-- SPEAKER 1: Vēl viens? Mērķauditorija: Tas ir no vēl vienu gadu. SPEAKER 1: Jā. Mēs varam arī to vēl vienu gadu. AUDITORIJA: OK. Tātad 2011. gada. SPEAKER 1: 2011. gada. Ooh, tas bija gadu pirms manis. Ļaujiet man pull šo augšu. Mērķauditorija: es domāju. SPEAKER 1: Šis aspekts attiecība ir throwing mani off. Mērķauditorija: 11 un 12. SPEAKER 1: 11 un 12. OK. Nu, šeit, kāpēc nav mēs to darām? Jūs guys-- visi tikai veikt pāris minūtes, lai skatīties caur viktorīnām. Un mēs sastādīt sarakstu. Un tad mēs iet caur tiem. Labi? Kamēr man ķekars šo stuff izveidota. OK. Es esmu tikai gatavojas rakstīt lietas leju uz papīra. 2011 11 un 12? Es esmu tikai gatavojas mainīt šo displeju. OK. Tas ir labāk. Tas vairāk. Labi. Kāds cits ir kāds, kas viņi gribētu sākt ar? Tāpat, aizmirsu pateikt, ja jūs vēlaties vairāk no ķekars cilvēku runā pie jums un tikai sniedzot jums kreka Protams, pēdējo sešu nedēļu laikā, mēs darbojas atsauksmi sesija no 7:00 līdz 08:30 šovakar Ziemeļrietumu B103, kas arī notika pēdējo reizi, kad tas notiek, lai būt mani, Hannah, Daven, ar Gabe un Rob veida palīdzība no nomaļus tikko veida throwing visu informācija, ka jūs varētu gribu būt jūsu apkrāptu lapas, slash, zinu, vispār tur. Mērķauditorija: Tas ir arī internetā, vai ne? SPEAKER 1: Tas ir arī internetā. Tātad jūs varat arī palikt ārpus šī icky laika, dodieties uz savu kopmītnes, un dzīvu plūsma to, ja vēlaties. Es esmu pārliecināts, ka daudz people-- Es zinu, es varētu būt dara, ka, ja es būtu jūsu kurpes. OK. Tātad, kāpēc nav mēs sāktu with-- kamēr jūs guys-- cerams, jūs meklējat cauri. Ja tā nav, es varētu vienkārši sākt strādāt cauri dažādām lietām Quiz One no pagājušā gada, ja vien jums ir konkrēti jautājumi. Mēs sāksim ar to Jautājums par skursteņi. Tātad tas ikvienam atcerēties veida, kas kaudze ir? Kā mēs parasti kuri paredzēti, var kāds vienkārši dot me vispārīgs apraksts kaudze? Datu struktūras veidu. OK. Tātad, tas ir viens no datu struktūras, ka mēs sagaida, lai jūs jāzina with-- līdzīgs skursteņi, bloki, rindas, utt. Jā. AUDITORIJA: Like First Jo, saņem pēdējais, kaut ko. SPEAKER 1: Tas ir pirmais iekšā, Last Out. Tieši tā. Tātad kaudze ir tieši ko mums ir tendence domāt par to, kad mēs domājam par kaudze lietām. Tātad kaudze plāksnēm. Pirmā plate jūs nolikt būs apakšā, un tas būs pēdējais viens, ka jūs izņemt beigās. Tāpēc, ka viņi kaudze uz augšu. Un jūs lietojat vienu no apakšas, parasti, lietas crash un pārtraukumu. Tātad skursteņi jūs varat iedomāties tāpat kā kaudze plāksnēm. Vai piemērs mēs vienmēr vēlētos izmantot ir par D zālēs, jums ir paplātes, viņi visi stacked up, un jūs lietojat no augšas. Tātad, pēdējais viens ir pirmais viens ārā. OK. Tātad šajā gadījumā, mēs redzēt, mēs have-- Nez ja es tiešām var pietuvināt mazliet. Tātad mums ir šī struktūrai šeit. Taisnība? Tātad jums ir kāda struct kas ir daži int skaitu jaudu. Tātad, ko mēs domājam, ka ir? Tas ir masīvs ar izmēru JAUDA. Tātad tas tiešām ir Mūsu kaudze kopumā. Mūsu steks ir patiešām vienkārši masīvs ar kādu noteiktu skaitu tas ir tā max, tas ir, tā jauda. Un tad mums ir dažas int izmērs, kas būs izsekot izmēru mūsu skursteni gaitā par to, kad mēs to izmanto. OK? Šajā gadījumā tieši šeit, mēs sakām, ka mūsu žetonu skaits ir inicializēts ar 0. Tāpēc mums ir tukša kaudze tieši tagad. Un tad mēs gribam, lai pabeigtu īstenošana pop tāds, ka tas atgriež int augšpusē. Un tad, ja tas ir tukšs, tā atgriež negatīvu 1. OK? Tāpēc es gribu jūs guys tikai domāt par to, ko mēs varētu darīt tur. Kas varētu būt viens no pirmajiem lietas, ko mēs gribētu vēlaties pārbaudīt? Tur ir lieliska lieta šeit. Ikreiz, kad tas says-- ja tur ir kādreiz dažas Ja paziņojums, piemēram, "ja kaudze ir tukša," vai "Ja tas atgriež null," vai "Ja tas ir kāds" - sorry. Mērķauditorija: Uzrakstiet, ja paziņojums. SPEAKER 1: Right. Jūs varētu uzrakstīt, ja paziņojums. Un tas ir iespējams, ir viens no Pirmajām lietām vēlaties pārbaudīt. OK. Vienmēr, kad viņi jums veida, piemēram, stūra lietu piemēram, tas, kas ir parasti viens no pirmajām lietām jūs gatavojas pārbaudīt savu kodu. Tāpat, kaut ko atzīt par viktorīnas ir, ja jums ir neefektīvi kaut ko darīt, uzrakstiet to uz leju. Tāpēc, ka mēs esam ne šķirošanas tu par dizainu, mēs esam šķirošanu jūs pareizību par viktorīnas. Tātad, pat ja jūs zināt, ka tas ir super slikts veids, kā kaut ko darīt, bet tā darbojas, uzrakstiet to uz leju, OK? Burtiski, es esmu redzējis bērni pagājušajā year-- ja paskatās pagājušā gada vienu, viņi, piemēram, darīt Mario piramīdu. Un viņi burtiski tikko bija "print, hash, drukāt, hash, hash, drukāt, hash, hash, hash. " Bet tas ir pareizi. Tas, ko mēs teicis to, lai jūs nevarat veikt punktus off. Ja jūs uz leju, lai vadu, protams, jūs vēlaties iegūt vairāk elegants risinājums, un vairāk elegants risinājums, iespējams, būs būt mazāks kods, kas nozīmē, ka jūs, iespējams, ir lielāka iespēja būt taisnība. Bet, ja jūs, piemēram, jūs zināt ko, nē, man nav laika, es zinu, tas ir risinājums, tas nav labākais, uzrakstiet to. Un jūs pat varat rakstīt uz pusē, es zinu, tas ir briesmīgi, bet es zinu, tas darbojas. Tik vienkārši heads-up. OK. Tātad acīmredzot, pirmā lieta tas ir Ja paziņojums. Tātad, ko mēs domājam šo Ja paziņojums būs? Un tiešām, ļaujiet man open up manu lielu Sublime redaktors. Es esmu gatavojas kodu, un tad parādīs puiši, kad tas ir izdarīts. Tātad int pop. OK. Tātad, ja mums ir šis int pop void-- tik acīmredzami, tas ir tāds funkcija, kas notiek ar nekas un atgriež skaitli, vai ne? Tātad tas ir tikai gatavojas runāt par šī kaudze, ka mēs esam izveidojuši. Tik vienkārši tulkojot šis pēdējais teikumu, "ja kaudze ir tukša, pop jāatgriežas negatīvs 1, "kā varētu mēs to darām? Tātad, ja tas, ko? Kā mēs zinām, ka kaudze ir tukša? Tas ir tikai izmērs ir vienāds ar 0. Stack.size ir vienāds ar 0. Arī es esmu veida rakstot akls šeit. Tātad, ja es drīkstu kāds typos-- oh, arī aizmirsu pieminēt. Pagājušajā nedēļā, es pilnīgi sapratu, ko mūsu problēma bija ar JavaScript. Nav kapitalizēt I un D. Jums vajadzētu tikai kapitalizēt I un saņemt elementa Id. Un tas bija viss kļūda. Tātad, ja jūs guys iet atpakaļ un tiešām izskatās caur manu kodu, ja jūs vienkārši darīt visu mazie d, "aizmirst elementa Id" tas darbosies. Tā kā es apsolīju, es biju ļoti tuvu. Es tikai kapitalizēti kaut Man nebija paredzēts, kuru Es esmu pārliecināts, ka jūs puiši bija jūsu pēdējā PSET. Tātad, ja mūsu lielums ir vienāds ar 0, kas mums būtu jādara? Mērķauditorija: Atgriešanās negatīva 1. SPEAKER 1: Atgriezties negatīva 1. Cool. Tāpēc tagad, ko mēs darām? Mēs vēlamies, lai pop kaut off. Tagad tas ir gadījums kur mums ir kaut kas. Mūsu izmērs ir lielāks par 1 vai lielāka par 0, labi? Mums tiešām ir kaut kas tur. Tātad, ko mēs vēlamies darīt, ir mums vēlas atgriezties tieši šeit. Mēs ejam, lai pateikt, ka mēs gribam atgriezties aug kaudze. OK? Tātad, kā varētu mēs to darām? Kā mēs atgrieztos augšpusē kaudze? Atcerieties, ka mūsu kaudze ir tikai masīvs, labi? Tā ir kāda jauda ka esam radījuši to. Kā mēs esam salikti lietas on-- vai faktiski, mēs ejam, lai uzrakstītu vārdu "push" pēc tam. Ja lietas ir there-- varbūt attēls palīdzēs. Hm, man patīk liels krīts labāk. Tātad if-- un jūs varat vienkārši domā par to kā mūsu kaudze. Tāpēc tas ir 0, 1, 2. Es nezinu, kāpēc mans kastes kļūst mazākas. Bet tur. OK. Tātad šis ir daži kaudze ar jaudu 5. Un pieņemsim, ka mums ir kaut kas šeit un mēs esam kaut ko šeit. Tātad šajā brīdī, mūsu izmērs ir vienāds ar ko? 2. Un, ja mēs gribam, lai pop kaut kas nost no tā, tas nozīmē, ka mēs vēlamies, lai iegūtu Atbrīvoties no šīs tiesības šeit. OK? Tātad, kā mēs atgriežamies šo vērtību? Mērķauditorija: Size mīnus 1. SPEAKER 1: Right. Tātad size mīnus 1, vai arī jūs varētu darīt izmēra mīnus mīnus. Bet mēs varam ne tikai darīt lielumu. Tas ir iekšā struktūrai, vai ne? Tik stack.struct. vai stack.size. Tas ir mūsu indekss labi tur. OK? Un tad, ja mēs skatāmies atpakaļ pie mūsu struct šeit, mēs pamanām, ka uz faktiski piekļūt masīvs, mums jādara stack.numbers faktiski piekļūt šai masīvs. Tā, ka atgriež augšpusē kaudze. Bet kaut that-- ja jūs guys izskatīties pie atbildes atslēgu, tas ir viss, ko viņi sniegt jums. Tātad tas ir tā. Bet es varētu apgalvot, ka viņi miss-- ooh, nav tas, ko es gribēju. Es varētu apgalvot, ka viņi trūkst kaut, because-- jā. Mērķauditorija: Samazināt izmēru. SPEAKER 1: Right. Mums ir nepieciešams, lai samazinātu mūsu izmēru tagad. Tātad, kas ir grūts par tas ir tad, kad jūs atgrieztos kaut kas, savu funkciju s iet izeju, vai ne? Tātad, ko mēs varētu darīt, ir faktiski samazināt mūsu izmēru pirmās. Un tad mēs varam vienkārši stack.size. Mēs varam tikai izmantot stack.size kā mūsu indeksu, nevarēja mēs? Jo, ja stack.size ir 2, mēs decrement to. Un tā tas ir 1, kas ir mūsu faktiskais Indice. Pēc tam, kad mēs atbrīvojamies no šīs, mēs faktiski ir tikai viena lieta, kas mūsu masīvs. Tātad, tas gan. Mērķauditorija: [dzirdams]? SPEAKER 1: Nu, šajā gadījumā, mēs tikko atgriezies elements augšpusē, kas ir pie mūsu lielums, kas ir augšpusē. Bet mēs neesam darījuši neko izmērs pēc mēs noņem šo elementu. Tas nav mainījies mūsu izmēru vēl. Tas nav reāli būtības mainīt mūsu izmēru. Bet, lai padarītu to mazliet skaidrāks, jūs varētu darīt stack.size mīnus mīnus. Manuprāt, tas padara to, es nezinu, nedaudz vairāk skaidrs that-- ah, ka jūs faktiski mainās lielums un to atpakaļ. Otrs veids, bija labi, jo jums tika mainās un atgriežas tajā pašā laikā. Taču tas ir tikai vēl viens veids, kā rakstīt tas, ka es gribēju parādīt jums puiši. Vai tas ir jēga? Skursteņi, es domāju, ir daudz vieglāk, nekā rindas. [Smejas] OK. Vai jums ir kādi konkrēti jautājumi par 11 un 12, vai just-- Mērķauditorija: Es domāju, ka tas bija kaudze. SPEAKER 1: žetonu skaits? AUDITORIJA: Jā. SPEAKER 1: Gotcha. OK. Jā, jūs varētu darīt to viens no šiem diviem veidiem. OK. Tāpēc tagad mums ir otrs. Tas ir tiešām dīvaini, piemēram, kam nav šo par manu ekrānu. Tātad, ja mēs skatāmies šeit, mēs tagad gribam pabeigtu īstenot push, kas faktiski liek kaut ko, iet un ievieto kaut ko mūsu rindā, vai mūsu kaudze. OK? Tātad, ja mēs pamanām, mēs ir pāris lietas. Mums ir mūsu great-- ja nekas cits, kad mums ir viens no tiem, jūs puiši vajadzētu vismaz saņemt pusi punkts, jo viss, kas jums jādara ir pārvērst to vērā C And viņi jums pusi no tā. Tātad, "ja kaudze ir pilna vai tas ir negatīvs, tad spiediet vajadzētu atgriezties viltus. " OK? Tātad, mēs tikai vēlamies pozitīvs skaitļu būt par mūsu kaudze. Labi? Un tas notiek vai nu atgriešanās patiess vai nepatiess. Tātad mums vajadzētu [dzirdams] bool. OK. Tik tulkojot. Mērķauditorija: [dzirdams]. SPEAKER 1: Ak, paldies. Yeah. Tas ir iemesls, kāpēc man ir jums puiši. Int n. Perfekta. Tāpēc, ka mēs esam liekot kaut kas uz mūsu kaudze. Mums tiešām ir nepieciešams zināms numuru. OK. Tik vienkārši pieņemot šo pēdējo rindu, ka viņi deva mums, mūsu veida stūra gadījumos ko jūs domājat, mēs esam šeit? Protams, mēs ejam, lai ir dažas If. OK. Tātad mēs teicām, ja mūsu kaudze ir pilnībā vai ja n ir negatīvs. Tātad, iespējams, ka visvieglāk ir sākt ar, tādēļ, ja n ir mazāks par 0 or-- atcerēties savu jauka AND, OR un uzņēmēji tur. Kā mēs pārbaudām redzēt, ja mūsu steks ir pilna? Kas notiek? Mērķauditorija: Izmērs vienāds jaudu. SPEAKER 1: Tieši tā. Perfekta. OK. Un ko mēs vēlamies darīt tur? Mērķauditorija: Atgriezties nepatiesa. SPEAKER 1: Atgriezties nepatiesa. Perfekta. Tātad pusceļā tur, labi? Vismaz, jūs puiši būs puse no tā. Tātad, pieņemsim domāt par to. Tātad šis ir kaudze sākam ar. Mēs cenšamies likt daži elements šeit. Mums ir izmērs, kas ir vienāds ar 2 tieši tagad. Mums ir spējas, kas būtu vienāda ar 5. Un pieņemsim, ka mums ir daži n, kas ir vienāda ar 3. Tātad mums ir nepieciešams ieguldījums 3. šajā telpā. Un mums ir nepieciešams ieguldījums to uz indeksā 2. Taisnība? Tātad, kā mēs varbūt izdarīt? Mēģina assign-- mēs vēlas piekļūt mūsu masīvs. Tik stack.numbers. Bet par kādu Indice būtu mēs vēlamies, lai tas būtu? Mērķauditorija: [dzirdams]. SPEAKER 1: Jā. Stack.size. Un mēs gribam, ka uz vienlīdzīgu n, vai ne? Mērķauditorija: [dzirdams]. SPEAKER 1: Es biju patiešām tikai apskatot to. Es domāju, ka ir nepareizi. Mērķauditorija: Vai tu vēlies telpa garām pašreizējo apjomu? SPEAKER 1: Nu, ja mēs skatāmies šeit Mūsu lielums šajā brīdī ir 2. Mēs vēlamies, lai tā iet uz indeksu 2, jo tas ir top mūsu kaudze. Tāpēc es teiktu, ka tas jābūt stack.size, un tad jūs varētu palielināt stack.size. Vai visi piekrītat? Es domāju, ka es piekrītu, ka. Jūs guys var apgalvot ar mani, ja vēlaties. Vai nav apgalvot, bet mēs varam apspriest. Mērķauditorija: [dzirdams]. SPEAKER 1: Mm-hm, ir, ja tas ir atvērt, jo nulles indeksācija. Tātad, tā kā pirmajā daļā, Es domāju, ka tie ir nepareizi, un viņi faktiski bija taisnība, šis daļa, es tiešām domāju, ka tie ir nepareizi. Es teiktu, ka jums vajadzētu noteikti ievadi to šeit. Es domāju, ka mēs visi piekrītam mums ir izmēru 2. Tas ir tieši tur, kur mēs vēlamies, lai mūsu jaunais numurs iet. Tātad stack.numbers at stack.size būtu vienāds n. Un tad mēs būtu izmainiet stack.size. ++. Un tad ko mēs vēlamies darīt? Tur ir viena pēdējā lieta, kas mums darīt, ja mēs veiksmīgi ievietota šo? Atgriezties taisnība. Un tagad jūs esat darījuši. Tāpēc es jūtos kā tas bija viss mīnus mīnus stack.size un stack.size ++ ka messed lietas uz augšu. Ugh. Man keep-- Man ir šī ceļa paraut tendence vienmēr hit Kontrole, S, jo I nekad vēlas zaudēt kādu no mana darba. Bet man nav nepieciešams to darīt tagad. OK. Tā, ka bija kaudze. Cool. Vai ir kaut kas? Vai jūs guys atrast kādu citiem jautājumiem, kas jūs patīk iet pāri no iepriekšējiem viktorīnu? Ja ne, mēs varam veida sākt runāt caur Viktorīna Viens no pagājušā gada. Jā. Mērķauditorija: Par pirmais daļa, man nav īsti saprast, kā jūs svītrots numuru. Vai nav tā joprojām ir tur? SPEAKER 1: skaits joprojām. Bet kas notiek, tāpēc, ka jūs esat izstāstīja par to, ka uz augšu jūsu kaudze ir šeit, kad jūs apmeklējat pievienot kaut ko uz skursteņa, tas būs vienkārši aizstāt. Mērķauditorija: Ak, OK. SPEAKER 1: Jā. Tātad, tas ir, piemēram, viņš aizmirsa, un tas ir tur veida lieta, pat ja tas ir tur. Mērķauditorija: [dzirdams] vai kaut ko? SPEAKER 1: Nē. Tāpēc, ka mēs esam masīvs, jums nav jāuztraucas about-- jums vienkārši ignorēt to, kad jums to vajag. Labi. Jebkādi citi jautājumi? Ja tā nav, mēs esam tikai gatavojas sākt strādāt cauri. Yeah. Mērķauditorija: Nu, šis ir uz 2013, bet tikai iet caur SQL sīkumi. SPEAKER 1: SQL? OK. Tātad tas ir 26 līdz 29. AUDITORIJA: Jā. SPEAKER 1: OK. Lovely. Pieņemsim pull tos uz augšu. Ak, izskatās. Vai jūs guys baudīt Steve Ballmer runāt, starp citu? Tas bija diezgan jautrs, manuprāt. Man patīk, ka katru reizi, kad es audzināt CS50 's mājas lapā sadaļā laikā, tas ir, piemēram, oh, skatīties sadaļu. Un es esmu, piemēram, mm. Mērķauditorija: Vai mēs varam darīt? SPEAKER 1: Mēs darīsim to beigās. Kā tā? Tāpēc, ka es zinu, jūs guys vienmēr gribēja. Tātad mēs darīsim to beigās. Viens jautājumi. Mērķauditorija: [dzirdams]. SPEAKER 1: Tas būs meta sadaļa. Mērķauditorija: Tas ir tāpat kā 5 sekundes. AUDITORIJA: Tiešām? Mērķauditorija: Tas ir, piemēram, 20 sekundes. [Interposing Voices] [Smiekli] SPEAKER 1: Man patīk, ka jūs jau esat darījuši tas, kas ir tas, kas padara mani laimīgāki. OK. 26. OK. Patiesībā, mēs esam tikai gatavojas spogulis šo tagad, jo es nevaru. Tas ir kaitinošas. OK. Tagad es redzu visu. Lovely. OK. Tātad acīmredzot, tas atkal lieliskas atmiņas no [? CSG?] Finance. Puse no jums par to ir jūsu šķiro tagad. Otra puse es nokļūt ļoti, ļoti ātri, es apsolu. Tātad mums ir dažas SQL tabulu tas ir konti šeit. Droši vien līdzīgi jūsu puiši "lietotāju galdi. Un mums ir dažas numurs tas bija primārā atslēga un pārstāv 12-ciparu konta numurs. Un līdzsvars ir, cik daudz naudas viņi ir. Un noklusējuma vērtība ir 100. Un viņi dod viņiem 100 $ jebkurš reizi, kad tie atvērt kontu. Es vēlos mana banka izdarīja. OK. Tātad, mēs vēlamies, lai pabeigtu shēmu, ko norādot blakus numuru līdzsvarā atbilstošs SQL tipa. Tātad, ko jūs guys domā būtu veida, piemēram, sava ceļa paraut reakcija par veidiem šiem diviem? AUDITORIJA: Int. SPEAKER 1: int. OK. Un tad par līdzsvaru? Decimal. OK. Tātad Decimal tiesības. Int ir tuvu. Veida lielā lieta ir šī uzsvēra, 12-ciparu konta numurs. Ikreiz, kad mums ir kaut kas kas ir lielāks par astoņiem cipariem, viņi vēlas, lai jūs izmantot liels int, kas, manuprāt, is-- Mērķauditorija: Vai tas ir tikai SQL? SPEAKER 1: Tas ir vienīgā reize, kad es esmu dzirdējis no tā ir SQL--, piemēram, izmantojot lielu int. Tas ir tikai, lai dotu jums nedaudz vairāk precizitāte, pārliecinoties, jūs neesat pārpildītā tipa lieta. Visās godīgums, es domāju, ka tas noteikti ir viens no tiem kur tas ir, piemēram, oh, tas ir domāts cilvēkiem kas ir nedaudz vairāk zināšanu SQL. Mēs nekad runāja par lielie Ints jūsu PSET. Tātad, tas ir veids, piemēram, es esmu diezgan pārliecināts, ka Ja jūs nodot int, tas bija puse kredīts. Un, kā jau es teicu, ir būs būt daži jautājumi, kas ir tieši domāts, lai ceļojums jums uz augšu, tāpēc ka ne visi saņem 100. Jo, protams, tur Ir daži cilvēki CS50 kuri ir darot, piemēram, astoņus gadus, un jūs, piemēram, ko jūs darāt? Bet jā. Decimal bilances bija skaidrs viens. Un tad liels int uz numuru tikai tāpēc, ka no tā, piemēram, uzsvēra 12 ciparu. Vienmēr, kad kaut kas ir treknrakstā, vai tas ir uzsvēra, piemēram, pievērst uzmanību. Mēs nedarām, ka tikai tāpēc, ka. OK. Tāpēc "Pieņemsim, ka banka uzliek 20 $ mēneša maksu uz visiem kontiem. Ar to, ko vaicājumu varētu banka atskaitīt 20 $ no katra konta pat tad, ja tas izriet no dažas negatīvas bilances? " Tāpēc sāksim vienkārši. Mums ir četras galvenās komandas SQL, kas ir? Vai jūs guys atcerēties četriem Lielajām ka es tev teicu? UPDATE, DELETE, SELECT, un ievietojiet. Perfekta. Dabūja to. Tātad, ko mēs domājam varenību būt ļoti noderīga, lai šo vienu? Mēs are-- UPDATE. Tieši tā. Tātad atjauninājumu, jo mēs meklējam pie kontiem, kas jau pastāv. Līdz ar to atcerēties mūsu vispārējo veida lieta ir atjaunota. Un tad nāk pēc UPDATE? Mums ir dažas tabula ka mēs esam norādes. Tātad, ja es uzvilkt cildens again-- UPDATE. Tātad šis ir vispārējs formātā. Tātad mums ir UPDATE tabula. Un tad kāda ir nākamā lieta, kas mums ir? Jūs varat darīt, KUR. Un tad mums ir dažas kvalifikators šeit. Un tad ko mēs esam tālāk? Mums ir dažas SET-- kaut kas vienāds ar kaut ko. Blah blah vienāds. Atjaunināts blah. Taisnība? Tātad tas ir tāpat kā vispārējā ideja kādu atjauninājumu. OK? Tāpēc sāksim aizpildot šo ar ko tam vajadzētu būt. Tātad, ko galda mēs runājam? Konti. Un pēc tam šajā gadījumā, to, kas ir patiešām foršs ir mēs runājam specifisks Lietotājiem ietvaros mūsu kontā, vai mēs runājam par visiem lietotājiem? Mēs runājam par visiem lietotājiem. Tātad šajā gadījumā, mēs varam vienkārši izdzēst šo WHERE apzīmētāju. KUR ir tikai tad, ja vēlaties ierobežot to, kas jūs esat mainās. Ja jūs vēlaties mainīt visu tabulu, jūs varat tikai piliens to. OK. Tāpēc tagad mēs esam pie mūsu SET puses. Ko mēs gribam mainīt? AUDITORIJA: Balance. SPEAKER 1: Balance. Un mēs ejam kuri paredzēti, how are mēs gatavojamies mainīt līdzsvaru? Mums ir 20 $ maksa, vai ne? Mīnus 20. Un viņi teica, ka tas ir OK, ja mums ir negatīvu bilanci. Tātad šajā gadījumā, jums nav nepieciešams darīt jebkādu turpmāku kļūdu pārbaudi. OK? Tas ir burtiski viss, kas jums jādara. Cool? OK. So iesim cauri nākamo. "Ar kādu SQL vaicājumu varētu banka ielādētu konta numurus no tās bagātākie klienti ar līdzsvaro vairāk nekā $ 1000.? " Ja jūsu bankas un jūsu bagātākajiem klientiem ir tikai tie, ar vairāk nekā $ 1,000, Es jūtos kā jūs dara kaut ko nepareizi. Tāpat, kā tas banka izdzīvot par šo? Tāpat, ka procenti, ne gluži pietiekami. OK. Ar šāda veida lieta, ko darīt Jūs domājat, mūsu četru funkciju, Vai jūs domājat, ka mēs spēsim izmantot? SELECT. Perfekta. SELECT. OK. Tātad mēs esam izvēloties kādu identifikators no galda. Un tad KUR stāvoklis. Tā kā mēs iet cauri tiem, es esmu tikai gatavojas lai dotu jums puiši vispārīgu atsvaidzināšanas par vispārējo formu visi no tiem. Tātad mēs esam izvēloties kādu veida no [? lieta. ?] Šajā gadījumā, tas būs parasti daži kolonna. Tātad mūsu gadījumā, mēs esam numura, līdzsvaru. Jo jūsu puiši "gadījumā, varbūt tas bija ID, vārds, parole. Jebkurš no šiem kolonnām, kas ir Parasti tas, ko mēs esam izvēloties. Tātad šajā lietā, kas veida kolonnas, ko identifikators mēs velkot no mūsu galda? Ko tas jautājiet mums? Tā jautā mums mūsu numuriem, vai ne? Kontu numuri. Līdz ar to atcerēties, tikai numurs šajā gadījumā. Ja jūs puiši kādreiz ir bijusi kļūda, ka spilgti oranža kaste nāks klajā. Un tas bija, piemēram, negaidītu rinda, piemēram, neatkarīgi. Tas ir tāpēc, ka jūs sauc jūsu galda nepareizi, vai ne? Tāpēc pārliecinieties, ka jūs esat zvanot kolonnu pareizi. Tātad, no galda, mūsu galdiņa ir sauc konti. Atkal, pārliecinieties, ka jūs esat atsauču jūsu galda pareizi. Un tad kāda ir mūsu stāvoklis šeit? Ko mēs meklējam? Mēs vēlamies, lai mūsu bagāti cilvēki. Jā. Tātad līdzsvarot lielāks nekā 1000. Tur jums iet. Tas ir jūsu vaicājumu. Ne pārāk slikti, vai ne? OK. Tātad tagad mūsu pēdējais. Ar to, ka mēs esam breezing cauri. OK. Tāpēc tagad "ar to, ko vaicājums varētu banka tuvu, proti, dzēst "- nav jums patīk, kā viņi tikai deva jums DELETE-- "Katrs konts, ir no 0 līdzsvaru?" Es domāju, ka mēs visi varam piekrist, ka mēs esam droši vien būs izmantojot DELETE. Es esmu laipni aicināti veikt jebkādu diskusija ap to. Bet es domāju, ka tas ir diezgan droši saka, ka mēs varētu izmantot DELETE. Tātad mēs ejam izdzēst dažus lietotāji no galda, kur stāvoklī. Tātad pats veida lieta kā izvēlēties. Tātad šajā case-- oh, sorry. Es būtu DELETE FROM. Jo DELETE gribas izdzēst visu rindu. Tāpēc mums nav nepieciešams runāt par to, kas īpašas lietas par lietotāju mums esi dzēšana. Ja mēs izdzēst lietotāju, mēs esam izdzēšot visu par viņiem. Tātad šajā gadījumā, mēs vienkārši nepieciešams, lai aizpildiet mūsu kur un mūsu stāvoklī. Tātad mūsu galda ir tikai mūsu konti galds, kā mēs esam bijuši dara. Un tad kāda ir mūsu stāvoklis šeit? AUDITORIJA: Balance. SPEAKER 1: Balance ir vienāds ar 0. Pareizs. Viss ir labi. Jā. Mērķauditorija: [dzirdams]. SPEAKER 1: So DELETE būtības izdzēš visu. Tādējādi, kaut arī ar SELECT, SELECT uzņem dažas kolonnas, kas vēlaties atgriezās. Ja jūs vēlētos visu par lietotājs atgriezās, jūs izmantojat zvaigzne. Star saka, atgriezties pie manis viss no šī lietotāja. Vai, ja jūs nodot WHERE zvaigzne, ka nozīmē tikai dod man visu. Bet DELETE būtības ir kas. Tātad, ja jūs sakāt, DELETE no konti kur atlikums ir vienāds ar 0, tas notiek, lai iet cauri. Un visur šis līdzsvars ir vienāds ar 0, tā pēc būtības ir tas, ka. Tas būs izdzēst visu. Zvaigzne ir vairāk for-- ar SELECT vai atjaunināt, tas runā vairāk par indivīdu lauki, kas atbilst lietotājam. Tātad, ja jums SELECT zvaigzne no galda, kur ID vienāds 1, kas atgriežas pie jums Viss par lietotāju ar ID 1. Ja tu būtu to darīt SELECT numurs vai SELECT ID komatu vārdu no lietotājiem KUR ID ir 1, kas vienkārši atgriež to skaitu vai to ID un viņu vārds. OK? Tāpēc mēs izmantojam zvaigzni tādā gadījumā uz sniegt mums visu par lietotājam. Un DELETE raksturīgi tas, ka. Tas nav vienkārši izdzēst ID, vai tikai nosaukumu, vai neatkarīgi. Jā, nē. Tas vienkārši izdzēš visu lietotāju. Tāpēc mums nav jāuztraucas par zvaigzni tur. Ja jūs vēlētos, lai izdzēstu viss, jūs varētu darīt, un tas būs tikai piliens viss. Bet parasti, jums nevēlos to darīt. Bet, ja jūs kādreiz vēlaties dzēst viss, jūs varētu darīt. OK. Vai jūs guys atrasti kādi citi jautājumi? Jā. Mērķauditorija: Vai jūs varētu darīt 26? SPEAKER 1: 26 mēs tikko izdarījām. Mērķauditorija: Ak, 25, sorry. SPEAKER 1: 25. OK. 25. Oh. Viņi dara JavaScript. Ak, es nevaru noticēt. Es esmu gatavojas putru mūs atkal, puiši. OK. Mēs saņēmām šo. Mēs ejam, lai padarītu šo darbu. Ah, jQuery. Jautri. OK. Tātad mēs gatavojamies, lai pabeigtu īstenošana mājas lapā tādā veidā, ka, ja ierodas, ievadi savu vārdu, un iesniegt veidlapu, viņi ir šo lielisko brīdinājumu logs, kas gatavojas parādīties. Tātad, kaut ar brīdinājumiem, mēs zinām, ka mēs esam nāksies izmantot JavaScript. Yay, JavaScript. Un, ja viņi nespēj ievadītu nosaukt pirms iesniegšanas veidlapu, nav brīdinājuma vajadzētu parādīties. Tātad jūs varat izmantot jQuery, bet jums nav. Tāpēc es esmu gatavojas let jums puiši strādā par to tikai uz pāris minūtēm. Padomā par to. Un tad mēs kods to. Slash Es esmu gatavojas izmēģināt un domāt par Labākais veids, kā izskaidrot šo atbildi, lai jums. Labi. Mēs dabūsim to izveidot. OK. Tātad mēs esam tikai gatavojas staigāt pa šo, jo es zinu, jQuery ir nedaudz mulsinoša. JavaScript. Tas ir maz, kas tur. Tātad, ko mēs gatavojamies darīt, ir [Dzirdams] faktiski atrisināta šī problēma ar jQuery. Tātad, ja jūs atceraties, jQuery ir tikai bibliotēka kas ir tikko uzcelta virsū JavaScript. Tas ir domāts, lai padarītu jūsu dzīvi mazliet vieglāk. Es noteikti, ja Jums ir laiks, apskatīt mazliet dokumentāciju jQuery. Bet tas ir ļoti līdzīgs JavaScript. Tas ir ieguvuši līdzīgas paradigmas, kur jums izmantot šo dot operatoram, lai izsauktu funkciju uz objektiem, kas jums ir. Tātad, ko mēs esam šeit ir jQuery, jums vienmēr ir šāda veida no ietinamā papīra, kas ir $ (Dokuments) .ready (funkcija) funkcija iekavās šeit. OK. Tātad tas varētu būt kaut kas jūs vēlaties savā apkrāptu lapas. Jo vismaz, jūs varat ir iesaiņojuma jūsu jQuery. Un tas būs vismaz saņemt Jūs šķirties veidos tur. Tātad, tādā pašā veidā, kā mēs daudz runājām JavaScript, un mēs varētu sākt, aplūkojot uz to, ko mēs cenšamies labot vai to, ko mēs cenšamies mainīt. Un tas parasti būtu Pirmā lieta, ko mēs gribētu īstenot. Tātad šajā gadījumā, ja mēs ejam atpakaļ uz šo šeit un mēs skatāmies mūsu formu šeit, mums ir šo ieejas, labi, šis id izejvielu. Un mēs zinām, ka, pamatojoties uz mūsu jautājumu, mēs vai nu gatavojas mest kļūda, ja tas ir tukšs, vai mēs spēsim likt to vērā brīdinājumu, vai ne? Tātad, iespējams, var droši teikt, ka mēs esam būs darīšana ar ieejas šeit. jQuery ir ļoti līdzīga, jo, ja mēs domāju, ka atpakaļ uz CSS, kaut ar ID mēs skatāmies ar hash. Kaut kas ar klasi mēs paskatījās ar punktu, vai ne? Tātad tāpat šeit, kādi mēs runājam par ir ieejas. Mēs redzējām, ka izejvielas ir ID mūsu veidā. Tātad, mēs ejam, lai atsauktos uz to kā tādu. Ieejas. OK? Tātad, ja ir šaubas, pat ja jums ir nekur, ja jūs patiesi pārliecināts par to, kā pieeja šo, A, ir šī iesaiņojuma. Lai sāktu tur ar iesaiņojuma jQuery. B, pārliecinieties, ka jūs zināt ko jūs mainās. Un, ja rodas šaubas, nodot, ka kaut ko, un darīt dot, ko jūs domājat Jums vajadzētu darīt ar to. Mērķauditorija: Kas ir wrapper? SPEAKER 1: wrapper tas ir pirmais rindā. Tātad šis saka, pagaidiet, līdz mans dokuments ir gatavs. Tad sākt messing ar lietām. OK? Tātad mēs zinām, mēs messing ar ieejām. Tātad mēs esam līdzīgi, OK, izejvielas ir mūsu forma. Tas ir mūsu ID. Tāpēc, ka tas, ko mēs esam būs meklē. Un mēs gribam, lai redzētu, kas notiek ja ir iesniegts šo veidlapu, labi? Tā kā mēs varētu domāt, mums ir dažas .submit. Tik .submit vienkārši saka, OK, šo formu ka mēs esam piesaistītas ar hash ieejas, kad tas ir iesniegts, izpildīt kaut ko citu. Tātad mēs ejam, lai ir dažas funkcijas. Ievērojiet, mums ir anonīms funkcijas šeit. Mums ir anonīmu funkciju šeit. Jā. Mērķauditorija: Vai tas vienmēr ir .submit, vai tas ir tikai tāpēc, ka HTML, mēs, poga tips Pieteikt? SPEAKER 1: Būtu .submit, jo tas ir sava forma, kas mums ir prioritārs. Tā kā šis .submit nav obligāti atbilst kāda poga ir kā zvanīt. Bet fakts, ka tā ir formu, ko mēs esam iesniegšanas. OK. Tātad paziņojums anonīms funkcija, šeit, ka says-- Mērķauditorija: Man nav īsti saprotu anonīms funkcijas. SPEAKER 1: So anonīms funkcijas, viņi tikai funkcijas, kurām nav vārdu. Tātad, tā vietā, kādu galvenā funkcija ka calls-- mēs varētu teikt, ja dokuments gatava, tad mēs to sauktu ieejas. Un tad, kad iesniegts, call-- tāpat, ja tā un tik iesniegto mēs gribētu aicināt kādu citu funkciju. Anonīma funkcija vienkārši nav vārdu, un tas būs tikai izpildīt ietvaros šādām lietām. Tātad šajā gadījumā, ko tas saka ir, Kad mūsu dokuments ir gatavs, izpildīt šo funkciju. Šī funkcija tiek sastāv viss ietvaros šeit. Un tad nākamais slānis ir OK, kad tiek iesniegts ieejas, izpildīt to. Tas ir tikai veids, kā apzīmē kādi būtu jāveic, ja. Tas ir burtiski tikai funkcija, kas nav ir vārds, tāpēc viņi mēdz būt savietojamas uz otru, jo jūs nevarat zvanīt viņus vārdā. OK? Burtiski, anonīmu funkciju ir tikai funkcija bez nosaukuma. Viss. Tikai veids, kā iekapsulēt dažādas lietas ka mēs gribam izpildīts īpašos laikos. Mērķauditorija: [dzirdams]. SPEAKER 1: atvere? Kur? AUDITORIJA: In iekavās pēc funkciju? SPEAKER 1: pēc funkcijām. Kuriem viens? AUDITORIJA: Abi. Ja jūs nodot, piemēram, notikums, vai ja jūs likts arguments tur, tas būtu nepareizi? SPEAKER 1: Šajā gadījumā, es domāju, ka jūs varētu likt argumentu tur. Bet tāpēc, ka mums nav vajadzīga arguments, tur nevajadzētu būt. Tāpat kā, tas ir viss, piemēram, jums vajadzētu tikai ir lietas, kas ir nepieciešams veida lieta. Tādā pašā veidā, ka tad, ja mums būtu kāds funkcija, kas ir int galvenais void--, piemēram, ar int galveno tukšumu, tu varētu darīt int Arg v, neatkarīgi. Bet, ja jums nav nepieciešams tos, jums nedrīkst tos tur. Tas pats. Emma, ​​jūs ir jautājums? OK. Cool. OK. Tātad, ko mēs līdz šim ir, kad mūsu dokuments ir gatavs, izpildīt to. Tagad mēs esam apskatot ja tas ir iesniegts. Tāpēc tagad mēs faktiski ir sava veida Gaļas mūsu lieta. Tāpēc mums ir nepieciešams, lai iegūtu vērtību, ka lietotājs iesniegti, vai tas būs vārds vai tukšas. Un tad mums ir nepieciešams vai nu atgriešanās Šis brīdinājums vai mest kļūda. Nu tā. Tātad, kā mēs pasludināt mainīgais JavaScript? Var. So teiksim, VAR nosaukums equals-- vai patiesībā, mēs do vērtību, jo es domāju, ka tas ir nosaukums. OK. Tātad mums ir zināma vērtība, ka mēs vēlas, lai vilktu no mūsu ieguldītos resursus formā. Tātad, tādā pašā veidā, ka mēs veida darījām ieejas, var kāds man pateikt, ko mēs var zvanot šeit ja mēs vēlējāmies, lai saņemtu vārdu no formā? Un, ja mēs atskatāmies uz mūsu veidā šeit, mēs pamanām, ka mums ir ID nosaukuma. Mērķauditorija: [dzirdams]. SPEAKER 1: Jums nav domāt par to, kā masīvs. Jums nav jāuztraucas par to. Tātad mums vienkārši ir dažas nosaukumu. Un tad tāpēc, ka JavaScript un lietām Ir dīvaini, mēs nevaram vienkārši darīt "vārdu." Mums tiešām ir, lai izsauktu daži funkcija, kas dod mums, piemēram, vērtība, identifikatoru. OK? Tātad tas ir tikai .val. Mērķauditorija: [dzirdams]. SPEAKER 1: OK. Tātad ar JavaScript, šāda veida lieta šeit vienkārši iet cauri. Un jūs varētu domāt par šo as-- tas ir tāpat kā gandrīz kā getElementById, kur getElementById būtu faktiski atgriezt pilnu lieta jums. $ ("# Name"), ir tāpat kā, Labi, man ir tā, es varu piekļūt, bet, ja jūs tiešām vēlaties to lai atgrieztu vērtību you-- Mērķauditorija: Vai tas ir kā rādītājs? SPEAKER 1: Tas ir veids kā rādītājs. Jūs varētu domāt par to, kā veida, piemēram rādītāju. Tāpat kā, tā saka, OK, es zināt, kā tur nokļūt, bet faktiski iegūt vērtību no tas, jums ir skaidri prasa. Un diemžēl, protams, mums nav darīt pārāk daudz ar JavaScript un jQuery. Tātad, tas ir gatavojas nākt uz leju, lai cik daudz tu guys-- ko jūs notikt zināt, kas jums gadās, ka ir redzējis, un kādi Jūs varat veida loģiski uzminēt. Tā kā daži no šīm lietām, jūs droši vien varētu nokļūt pusceļā tur. Bet, lai saņemtu to pilnīga taisnība, Es domāju, ka šo problēmu iespējams bija viens no zemākajiem rādītājiem. Mērķauditorija: Tāpat kā, piemēram, par [nedzirdama] ieejas, kāpēc nav jums ir likts val tur? SPEAKER 1: Par šo vienu? AUDITORIJA: Jā. SPEAKER 1: Jā. Tāpēc, ka tas ir sava veida no, piemēram, kā mēs teicām, daži rādītājs, un tas ir man atsauču tas un faktiski kļūst mums par vērtību. Mērķauditorija: tā [dzirdams]? SPEAKER 1: izejmateriāliem, ieejas ir tikai some-- tas ir tāpat kā mēs esam tikai skatoties uz to kopumā, un šis .submit stāsta mums to, kas mums ir nepieciešams zināt. jQuery un JavaScript ir dīvaini. Es zinu. Es zinu, puiši. Es zinu. Ir iemesls, man nav do web programmēšana. Just kidding. Man nav bijis pietiekami iedarbību uz to. Mērķauditorija: [dzirdams] CSS. [Smiekli] SPEAKER 1: OK, tas ir CSS. CSS ir tāpat, piemēram, darīt lietas diezgan, tas nav kā pieņemsim galā ar datiem. Ir atšķirība tur. OK. Tāpēc tagad, cerams, tas part-- arī, problēma, piemēram, tas, kur jūs nedrīkstat zināt sintaksi, jūs varētu būt, piemēram, Labi, jūs varētu būt kāda VAR vērtība un būt, piemēram, pieņemu I ieguva vērtību pareizi. Un tad jūs varētu, iespējams, rakstīt šo nākamo daļu. Šī nākamā daļa, iespējams, būs šķiet daudz vieglāk, vai tas būtu loģiski jēga jums puiši. Tā kā tas, ko mēs esam rakstīts līdz šim, Es zinu, es būtu, piemēram, Umm, jā, Es nezinu, ka uz viktorīnas. Jūs varat pilnībā rakstīt psuedocode un tad ielauzties reālā kodu kad you-- tas ir veids kā math. Ja esat kādreiz bija daži multi-part problēma, ja jūs nezināt, kā to nokļūt pagātnē pirmo soli, bet viss pārējais balstās uz šo pirmo soli, jūs vienkārši teikt, tāpat kā, pieņemu, x ir vienāds ar 4. Un tad jūs darboties ar to, labi? Jūs varat darīt to pašu ar kodu. Tātad, jūs varētu teikt, uzņemties Man vērtības tiesības. Tad darīt šo nākamo daļu šeit. Tāpēc, ka šī daļa patiesībā būtu diezgan loģiski. Tāpēc mums ir nepieciešams, lai pārbaudītu ja mūsu vērtība ir tukša. Vai arī, ja tas ir sava nosaukuma, faktiski dod brīdinājumu. Tātad, ko mēs varbūt gribam pārbaudīt? Mēs vēlamies, lai ir dažas If. Ko jūs domājat par mūsu Ja būs? Mums ir nepieciešams, lai pārbaudītu, lai redzētu, vai vērtība is-- ja tas nav tukša virkne. Perfekta. Tieši tā. OK. Tātad, ja tas ir gadījumā, ko mēs vēlamies darīt? Mēs vēlamies, lai mestu kādu brīdinājumu, vai ne? Tātad tas ir tikai brīdinājums. Un tad, kādu gribam iekšā. Tātad, kādi ir mums vajadzēja ir iekšā mūsu brīdinājumu? Mērķauditorija: "Sveiki." SPEAKER 1: komatu. Un tad jūs guys atceros, kā saķēdēt? AUDITORIJA: Plus. SPEAKER 1: Plus. Tātad, mēs vēlamies, lai būtu plus. Un tad mums ir nepieciešams vēl viens plus mūsu izsaukuma zīmi. Cool. OK. Pretējā gadījumā, tas, ko mēs varbūt gribam darīt? Mēs negribam neko darīt, vai ne? Tātad mēs vienkārši atgriezties viltus. Nav tas, ko es gribu darīt. OK. Un tad tās, no course-- kas ir svarīgi ir atcerēties, lai aizvērtu Jūsu anonīmi funkcijas. Tātad, ja jūs pamanāt, mums ir dažas funkcija, šeit, ka beidzas šeit. Tāpēc mums ir nepieciešams, lai aizvērtu šo Pirmais un pievienotu semikolu. Un tad šeit tas viens ir darīt ar šo anonīmu funkciju, tāpēc mēs tur to aizvērtu. Ka ceļa paraut reakcija ietaupījumu. Jā. Mērķauditorija: Vai ir iemesls that-- tikai visiem piemēriem JavaScript ka es esmu redzējis, mēs esam pirmie cirtaini bikšturi uz vienas līnijas kā funkcija? SPEAKER 1: Tas ir stilistiski. Yeah. Un tiešām, ja Jūs lietojat 61, mēs darīt visu mūsu cirtaini bikšturi, ka veidā. Vai ne? Mērķauditorija: Ja mēs darījām to, ka PSET, ir tā, ka slikti stilu? SPEAKER 1: Nē. Mēs esam skaidri pateica jūs puiši, lai to paveiktu. Bet patiesībā, tas ir sava veida no dominējošā konvencijas ir daudz C klasēm un JavaScript un jQuery. Tātad acīmredzot, es esmu sure-- un patiesībā, ja es Tika darīt šo problēmu pilnībā akls bez paskatījās uz to, ir iespējams, ļoti maz veidi, es būtu gotten to. Es varētu būt bijis, piemēram, OK, varbūt es nepieciešams, lai greifers kaut kas ir ieejas. Un es domāju, kam zināms, ka, piemēram, Labi, ja es gribu, lai saņemtu kaut ko no formas, kas ir ID, Es runāju par to šādā veidā, Es gribētu, iespējams iegūt to. Es varētu saņemt šo. Bet tiešām, vienīgā lieta, ka es domāju, ka Es tiešām saņemt tas ir labi šeit. Tātad, tas ir sava veida svarīgi zināt, kā ar jebkuru sarežģītu testu, jūs veida izvēlēties savu cīņas, vai ne? Ja jūs zināt, ka jūs neesat gatavojas saņemt ka pirmā daļa jQuery, kā jau teicu, pieņemsim, ka jums ir šī vērtība un darīt to, ko jūs varat ar to. Un, ja jums ir laiks, iet atpakaļ un mēģināt aizpildīt gabalos. Bet neļaujiet jautājumu, piemēram, tas tiešām purvs jums leju. Jo ko? Tas bija viens jautājums par jQuery no visa eksāmenu. Tātad, jā, tas lūdzu būt lieliski, ja jums to. Mērķauditorija: [dzirdams] jums ir laipni aicināti izmantot jQuery. SPEAKER 1: Jūs esat laipni aicināti izmantot jQuery. AUDITORIJA: OK. [Nedzirdama]. SPEAKER 1: Kā jūs to izmantot? Es būtu apskatīt up visu manu JavaScript. Tas ir tiešām daudz vieglāk, Es domāju, ka, lai izmantotu jQuery, jo jQuery faktiski samazina daudzums JavaScript rakstīt, iespējams ko, piemēram, puse. Tātad mūsu kodu, iespējams, būtu divreiz tik ilgi bez tā. Tātad, ja jūs recognize-- lielākais lieta, kas jāņem prom no šīs problēmas ir modeļi. Ja jūs piekļūt kaut kas no formas, jūs gatavojas izmantot citātus, hash, ko jūs mēģināt piekļūt. Ja tas tiek iesniegts, jūs vēlaties izmantot kaut ko līdzīgu .submit. Jūs, iespējams, gatavojas izmantot anonīms funkcija tur. Ja jums tiešām ir nepieciešams vērtība kaut kas, jūs gatavojas darīt citātus, hash, neatkarīgi, ka lauks ir, .val. Un atzīstot modeļus piemēram, ka dodas būt daudz noderīgāks nekā īsti nezinot utains graudaini. Jā. Mērķauditorija: Tātad, ja lietotājs iesniedz savu vārdu un tas iet caur šo paziņojumu, būs tā iet uz leju, un atgriezties viltus pēc tam? SPEAKER 1: Nē, jo, ja ziņojumam Jūs varat domāt par to kā atgriešanos. Yeah. Tā tas būs izietu. Yeah. AUDITORIJA: Vai jūs, [? vieta?] iekavās no iesniegt iekavās kaut ko? SPEAKER 1: Es darīju, es ticu. Tas viens ir slēgts tieši šeit. Un tad tas viens izpaužas slēgtas šeit. Mērķauditorija: Ak, tur. Labi. SPEAKER 1: Protams, maz, maz sintaktiskie lietas piemēram, ka, mēs, iespējams, vienkārši aplis, un būt, piemēram, neaizmirstiet savus iekavas. Bet jā. OK. Vai mums ir vēl viens ka mēs gribētu darīt? Vai jūs guys iegūt bināro koku vienu? Vai mēs gribam, lai iet pa šo vienu? Es jūtos kā bināro koku un Francijas aizjūras departamentus, būtu punkti ka jūs guys iegūt diezgan viegli. Es negribētu jums zaudēt punktus par to. OK. Darīsim šo DOM šeit. Es vēlos man bija mana virsmas tā I varētu tikai zīmēt uz ekrāna. Tas ir tas, ko es mēdzu darīt pagājušajā gadā. OK. Tātad kā jau minēju, mēs runājām par DOM, dokumenta objekta modelis. Viņi, iespējams, gatavojas sniegt jums daži mazliet fragmentu kā šis un aicinu jūs, lai izveidotu koku par to. Un tas tikai viss ir jādara ar braucot cauri tagiem. Tātad, pieņemsim mēģināt un darīt. Tāpat, kā vienu parasti, ja jūs guys izdarīt šīs viktorīnas, jo es ļoti iesakām jums to, kā praksē, kāds no tiem, ka jūs, piemēram, Es tiešām nesaņem to, ko ir notiek šeit, tikai, protams, sūtīt man e-pastu ar jautājumu, un es paskaidrošu, kā vislabāk varu. OK. Mums ir kādu dokumentu, un mums ir HTML. OK. Tātad, tad mēs esam tikai analizējot tagi šeit, vai ne? Tātad, ko mēs redzam comes-- kādi ir divas apakšpozīcijas saskaņā HTML? Īpaši tāpēc, ka viņi izrobota pareizi? Galvas un ķermeņa. Ah. Galvas un ķermeņa. Lovely. Tātad sāksim šeit ar galvu. Kas ir zem galvas? Kas ir mūsu nākamais tag? Virsraksts. Un tad pēc nosaukuma, viktorīnas. OK. Tātad burtiski, tas ir tikai pastaigas pa tagiem, OK? Tātad, ja mums ir ķermenis, kā mēs iet cauri, ķermenis ir trīs lietas ietvaros tā, vai ne? Tas ir ieguvuši trīs divs. Katru div izpaužas sava maza kaste. Un, kas ir pirmajā div? [Nedzirdama] Un tad nākamais ir vidū, ko es esmu tikai gatavojas saīsināt. Un tad pēdējais ir bottom. Tik tiešām, tas ir tikai ejot cauri. Un tāpēc, ka mēs ejam, lai dotu you HTML, kas ir pareizi izrobota, jūs varat burtiski vienkārši palaist caur un būt, piemēram, OK, šeit ir HTML. Tātad šis ir attālākajos stūra, vai vistālāk pa kreisi, tā, ka ir jābūt sava lieta. Tie ir par to pašu atkāpi. Tātad mēs zinām, ka galva ir būt tajā pašā līmenī kā ķermenī, bet zem HTML. Tas ir tas, ko mēs esam šeit. Galvas un ķermeņa ir brāļi un māsas, bet viņi ar HTML. Un tad mēs vienkārši iet uz katru no tiem. Tātad galvenais ir nosaukums, kas ir viktorīna, kā mēs redzam šeit. Un pēc tam šajā gadījumā, mums ir ķermenis, kas ir šīs trīs rindas. Tātad šie ir visi brāļi un māsas visi zem ķermeņa. OK? Tātad, cerams, kad jūs redzat kaut kas līdzīgs šim, jūs, piemēram, jā, es tikai iegūt izdarīt koku. Tas ir gonna ir lieliski. OK. Tāpēc gribēju pārliecināties jūs puiši zināja, ka. Tātad, kāpēc nav mēs ejam uz 32 ar mūsu bināro koku? Jo, kad jūs saprotat bināro meklēšana koks, tas tiešām nav tik slikti. Tātad Everett, es varu erase-- I domāju, tie visi ir online, too. Tātad, ja jums ir kādi jautājumi. Zaudēja maz vietas tur, bet tas ir OK. Tātad binārā meklēšana koks tikai veids, kā organizēt datu nav masīvā, kur sakne vienmēr ir lielāks nekā kreisā bērnu un sakne ir vienmēr ir mazāks nekā labajā bērnu. OK. Tāpēc mums ir šo lielisko meklēšanu koku šeit. Mums ir šos skaitļus, 34, 59, 20, 106, 36, un 52. Un mums ir nepieciešams, lai organizētu tiem tādā veidā, tāds, ka sakņu ir lielāks nekā viss kreisajā pusē un tas ir mazāks nekā viss uz labo pusi. Un parasti, ko jūs vēlaties darīt, ir mēģināt atrast kaut kas par vidū. Ar bināro meklēšanas koku, iespējams, ir spēlēt aptuveni mazliet ar to. Bet šajā gadījumā, pieņemsim tikai Pieņemsim, ka mēs zinām, šī pirmā. Tātad 36 ir mūsu pirmā šeit. Raksturīgi, ka es gribētu izmēģināt un izvēlēties kaut ko par vidū, kas būs iespējams, dod vislabākos rezultātus. Tātad tagad mēs zinām, ka viss, par šajā pusē ir jābūt mazākam par 36. Bet arī, ko jūs varētu redzēt, ir ka mums ir divi plankumi vairāk nekā šeit. Tātad, ja mēs zinām, ka mums ir nepieciešams divas numurus, kas ir mazāks nekā saknes, tad jūs varētu vienkārši pasūtīt šos un izvēlas trešo numuru. OK. Tātad, kāpēc nav mēs sākam ar šajā pusē? Tātad, ja mēs zinām, ka viss uz šajā pusē jābūt mazāk nekā 36-- bet, ja mēs skatāmies uz šo vienu, mēs zinām, ka šis skaitlis ir būt mazāks par šo numuru, vai ne? Tā kā šis skaitlis šeit ir labajā pusē. Un atcerieties, tāpat kā mūsu lielāks koks, viss pa labi ir nepieciešams, lai būtu lielāks nekā saknes. Tādā veidā, mēs zinām, ka kāds ir šajā vajadzībām ir lielāks nekā kāda ir šeit. OK? Tātad mums ir divas iespējas šiem diviem burbuļiem. Mums ir 32 un 34-- vai sorry. 20 un 34. Tātad, kā jūs domājat mēs varētu nodot šos? Ja tas viens ir jābūt lielāks nekā šo vienu, tas nozīmē, ka mēs vēlamies, lai ir 20 šeit un 34. šeit. OK. Tātad, tādā pašā veidā, mēs skatīties pie šāda veida sub koku. Un mēs sakām, OK, mums nav 36. Mums ir 106, 52 un 59. Taisnība? Šajā gadījumā šeit, mēs zinu, ka tas ir nepieciešams, ir viena lieta, kas ir lielāks nekā tā un viena lieta, kas ir mazāks par to. Taisnība? Tātad, ja mēs ieliekam tām, lai, tas ir tikai par atkārtoti konstatējusi, ka vidējā vērtība. Tātad mūsu vidū vērtība ir 59. Tātad mēs sakām, OK, kas ir mazāk nekā 59? Nu, tas ir 52. Un, kas ir lielāks par 59? Nu, tas ir 106. OK? Tātad tas ir tikai mazliet kā puzzle. Tas parasti palīdz, it īpaši mazās koku kā šis, ja jūs vienkārši pasūtīt to, ja jums zināt, cik daudz ir pa kreisi un cik ir uz labi, ka var vienkārši ļauj jums izvēlēties, ko jābūt jūsu saknes. Un tad jūs varat veida par darbu no turienes. Mm-hm. 33? Pārliecināts. OK. Tātad, mēs vēlamies izveidot mezglu vai bināro meklēšanas koku. Un pieņemsim apskatīt to, kas varētu būt tajā. Un es domāju, ka tas faktiski mūsu pēdējā problēma. Ah. OK. OK. Tas ir tāpat kā tas, ko mēs varam domā par kā mezglu, vai ne? Mums ir zināma vērtība, un mēs zinu, ka tas būs vai nu ir kreisās un labās bērni. Binārā meklēšana tree-- šo līdzekļu ka tas ir ne vairāk kā diviem bērniem. OK? Padomāsim par to, kā mēs definēja saistīts sarakstu, vai ne? Mums bija daži int ka pārstāvēja vērtību. Mums bija daži rādītājs, kas atspoguļo ko tā gatavojas nākamo. Binārā meklēšana koks ir ļoti līdzīgs. Mums joprojām ir dažas vērtības, n, ka mēs dodam to, labi? Un tad es vērsa šiem ļoti tieši ar bultām, jo tie ir efektīvi norādes. OK? Tātad n parasti ir, ko? Tas ir sava vērtība. Ko mēs parasti to atzīt par? Int. Tātad mums ir dažas int n, vai int vērtību, vai kāds jūs vēlaties, lai izsauktu to. Un tad mums ir pa kreisi bērnu un labi bērnam. Taisnība? Un mēs zinām, ka tas, ko viņi point-- ko viņi norāda uz? Viņi norāda uz citiem mezgliem, vai ne? Tātad, kā mēs paziņojam mezglu rādītāju? Mērķauditorija: [dzirdams]. SPEAKER 1: Mm-hm. Un mēs esam nāksies divi no tiem, vai ne? Un tad mēs varam burtiski do devās uz kreiso bērnam un tiesības uz pareizo bērnam. Actually-- žēl. Tāpēc, ka mums ir nepieciešams struct. Tātad struct ir tāpēc, ka mums nav gatavo deklarējot mezglu vēl. Tātad mezgls atrodas šeit. Tas ir veids, piemēram rekursīvs definīcija, vai ne? Tātad, kad mēs esam laikā šo definīciju, mēs nav pabeigta deklarējot mezglu kā struktūru, tāpēc mums ir jādara struct mezgla tikai teikt, jā, mēs esam patiesībā atsaucas atpakaļ uz ourself rakstīt lieta. Ka, piemēram, pēc tam, kad tas ir izveidota, tā būs labi. Tātad, cik liels jūs guys domāju, ka tas ir? Kas izmērs šo struktūru? 12. Kāpēc? Precīzi. Un faktiski, viens no pirmie jautājumi viens viktorīna One ir par izmēriem, kas ir iemesls, kāpēc es jautāju. Labi. Mēs gatavojamies līdz beigām, jo DCE būs bļaut uz mani, ja mums nav. Bet, ja jūs guys ir kādi jautājumi, protams, rakstiet man, ļaujiet man zināt. Jūs puiši gatavojas rock to. Es esmu super satraukti. Jūs puiši tiks veikts trešdien, un tad jūs saņemsiet strādāt pie sava finālā projekti, un tas būs awesome. Es būšu šeit nākamais nedēļa 4:00-4:30 ja jūs puiši vēlas nākt uzņemt jūsu viktorīnas. Ja jūs vēlaties atrast man kādu citu reizi vai vienkārši koordinēt citu laiku, justies brīvi let me know. Pretējā gadījumā, tas ir mūsu pēdējā daļa. Tātad tas bija liels, lai redzētu jums puiši. Lūdzu ņemt vairāk Candy. Un labu veiksmi jūsu viktorīnā.