1 00:00:00,000 --> 00:00:08,090 2 00:00:08,090 --> 00:00:09,810 >> ЈАСОН Hirschhorn: Добредојдовте сите, до недела 10. 3 00:00:09,810 --> 00:00:15,130 Ова е возбудлив недела, бидејќи утре е Квиз 1, која ќе добиеме 4 00:00:15,130 --> 00:00:16,400 во втор. 5 00:00:16,400 --> 00:00:21,770 Денес во дел, ние ќе се обидеме да одиме над некои ресурси за квизот, и 6 00:00:21,770 --> 00:00:24,890 тогаш јас ќе ти одговорам и сите прашања вие момци имаат. 7 00:00:24,890 --> 00:00:27,880 И ние конечно ќе заврши со некои пракса проблеми. 8 00:00:27,880 --> 00:00:30,940 >> Можеме да го поминат целиот оддел одговарање на прашања. 9 00:00:30,940 --> 00:00:33,240 Можеме да го поминат целиот оддел случува во текот пракса проблеми. 10 00:00:33,240 --> 00:00:36,890 Ние само ќе се прошири за да се пополни просторот и времето што го имаме. 11 00:00:36,890 --> 00:00:40,590 >> Па да го ставам на оваа листа секоја недела, но тоа е особено важно оваа недела. 12 00:00:40,590 --> 00:00:44,980 За студирање, ако не сте почна веќе, ох момче. 13 00:00:44,980 --> 00:00:46,400 Но се надевам дека сте почнале веќе. 14 00:00:46,400 --> 00:00:50,710 И ви се случува преку материјали и ресурси наведени тука. 15 00:00:50,710 --> 00:00:54,300 Јас високо ќе им препорачаат голем број од нив. 16 00:00:54,300 --> 00:00:58,780 >> Особено, материјалите се неверојатно важни и корисни. 17 00:00:58,780 --> 00:01:02,880 На study.cs50.net обезбедува голем буквар на многу 18 00:01:02,880 --> 00:01:04,250 темите што се опфатени. 19 00:01:04,250 --> 00:01:07,810 Исто така, има некои големи практикуваат проблеми. 20 00:01:07,810 --> 00:01:11,260 А потоа, Google е одлично, исто така. 21 00:01:11,260 --> 00:01:12,360 Не знам што би ја користите за. 22 00:01:12,360 --> 00:01:14,090 Но ги користат Google, како и. 23 00:01:14,090 --> 00:01:16,680 >> Допрат до мене, ако имате било какви прашања, коментари или прашања. 24 00:01:16,680 --> 00:01:19,420 Гледај во текот на преглед на сесијата слајдови од минатата ноќ. 25 00:01:19,420 --> 00:01:21,540 Или, ако имате малку време, види видеото. 26 00:01:21,540 --> 00:01:24,930 Тие обезбедуваат многу корисни материјали и информации. 27 00:01:24,930 --> 00:01:29,730 И да се обидат и да го покрие ако не и сите, многу од темите сме покриени и дека 28 00:01:29,730 --> 00:01:32,610 може да се види на квизот. 29 00:01:32,610 --> 00:01:35,590 >> Говорејќи на квизот, дека ќе биде утре. 30 00:01:35,590 --> 00:01:37,260 Тоа е долго 75 минути. 31 00:01:37,260 --> 00:01:40,740 Многу од вас се тоа земајќи во 1 часот, а некои од вас се 32 00:01:40,740 --> 00:01:42,740 земајќи го во 5:30. 33 00:01:42,740 --> 00:01:45,300 За време ти си тоа земајќи и локација сте го земате, бидете сигурни 34 00:01:45,300 --> 00:01:49,400 вие проверете документот на почетната страница CS50.net. 35 00:01:49,400 --> 00:01:54,340 >> Се сеќавам дека можете да добиете еден 8 1/2 од 11 лист да се земе со вас. 36 00:01:54,340 --> 00:01:57,310 Честопати, луѓето не ја користат оваа лист на сите за време на квизот. 37 00:01:57,310 --> 00:01:59,740 Но, навистина, тоа е неверојатно корисни студија алатка. 38 00:01:59,740 --> 00:02:04,370 Па стави заедно дека листот е она што Поминав веројатно три или четири часа 39 00:02:04,370 --> 00:02:07,110 правите кога учев за CS50, и тоа беше лесно најкорисен 40 00:02:07,110 --> 00:02:08,740 начин би можел да учат за квиз. 41 00:02:08,740 --> 00:02:10,949 Па дури и ако имате некои други луѓе студија водичи да се погледне и 42 00:02:10,949 --> 00:02:14,740 користат како референци, Силно препорачувам правење на своја сопствена студија водич, ставајќи 43 00:02:14,740 --> 00:02:15,490 тој звук заедно. 44 00:02:15,490 --> 00:02:17,335 Што навистина ви помага да научат сите на материјалот. 45 00:02:17,335 --> 00:02:20,270 46 00:02:20,270 --> 00:02:24,810 >> Последно, но не и најмалку важно во овој дел, по завршувањето на квизот утре има една 47 00:02:24,810 --> 00:02:25,940 повеќе предавање - 48 00:02:25,940 --> 00:02:26,960 следниот понеделник. 49 00:02:26,960 --> 00:02:30,430 Има уште еден дел, не следната Вторник пред Денот на благодарноста, но 50 00:02:30,430 --> 00:02:31,630 Вторник после тоа. 51 00:02:31,630 --> 00:02:36,600 Ние ќе се состане заедно за конечна збогум партија и, исто така, прави некои кул 52 00:02:36,600 --> 00:02:41,530 работи да ви момци возбуден околу понатамошни студии по компјутерски науки. 53 00:02:41,530 --> 00:02:45,040 >> Има уште еден проект, уште една фер, уште една Hackathon. 54 00:02:45,040 --> 00:02:47,900 Ние сме близу крајот на CS50, што е возбудливо - 55 00:02:47,900 --> 00:02:50,950 но, исто така, ако сте како мене, малку тажен. 56 00:02:50,950 --> 00:02:53,950 Пред да одат напред, не секој имате било какви прашања за тоа што 57 00:02:53,950 --> 00:02:55,200 сме покриени досега? 58 00:02:55,200 --> 00:03:02,760 59 00:03:02,760 --> 00:03:08,730 >> Добро, добро, ајде да одиме над некои прашања кои имате за квизот и теми 60 00:03:08,730 --> 00:03:09,960 ние може да ги покрие. 61 00:03:09,960 --> 00:03:11,540 Значи ова е листата што ја ставив заедно. 62 00:03:11,540 --> 00:03:15,500 Тоа е во никој случај не исцрпна, но се надевам дека ќе го освежиш сеќавањето ако 63 00:03:15,500 --> 00:03:20,310 има некои прашања во врска со било кој од овие теми, или ако имате прашања во врска со 64 00:03:20,310 --> 00:03:23,260 пракса проблеми од квизови во изминатите години. 65 00:03:23,260 --> 00:03:27,470 >> Имав неколку прашања, кои беа испратена до мене, но јас сакам да се одржи надвор 66 00:03:27,470 --> 00:03:29,490 на оние за една секунда. 67 00:03:29,490 --> 00:03:34,570 Дали некој има било какви прашања, проблемите со кои тие не разбирам, 68 00:03:34,570 --> 00:03:38,100 одговорите што не разбирам да се ни почнати? 69 00:03:38,100 --> 00:03:39,520 AVI. 70 00:03:39,520 --> 00:03:41,585 >> ПУБЛИКАТА: Може ли само одиме во текот ДОМ и Ајакс навистина брзо? 71 00:03:41,585 --> 00:03:46,540 Како, што треба да знаеме или треба да се разбере за нив? 72 00:03:46,540 --> 00:03:49,750 >> ЈАСОН Hirschhorn: Одам да одговори генерално ова прашање на, она што можам 73 00:03:49,750 --> 00:03:52,100 треба да знаете за дадена тема X? 74 00:03:52,100 --> 00:03:55,280 Бидејќи имам чувство и многумина од вас се случува да ме прашуваат тоа, или се 75 00:03:55,280 --> 00:03:56,570 љубопитни за тоа. 76 00:03:56,570 --> 00:04:02,920 Па до тој степен што на тема опфатени во предавање, или секција, или на 77 00:04:02,920 --> 00:04:06,460 study.cs50.net, проблем во собата, можете треба да биде запознаен со тоа. 78 00:04:06,460 --> 00:04:10,580 >> Значи, вие не треба да се знае секој тип на таг што е на располагање во HTML или 79 00:04:10,580 --> 00:04:15,950 секој тип на атрибут или имот може да се даде нешто во CSS. 80 00:04:15,950 --> 00:04:20,204 Но, ако го видам во предавање пример, ако го видов во проблем 81 00:04:20,204 --> 00:04:23,290 сет, веројатно ќе треба да биде запознаен со него, особено нешта што видов 82 00:04:23,290 --> 00:04:24,260 во предавањето. 83 00:04:24,260 --> 00:04:28,510 Па ние се дискутира на документот Object Model малку во 84 00:04:28,510 --> 00:04:30,530 дел, повеќе, па во предавањето. 85 00:04:30,530 --> 00:04:32,990 Треба да биде запознаен со тоа голем дел од неа. 86 00:04:32,990 --> 00:04:34,750 >> И треба да бидат запознаени со Ајакс во иста мера. 87 00:04:34,750 --> 00:04:38,105 Ние никогаш не го виде неверојатно напредни или Слободна примери на Ајакс, па 88 00:04:38,105 --> 00:04:40,920 вие нема да бидете прашани направи нешто неверојатно комплициран. 89 00:04:40,920 --> 00:04:45,180 Но, може да биде побарано, како можам да направи Ајакс повик со користење на веб? 90 00:04:45,180 --> 00:04:47,350 Што е нешто што сум го видел голем број пати досега, и во 91 00:04:47,350 --> 00:04:51,370 разгледување седница и во предавање и тоа е само две-носталгичната линии на код. 92 00:04:51,370 --> 00:04:53,190 >> Па тоа е нешто што треба да биде запознаен со. 93 00:04:53,190 --> 00:04:55,550 Но, повторно, за сите овие теми, ако сте го виделе 94 00:04:55,550 --> 00:04:59,220 порано, тоа е фер игра. 95 00:04:59,220 --> 00:05:01,540 И ние би можеле да ве прашам - очигледно, ние сме ќе побара од вас работи што 96 00:05:01,540 --> 00:05:02,340 не сум ја видел досега. 97 00:05:02,340 --> 00:05:04,240 Кодирање нешто што не треба видел. 98 00:05:04,240 --> 00:05:06,570 Што не е да се каже дека не треба видел алатки за решавање на 99 00:05:06,570 --> 00:05:08,120 тој проблем пред. 100 00:05:08,120 --> 00:05:09,200 Сте виделе овие алатки. 101 00:05:09,200 --> 00:05:11,160 >> На пример, на одбивање 1, ако што треба да кодот strlen. 102 00:05:11,160 --> 00:05:12,790 Не сме кодирани strlen порано. 103 00:05:12,790 --> 00:05:14,980 Но знаете како да се користи за телефонска линија, знаете како да се користи ако услови. 104 00:05:14,980 --> 00:05:18,570 Знаете како да се напише променливи во C. Тоа се случува да биде една иста работа тука. 105 00:05:18,570 --> 00:05:22,350 Вие нема да биде побарано да се направи нешто што не сум ја видел пред тоа, но 106 00:05:22,350 --> 00:05:25,150 може да биде побарано да, како, стави нешто заедно во еден роман начин, или 107 00:05:25,150 --> 00:05:27,650 реши различен тип на проблем. 108 00:05:27,650 --> 00:05:30,830 >> За жал, тоа не беше специфична за вашиот прашање, но не можам да одговорам за 109 00:05:30,830 --> 00:05:34,390 секој тема што го прават или не треба да знаеш. 110 00:05:34,390 --> 00:05:36,830 Но исто така, жалам, последното нешто за тоа. 111 00:05:36,830 --> 00:05:42,900 Имаме поминато значително повеќе време на врската листи отколку што имаме на Ајакс. 112 00:05:42,900 --> 00:05:46,160 Вие не користат Ајакс во проблем во собата. 113 00:05:46,160 --> 00:05:48,510 Една од централните карактеристики на кои Проблемот сет кој беше врската листи. 114 00:05:48,510 --> 00:05:50,370 И си поминале многу време во предавање и делот негово користење. 115 00:05:50,370 --> 00:05:57,080 >> Значи, шансите се водат списокот ќе излезе повеќе често на квизот од Ајакс волја. 116 00:05:57,080 --> 00:06:00,390 Или прашањата имаат врска со врската листа ќе биде достоен за повеќе поени. 117 00:06:00,390 --> 00:06:03,520 Па сигурно може да се фокусира и тесни во, на нештата кои се повеќе 118 00:06:03,520 --> 00:06:06,720 најверојатно ќе излезе, бидејќи имаме поминал повеќе време за нив. 119 00:06:06,720 --> 00:06:08,700 >> Добро било какви други прашања? 120 00:06:08,700 --> 00:06:09,890 Да. 121 00:06:09,890 --> 00:06:13,660 >> Публика: Може ли да одиме во текот на користењето на анонимни функции во вклучите Javascript-? 122 00:06:13,660 --> 00:06:17,140 Јас сум се малку збунети околу тоа. 123 00:06:17,140 --> 00:06:20,180 >> ЈАСОН Hirschhorn: Значи во вклучите Javascript - 124 00:06:20,180 --> 00:06:24,400 Се обидувам да мислам како јас би можела да напише ова - 125 00:06:24,400 --> 00:06:27,590 па ајде всушност се отвори овој код. 126 00:06:27,590 --> 00:06:31,830 127 00:06:31,830 --> 00:06:36,030 Значи ова е код кој што минатата недела. 128 00:06:36,030 --> 00:06:41,400 И сте виделе ова пред, ако беа тука во делот минатата недела. 129 00:06:41,400 --> 00:06:43,180 Или сте виделе нешто слично на ова порано. 130 00:06:43,180 --> 00:06:44,800 >> Но, можете да се погледне на овој првата линија. 131 00:06:44,800 --> 00:06:46,950 Ова е како да се започне - 132 00:06:46,950 --> 00:06:48,010 сите се гледа тоа порано. 133 00:06:48,010 --> 00:06:51,930 Ако сакате да се стави некои JavaScript код, ви го стави во ова, под претпоставка 134 00:06:51,930 --> 00:06:53,520 сте Користејќи Jquery. 135 00:06:53,520 --> 00:06:56,940 Ова е велејќи дека, не прават ништо додека натоварени на документот. 136 00:06:56,940 --> 00:06:59,940 >> А потоа, Курт, ќе видите тука ние сме прави нешто како ова - 137 00:06:59,940 --> 00:07:02,560 функција отворен paren, затворен paren. 138 00:07:02,560 --> 00:07:05,250 Значи ние не сме давање на оваа функционираат име. 139 00:07:05,250 --> 00:07:09,160 Ние нема да ги дефинираат оваа функција би требало да се кандидира и потоа 140 00:07:09,160 --> 00:07:10,830 го нарекуваат еден куп пати. 141 00:07:10,830 --> 00:07:15,140 Ние сме само велејќи овој документ веќе се во функција. 142 00:07:15,140 --> 00:07:16,690 Неколку работи кои треба да се направи. 143 00:07:16,690 --> 00:07:20,670 >> И ние не сакаме да го поминат времето давајќи му име или да го зачувате за 144 00:07:20,670 --> 00:07:21,650 за вечни времиња. 145 00:07:21,650 --> 00:07:24,150 Ние само сакаме да се кандидира на некои работи. 146 00:07:24,150 --> 00:07:27,500 Па анонимен функција вид на служи таа цел. 147 00:07:27,500 --> 00:07:30,280 Кога вие нема да се користи нешто одново и одново, така што не треба 148 00:07:30,280 --> 00:07:32,420 да го даде името - вие само сакате да го користите еднаш - 149 00:07:32,420 --> 00:07:36,720 можете само би рекол функција, за На пример, во овој случај, а ти си само 150 00:07:36,720 --> 00:07:38,280 дефинирање нешто што може да даде име. 151 00:07:38,280 --> 00:07:40,920 >> Како, ние може да се повлече на оваа функција надвор и го даде името, а потоа се јавите дека 152 00:07:40,920 --> 00:07:41,760 функционира тука. 153 00:07:41,760 --> 00:07:44,270 Но, ние не треба да се затоа што ние не сакате да губите време давајќи му име или е 154 00:07:44,270 --> 00:07:46,240 губи нешто во нашето име простор. 155 00:07:46,240 --> 00:07:47,530 И ќе видите дека многу. 156 00:07:47,530 --> 00:07:52,810 На пример, можеме да видиме дека многу во ова код, но не сте виделе ова пред кога 157 00:07:52,810 --> 00:07:54,010 кликнете нешто - 158 00:07:54,010 --> 00:07:55,980 ја извршите оваа тип на код. 159 00:07:55,980 --> 00:07:59,850 >> Ние би можеле да се дефинираат код кој сакаме да се кандидира кога ќе кликнете, во овој случај, 160 00:07:59,850 --> 00:08:03,450 овој ID, како посебна функција а потоа извршете таа функција. 161 00:08:03,450 --> 00:08:07,940 Но, во овој случај, ние сме само скокнеш тој чекор и да се движи тоа во овде и 162 00:08:07,940 --> 00:08:10,340 само за да се дефинира што е дека сакаме да се случи и 163 00:08:10,340 --> 00:08:12,450 не го даваат името. 164 00:08:12,450 --> 00:08:15,550 Кои се уште не може да има одговори на вашето прашање. 165 00:08:15,550 --> 00:08:15,960 >> ПУБЛИКАТА: Не, тоа го прави. 166 00:08:15,960 --> 00:08:18,290 Мислам, претпоставувам дека само навистина не се зошто тоа ќе биде 167 00:08:18,290 --> 00:08:20,800 функционира на сите, иако. 168 00:08:20,800 --> 00:08:21,590 Затоа што тоа не е навистина се нарекува. 169 00:08:21,590 --> 00:08:23,170 Тоа навистина не е да има име. 170 00:08:23,170 --> 00:08:25,510 >> ЈАСОН Hirschhorn: Тоа е функција во смисла дека тоа е серија на чекори, 171 00:08:25,510 --> 00:08:28,460 како ќе се стави во функција. 172 00:08:28,460 --> 00:08:29,970 И тогаш тоа е зошто ние го нарекуваме тоа анонимен функција. 173 00:08:29,970 --> 00:08:30,815 Ние нема да го даде името. 174 00:08:30,815 --> 00:08:33,159 Ние нема да загубиме се обидува да го именува, но ние би можеле. 175 00:08:33,159 --> 00:08:34,890 >> Анонимни функции, можете секогаш може да се даде име. 176 00:08:34,890 --> 00:08:37,620 Така на пример, овој код токму тука, ние би можеле да се стави овој код во внатрешноста на 177 00:08:37,620 --> 00:08:39,929 функција и потоа побарајте оваа функција овде. 178 00:08:39,929 --> 00:08:41,600 Наместо тоа, ние се каже, ние нема да се мачам со тоа. 179 00:08:41,600 --> 00:08:44,390 Ние сме само ќе да се напише сето тоа овде. 180 00:08:44,390 --> 00:08:49,840 >> Тоа е како понекогаш кога сте пишување четири јамка во C - вие момци 181 00:08:49,840 --> 00:08:51,630 го видел ова пред - можеби сте процесирањето преку forloop 182 00:08:51,630 --> 00:08:53,090 во i изнесува 0. 183 00:08:53,090 --> 00:08:54,830 I е помала од strlen. 184 00:08:54,830 --> 00:08:59,520 Или си минува низ некои низа, можете да заштедите низа 185 00:08:59,520 --> 00:09:01,580 индексот i во некои променлива. 186 00:09:01,580 --> 00:09:02,830 И ќе ја користат таа променлива. 187 00:09:02,830 --> 00:09:06,550 Значи, вие не треба да се допишат низа заградата јас одново и одново и одново. 188 00:09:06,550 --> 00:09:08,160 >> И тоа е вид на како атарот променлива. 189 00:09:08,160 --> 00:09:10,790 Тоа не е служење многу друга цел, освен да се направи вашиот код е малку почист 190 00:09:10,790 --> 00:09:12,120 и полесно за читање. 191 00:09:12,120 --> 00:09:13,290 Слична функција овде. 192 00:09:13,290 --> 00:09:15,665 Само го прави малку полесно, но функционално нема разлика. 193 00:09:15,665 --> 00:09:18,620 194 00:09:18,620 --> 00:09:19,330 Дали тоа одговори на вашето прашање? 195 00:09:19,330 --> 00:09:19,970 >> Публика: Да. 196 00:09:19,970 --> 00:09:20,720 >> ЈАСОН Hirschhorn: Добро .. 197 00:09:20,720 --> 00:09:21,880 Марио? 198 00:09:21,880 --> 00:09:25,380 >> Публика: Вчера тие често се стави функција заграда настан. 199 00:09:25,380 --> 00:09:26,420 Дали тоа значи нешто? 200 00:09:26,420 --> 00:09:30,500 Или тоа е за нешта како дека тие не би го направил 201 00:09:30,500 --> 00:09:35,100 document.ready функција настан. 202 00:09:35,100 --> 00:09:37,130 >> ЈАСОН Hirschhorn: Видовме ова, и повторно, овие се мали работи што 203 00:09:37,130 --> 00:09:39,590 веројатно не сакам да поминуваат премногу време на. 204 00:09:39,590 --> 00:09:43,200 Затоа што понекогаш не сакам луѓе се исполнет надвор дека тие не се 205 00:09:43,200 --> 00:09:44,220 слушнале за овие работи многу. 206 00:09:44,220 --> 00:09:46,200 Но ние разговаравме малку за настан ракувачи. 207 00:09:46,200 --> 00:09:50,360 Па нешто се случува, а потоа оваа функција се извршува. 208 00:09:50,360 --> 00:09:53,210 А потоа ние, исто така, сакаат да знаат некои детали за тоа што 209 00:09:53,210 --> 00:09:54,450 се случи во овој настан. 210 00:09:54,450 --> 00:09:55,730 >> Па се сетам на проблемот постави 4. 211 00:09:55,730 --> 00:09:58,390 Тоа е веројатно најлесниот начин да се се разбере дека во пауза. 212 00:09:58,390 --> 00:09:59,740 Имаше некои код - 213 00:09:59,740 --> 00:10:01,980 како настан ќе се случи, но настан може да значи многу работи. 214 00:10:01,980 --> 00:10:06,240 Ако може да значи глушецот е кликнато, тоа би можело да значи хит стрелката, ет 215 00:10:06,240 --> 00:10:07,190 така натаму, и така натаму. 216 00:10:07,190 --> 00:10:09,800 >> Но, сето тоа се заштедат на овој генерички нешто што се нарекува настани. 217 00:10:09,800 --> 00:10:12,340 И тогаш можеме да кажеме, е овој настан ова нешто? 218 00:10:12,340 --> 00:10:13,640 Или ова е случај, оваа работа? 219 00:10:13,640 --> 00:10:15,500 Или, она што вид на се случило со тој настан? 220 00:10:15,500 --> 00:10:18,660 Па затоа ќе се создаде дека променливата таму да се спаси што повеќе информации 221 00:10:18,660 --> 00:10:21,420 за тоа што точно се случувало ви се случува да сакаат да 222 00:10:21,420 --> 00:10:24,840 користат во функција. 223 00:10:24,840 --> 00:10:28,200 Но, повторно, тоа е веројатно една од помалку важни работи кои треба да биде супер 224 00:10:28,200 --> 00:10:29,450 запознаени со. 225 00:10:29,450 --> 00:10:31,470 226 00:10:31,470 --> 00:10:36,110 >> Добро, што други прашања има луѓе имаше, или пречки, кои го 227 00:10:36,110 --> 00:10:37,360 се среќаваат при прегледот? 228 00:10:37,360 --> 00:10:41,260 229 00:10:41,260 --> 00:10:42,510 Ние ќе се врати на таа листа. 230 00:10:42,510 --> 00:10:52,550 231 00:10:52,550 --> 00:10:56,080 Она што за време на пракса тестови, ако луѓе се земени оние кои се веќе? 232 00:10:56,080 --> 00:10:59,110 Кои беа некои проблеми кои tripped вие момци се? 233 00:10:59,110 --> 00:11:08,970 234 00:11:08,970 --> 00:11:12,720 Знам за фактот дека минатата година квиз беше навистина тешко. 235 00:11:12,720 --> 00:11:15,670 >> Публика: Можете ли да објасните што Sql вбризгување Атак е? 236 00:11:15,670 --> 00:11:18,970 >> ЈАСОН Hirschhorn: Добро, одлично. 237 00:11:18,970 --> 00:11:20,440 Па ние разговаравме за тоа малку. 238 00:11:20,440 --> 00:11:22,050 Има предавање на безбедноста. 239 00:11:22,050 --> 00:11:25,670 И повторно, како што споменав порано, ова е настрана. 240 00:11:25,670 --> 00:11:30,010 Но ќе биде фрустриран на квизот кога ќе прочитате некои мали два точка 241 00:11:30,010 --> 00:11:33,040 прашање, а ти си како, кога се што некогаш сум го научат тоа? 242 00:11:33,040 --> 00:11:35,560 >> Сите оние нешта во овие предавања дека не мислите дека е потребно да се 243 00:11:35,560 --> 00:11:38,290 знаат, или можете да притајуваат, бидејќи тие не треба да се прави со 244 00:11:38,290 --> 00:11:41,860 проблем во собата, тие најверојатно ќе излезе повторно на квизот. 245 00:11:41,860 --> 00:11:45,030 Значи, кул, забава работи што можете само мислев Давид кажува за вас да се 246 00:11:45,030 --> 00:11:49,070 уживаат, тој беше ти го кажувам за да уживаат и да направи да биде само супер 247 00:11:49,070 --> 00:11:50,550 возбуден околу учење сè таму е да се научи 248 00:11:50,550 --> 00:11:51,670 за компјутерски науки. 249 00:11:51,670 --> 00:11:53,680 Тие работи, исто така, излезе на квизови. 250 00:11:53,680 --> 00:11:56,440 Значи, дури и овие мали нешта, кои не директно се однесуваат на вашиот проблем 251 00:11:56,440 --> 00:11:59,630 постави, како вие момци се запознаени со од Квиз 0, веројатно ќе излезе. 252 00:11:59,630 --> 00:12:01,530 И ова е добар пример на нешто. 253 00:12:01,530 --> 00:12:10,140 >> Па SQL инјекција напади е кога ќе добие некои информации од корисникот и 254 00:12:10,140 --> 00:12:15,090 што сакате да го вметнете во табела користење на SQL вметнете изјава, но може 255 00:12:15,090 --> 00:12:17,680 не дезинфенкцирам на внесување пред време. 256 00:12:17,680 --> 00:12:21,560 Значи, очигледно ние сме виделе SQL извештаи. 257 00:12:21,560 --> 00:12:22,810 Јас само ќе се отвори - 258 00:12:22,810 --> 00:12:25,590 259 00:12:25,590 --> 00:12:26,840 ајде да одиме - 260 00:12:26,840 --> 00:12:31,290 261 00:12:31,290 --> 00:12:31,960 ќе одиме на преглед - 262 00:12:31,960 --> 00:12:35,180 Мислам, кој ја покриваше? 263 00:12:35,180 --> 00:12:36,350 Мислам Samala направив. 264 00:12:36,350 --> 00:12:39,292 Па ние може да се добие - 265 00:12:39,292 --> 00:12:41,270 >> Публика: Каде ќе се најдат на овој? 266 00:12:41,270 --> 00:12:44,990 >> ЈАСОН Hirschhorn: Значи, ако одите на CS50.net, квизови, а потоа можете да 267 00:12:44,990 --> 00:12:47,170 дојдете во текот и да добијат слајдови од преглед сесија. 268 00:12:47,170 --> 00:12:49,860 Но, можете да видите, ова е добар пример на SQL инјекција напад. 269 00:12:49,860 --> 00:12:53,690 Ние се преземат некои информации од корисникот и тие ни даваат низа, а потоа ние 270 00:12:53,690 --> 00:12:55,780 сакате да го вметнете стрингот во базата на податоци. 271 00:12:55,780 --> 00:12:59,780 Општо земено, ние ќе се обидеме да дезинфенкцирам дека влез, што значи има некои 272 00:12:59,780 --> 00:13:01,050 ликови кои се опасни. 273 00:13:01,050 --> 00:13:04,000 >> На пример, во SQL жици, овие цитати - 274 00:13:04,000 --> 00:13:05,000 единечен наводник или двојни наводници - 275 00:13:05,000 --> 00:13:05,620 значи нешто. 276 00:13:05,620 --> 00:13:08,380 Тие значат крај на оваа низа тука. 277 00:13:08,380 --> 00:13:13,090 И така, ако корисникот ви дава еден или двојни наводници, тие би можеле да бидат 278 00:13:13,090 --> 00:13:18,970 се обидуваат да патување до вашиот SQL пребарување и вметнете некои лоши работи во неа. 279 00:13:18,970 --> 00:13:23,130 И ако тие го прават тоа, тие би можеле да добијат контрола на вашата база на податоци или не некои 280 00:13:23,130 --> 00:13:24,760 работи кои не сакате од нив да направат. 281 00:13:24,760 --> 00:13:28,300 >> Па тоа е причината зошто секогаш кога земаме SQL прашања, ние дезинфенкцирам влез пред 282 00:13:28,300 --> 00:13:31,090 тоа ставање во базата на податоци, која значи дека ние се избега оние карактери. 283 00:13:31,090 --> 00:13:32,590 Ќе зборуваме за тоа во една секунда. 284 00:13:32,590 --> 00:13:35,820 Но скратам приказната, инекција SQL Нападот е ако не го сторат тоа - 285 00:13:35,820 --> 00:13:39,760 ако не се грижи за влез тие ви даде пред ставање на вашиот 286 00:13:39,760 --> 00:13:46,830 база на податоци, тие може да се, како што гледате надолу тука, се кандидира за пребарување, кои, всушност - 287 00:13:46,830 --> 00:13:52,470 тие се стави во нивната код овде и овој изберете линија овде ќе изберете 288 00:13:52,470 --> 00:13:56,360 сè, од табелата без оглед на она што лозинка е дадена. 289 00:13:56,360 --> 00:13:58,960 Затоа што имаат или 1 еднаква на 1. 290 00:13:58,960 --> 00:14:02,750 >> Така, тоа е во основа, скратам приказната, начин да го преземе база на податоци. 291 00:14:02,750 --> 00:14:07,570 Прашањето, тогаш, за вас момци, е каде во стр сетови 7 ти дезинфенкцирам сите 292 00:14:07,570 --> 00:14:10,010 на влезовите на вашиот SQL queries? 293 00:14:10,010 --> 00:14:11,230 Каде тој чекор да се случи? 294 00:14:11,230 --> 00:14:14,150 Каде да се спречи SQL инјекција напади од се случува во p постави 7? 295 00:14:14,150 --> 00:14:20,100 296 00:14:20,100 --> 00:14:20,490 Да. 297 00:14:20,490 --> 00:14:21,870 >> Публика: криптата? 298 00:14:21,870 --> 00:14:23,120 >> ЈАСОН Hirschhorn: Значи тоа не беше гробница. 299 00:14:23,120 --> 00:14:52,360 300 00:14:52,360 --> 00:14:55,380 Ние не ве натера да го стори тоа за ова Посебен проблем во собата, но тоа се случува 301 00:14:55,380 --> 00:14:58,190 во барање функција. 302 00:14:58,190 --> 00:15:00,930 Ние всушност го напишал за вас, и ние се грижеше за 303 00:15:00,930 --> 00:15:03,040 санација влезови за вас. 304 00:15:03,040 --> 00:15:07,790 Но, во изминатите години, студентите имаат да напишеш влезови на сопствените. 305 00:15:07,790 --> 00:15:10,020 Во P сет 7, многу од вас - 306 00:15:10,020 --> 00:15:11,270 дозволете ми да се отвори една друга датотека. 307 00:15:11,270 --> 00:15:18,530 308 00:15:18,530 --> 00:15:22,590 >> Така што ќе забележите тука многу луѓе, во проблем постави 7, не се јават 309 00:15:22,590 --> 00:15:25,240 оваа функција на жици. 310 00:15:25,240 --> 00:15:27,880 Оваа функција, htmlspecialchars, повторно - 311 00:15:27,880 --> 00:15:31,410 овој стринг може да има некои работи дека во HTML значи нешто друго. 312 00:15:31,410 --> 00:15:36,160 Како голема заграда, на плоштадот, или агол заградата значи нешто во HTML. 313 00:15:36,160 --> 00:15:38,980 >> И така, ако се печати тоа надвор на екранот или ако само се земе дека и 314 00:15:38,980 --> 00:15:42,260 печати дека до вашите HTML, кои би можеле да направи нешто што не го очекував. 315 00:15:42,260 --> 00:15:45,180 Па htmlspecialchars оди над сите оние ликови кои имаат посебни 316 00:15:45,180 --> 00:15:47,030 состанок и да им бега. 317 00:15:47,030 --> 00:15:51,450 Така што добива печатено надвор како текст сакате да видите, наместо 318 00:15:51,450 --> 00:15:53,280 нарезници до вашата HTML. 319 00:15:53,280 --> 00:15:55,040 Што се нарекува таа функција во хедерот. 320 00:15:55,040 --> 00:15:57,390 И многу луѓе заборавивме да јавете таа функција во 321 00:15:57,390 --> 00:15:58,700 кодот сте биле пишување. 322 00:15:58,700 --> 00:16:03,970 >> Така, на пример, ако акциите на името имаше агол заграда во него и сте го заборавиле 323 00:16:03,970 --> 00:16:06,675 да се јавите на оваа функција, што агол заградата би можеле да имаат фрлено од она што 324 00:16:06,675 --> 00:16:08,250 Ваше HTML изгледала. 325 00:16:08,250 --> 00:16:11,810 Но повикувајќи оваа функција ќе избега што толку тоа всушност отпечатоци од како 326 00:16:11,810 --> 00:16:15,870 агол заграда и не фрли исклучите вашиот HTML код. 327 00:16:15,870 --> 00:16:18,760 >> Од истата причина што видовме, понекогаш, засеци пред двојни наводници во 328 00:16:18,760 --> 00:16:22,310 printf линија, бидејќи ние не сакаме на двојни наводници долу на стрингот. 329 00:16:22,310 --> 00:16:24,050 Ние сакаме да ги печати до екранот. 330 00:16:24,050 --> 00:16:26,920 Значи сето ова е истата идеја. 331 00:16:26,920 --> 00:16:28,260 Дали тоа одговори на вашето прашање? 332 00:16:28,260 --> 00:16:31,529 333 00:16:31,529 --> 00:16:33,870 >> Публика: Вид на. 334 00:16:33,870 --> 00:16:35,300 >> ЈАСОН Hirschhorn: Дали имаат follow-up? 335 00:16:35,300 --> 00:16:43,252 >> Публика: Претпоставувам дека SQL инјекција напад има врска со тоа? 336 00:16:43,252 --> 00:16:45,720 Јас не разбирам како двете се поврзани. 337 00:16:45,720 --> 00:16:47,610 Зошто и вие ќе го стори specialchars? 338 00:16:47,610 --> 00:16:51,200 >> ЈАСОН Hirschhorn: Добро, така што на SQL инјекција напад е кога ќе се инјектираат 339 00:16:51,200 --> 00:16:59,180 некои злобници жици во нечиј програма, и тие само да го земе и да ја стартувате 340 00:16:59,180 --> 00:17:01,230 SQL пребарување со низа ќе им ги дал. 341 00:17:01,230 --> 00:17:04,220 Како што можете да видите овде долу, дека може да биде проблематично. 342 00:17:04,220 --> 00:17:07,480 Па начинот на кој се спречи против кои е ќе ги преземе своите стринг кој тие даваат 343 00:17:07,480 --> 00:17:09,220 вас - па овој стринг, токму тука - 344 00:17:09,220 --> 00:17:11,240 и ќе ја дезинфенкцирам. 345 00:17:11,240 --> 00:17:14,305 Да избега од сите нешта кои се потенцијално проблематични. 346 00:17:14,305 --> 00:17:18,626 Значи, вие не ги интерпретира како нешто тоа значи нешто. 347 00:17:18,626 --> 00:17:23,390 >> И пример за тоа со HTML-от е на оваа функција. 348 00:17:23,390 --> 00:17:26,060 Така, тоа е истата идеја тука. 349 00:17:26,060 --> 00:17:27,579 А јас бев само ви покажува други примери за кога сте 350 00:17:27,579 --> 00:17:29,030 види оваа идеја пред тоа. 351 00:17:29,030 --> 00:17:33,913 Избега корисник влез пред печатење ја на екранот или ставање 352 00:17:33,913 --> 00:17:36,782 во внатрешноста на SQL изјава. 353 00:17:36,782 --> 00:17:40,790 >> Публика: Значи во овој случај, корисникот е Месинг со програмер. 354 00:17:40,790 --> 00:17:41,240 >> ЈАСОН Hirschhorn: Да. 355 00:17:41,240 --> 00:17:44,800 Со сите овие безбедносни напади, тоа е секогаш генерално на корисник, или 356 00:17:44,800 --> 00:17:47,470 некој се обидува да се плеткаме со вас, на програмерот. 357 00:17:47,470 --> 00:17:51,038 И овие се начини може да се спречи против нив. 358 00:17:51,038 --> 00:17:54,280 >> ПУБЛИКАТА: Значи имам едно прашање за хаш функции. 359 00:17:54,280 --> 00:17:59,340 Во одбивање 1 од 2011, постојат два прашања во врска со еднострани хашови. 360 00:17:59,340 --> 00:18:02,540 И јас бев само се прашувам што тоа точно значи. 361 00:18:02,540 --> 00:18:03,660 >> ЈАСОН Hirschhorn: Добро, кои квиз? 362 00:18:03,660 --> 00:18:03,770 2011 година? 363 00:18:03,770 --> 00:18:04,705 >> Публика: Да. 364 00:18:04,705 --> 00:18:06,720 >> Публика: Квиз 1? 365 00:18:06,720 --> 00:18:08,620 >> ПУБЛИКАТА: [нечујни]. 366 00:18:08,620 --> 00:18:09,940 Тоа е како hashing лозинка. 367 00:18:09,940 --> 00:18:12,220 Тоа не е ставање работи - 368 00:18:12,220 --> 00:18:13,440 >> ЈАСОН Hirschhorn: Што страница беше тоа? 369 00:18:13,440 --> 00:18:15,720 >> Публика: Мислам дека тоа беше 9 или 10, или и двете. 370 00:18:15,720 --> 00:18:16,720 >> ЈАСОН Hirschhorn: Сите во право, оди напред, Курт. 371 00:18:16,720 --> 00:18:17,780 Можете да одговорите, додека ние се погледне. 372 00:18:17,780 --> 00:18:19,540 >> ПУБЛИКАТА: Мислам дека зборува за hashing лозинка. 373 00:18:19,540 --> 00:18:24,430 Како, кога некој влегува лозинка, ќе ја претвори во шифрирана работа. 374 00:18:24,430 --> 00:18:27,395 Тоа е лозинка хаш, што е различен од хаш функција која 375 00:18:27,395 --> 00:18:30,900 става нешто во хеш табелата. 376 00:18:30,900 --> 00:18:31,610 >> ЈАСОН Hirschhorn: Ајде да видиме. 377 00:18:31,610 --> 00:18:33,930 Дозволете ми да се повлече до она што тие даде како одговор. 378 00:18:33,930 --> 00:18:35,440 А потоа ние ќе одиме низ него. 379 00:18:35,440 --> 00:18:42,430 380 00:18:42,430 --> 00:18:45,400 >> Па Курт даде одличен пример на еден начин хаш. 381 00:18:45,400 --> 00:18:48,800 Кога видовме ова пред, ние земе лозинката и да се сврти - 382 00:18:48,800 --> 00:18:53,040 се сеќавам, во стр сет 7, некој може да имаат лозинка која е само лозинката, 383 00:18:53,040 --> 00:18:55,300 но тогаш тоа добива шифрирана во некои навистина долго нешто. 384 00:18:55,300 --> 00:18:59,830 Еден начин хаш значи дека е многу лесно да одат од еден начин да се други, но 385 00:18:59,830 --> 00:19:02,800 тоа е многу тешко да одат од на друг начин назад. 386 00:19:02,800 --> 00:19:05,230 >> И да знаете, кога сте биле проверка лозинки на луѓето во проблемот 387 00:19:05,230 --> 00:19:08,820 постави 7, ќе ги преземе своите - 388 00:19:08,820 --> 00:19:11,953 Така, на пример, велат тие сакаа да сменат лозинка, можете да ги прашате 389 00:19:11,953 --> 00:19:13,130 за нивната старата лозинка. 390 00:19:13,130 --> 00:19:13,910 Го зеде нивниот старата лозинка. 391 00:19:13,910 --> 00:19:15,150 Го дешифрираат. 392 00:19:15,150 --> 00:19:19,240 И потоа ги споредува двете encryptions наместо unencrypting оригиналот 393 00:19:19,240 --> 00:19:20,780 еден, бидејќи тоа е навистина тешко да одиме на тој начин. 394 00:19:20,780 --> 00:19:27,070 395 00:19:27,070 --> 00:19:28,035 Да. 396 00:19:28,035 --> 00:19:31,430 >> Публика: Како во длабочина прави нашата разбирање на телнет треба да биде? 397 00:19:31,430 --> 00:19:34,870 398 00:19:34,870 --> 00:19:41,360 >> ЈАСОН Hirschhorn: Ако беше споменато накратко во предавање, само краток 399 00:19:41,360 --> 00:19:43,260 разбирање. 400 00:19:43,260 --> 00:19:45,585 Повторно, назад на одговор на прашањето на Ави во - 401 00:19:45,585 --> 00:19:48,260 402 00:19:48,260 --> 00:19:50,430 колку повеќе работи излезе, толку е поголема веројатноста тоа е мора да биде супер 403 00:19:50,430 --> 00:19:51,530 запознаени со нив. 404 00:19:51,530 --> 00:19:54,730 Ако тие само доаѓаат во предавање, тоа е само едно место. 405 00:19:54,730 --> 00:19:57,180 Но, ако тие доаѓаат во предавањето, дел, и проблем во собата, а потоа ќе 406 00:19:57,180 --> 00:19:58,710 најверојатно треба да биде супер запознаени со нив. 407 00:19:58,710 --> 00:20:01,320 408 00:20:01,320 --> 00:20:03,960 >> Па морав прашање од порано за тоа - 409 00:20:03,960 --> 00:20:06,950 е беше падот 2010 - 410 00:20:06,950 --> 00:20:08,520 Квиз 1, ајде да се повлече до - 411 00:20:08,520 --> 00:20:17,390 412 00:20:17,390 --> 00:20:21,790 ова прашање на Купишта и редици, кои ние поминавме фер малку време 413 00:20:21,790 --> 00:20:23,720 зборуваме за во предавањето, дури и иако ние не навистина 414 00:20:23,720 --> 00:20:26,020 некогаш го погоди во секција. 415 00:20:26,020 --> 00:20:33,190 Па ова прашање е ви даваат серија на команди и побара од вас она што 416 00:20:33,190 --> 00:20:35,560 добива печатено во овој случај. 417 00:20:35,560 --> 00:20:40,180 Па ова е сосема разумно прашање што може да се побара од вас 418 00:20:40,180 --> 00:20:43,090 момци, а потоа вие момци треба да да биде во можност да одговорите. 419 00:20:43,090 --> 00:20:50,020 >> Па зошто да не се погледне во него за 30 секунди, а потоа, ако некој сака да 420 00:20:50,020 --> 00:20:52,140 предложи одговорите на мене, и тогаш ние ќе одиме низ него. 421 00:20:52,140 --> 00:21:22,590 422 00:21:22,590 --> 00:21:24,235 Добро, кој има одговор на прашањето 27? 423 00:21:24,235 --> 00:21:31,740 424 00:21:31,740 --> 00:21:33,860 Да. 425 00:21:33,860 --> 00:21:40,250 >> ПУБЛИКАТА: е на 1, 2, 3, 3? 426 00:21:40,250 --> 00:21:40,780 >> ЈАСОН Hirschhorn: Тоа е право. 427 00:21:40,780 --> 00:21:42,570 27 е 1, 2, 3, 3. 428 00:21:42,570 --> 00:21:44,510 Па ајде да погледнеме како стигнавме тоа. 429 00:21:44,510 --> 00:21:48,930 >> Прво, ние се вели, ако s е задача, она што добива печатено? 430 00:21:48,930 --> 00:21:53,360 Па q е прв во, прв надвор. 431 00:21:53,360 --> 00:21:54,680 Видовме дека пред. 432 00:21:54,680 --> 00:21:56,820 Видовме слика на луѓе чека на Епл 433 00:21:56,820 --> 00:21:58,400 Продавница за да купи некој производ. 434 00:21:58,400 --> 00:22:00,900 На првите луѓе во се првите луѓе надвор. 435 00:22:00,900 --> 00:22:02,940 Првите нешта во редица се првите нешта надвор. 436 00:22:02,940 --> 00:22:08,320 >> Значи, ако ние им помогнам нешто во ред, ќе им помогнам на 1, тогаш ние поп 1. 437 00:22:08,320 --> 00:22:09,630 Поп само значи извади. 438 00:22:09,630 --> 00:22:11,080 Во овој случај, само да нешто. 439 00:22:11,080 --> 00:22:12,910 Ние извади првиот работа, тоа е 1. 440 00:22:12,910 --> 00:22:15,200 Па ние ќе се стави работите ние печати долу овде. 441 00:22:15,200 --> 00:22:18,110 Ова веќе не е во нашата листа на чекање. 442 00:22:18,110 --> 00:22:23,500 >> Тогаш ние им помогнам на 2 и 3, и ние убивам првото нешто. 443 00:22:23,500 --> 00:22:25,030 Повторно, бидејќи тоа е задача. 444 00:22:25,030 --> 00:22:33,320 Па да добиеме 2, тогаш ние го стави на друг 3 и повик поп повторно. 445 00:22:33,320 --> 00:22:34,980 Нашите 3 е во прв план. 446 00:22:34,980 --> 00:22:40,940 >> А потоа моравме целиот куп на други работи и повик поп. 447 00:22:40,940 --> 00:22:43,740 Но, повторно, бидејќи ова е на дното, прв во, прв надвор. 448 00:22:43,740 --> 00:22:45,980 Ние извади првото нешто што беше некогаш се стави внатре 449 00:22:45,980 --> 00:22:47,100 Тоа е нашата 3. 450 00:22:47,100 --> 00:22:50,060 И, во овој случај, ние не грижете за сите оние други работи. 451 00:22:50,060 --> 00:22:51,310 Па тоа е ако ова е редот. 452 00:22:51,310 --> 00:22:58,917 453 00:22:58,917 --> 00:23:00,167 Било какви прашања во врска со редот? 454 00:23:00,167 --> 00:23:03,290 455 00:23:03,290 --> 00:23:04,040 >> Комплет е различно. 456 00:23:04,040 --> 00:23:07,782 Што е акроним имаме за разбирање на оџак? 457 00:23:07,782 --> 00:23:08,750 >> ПУБЛИКАТА: последна во прво надвор. 458 00:23:08,750 --> 00:23:10,130 >> ЈАСОН Hirschhorn: LIFO, си мислам. 459 00:23:10,130 --> 00:23:11,830 Трае во, прв надвор. 460 00:23:11,830 --> 00:23:15,630 Па видовме еден пример на магацинот на коцки во мензата. 461 00:23:15,630 --> 00:23:17,590 Без оглед на лента е на врвот добива зедов. 462 00:23:17,590 --> 00:23:19,550 А потоа, ако новата пепелниците доаѓаат во, тие се стави на врвот. 463 00:23:19,550 --> 00:23:21,070 А потоа она што е на врвот добива зедов. 464 00:23:21,070 --> 00:23:24,010 Па оние пепелниците на дното моќ остане таму за некое време. 465 00:23:24,010 --> 00:23:28,480 >> Во тој случај, повторно, ние ќе подготви ова. 466 00:23:28,480 --> 00:23:31,770 Ние им помогнам на еден, па може е прв во линија. 467 00:23:31,770 --> 00:23:32,790 И ние pop нешто надвор. 468 00:23:32,790 --> 00:23:37,280 И има само едно нешто таму, па ние се движат 1 овде долу. 469 00:23:37,280 --> 00:23:41,940 Тогаш ние го стави на 2 и 3 и ние pop нешто надвор. 470 00:23:41,940 --> 00:23:43,650 >> Но, повторно, бидејќи ова е задача - 471 00:23:43,650 --> 00:23:45,010 или ова е оџакот, попрво - 472 00:23:45,010 --> 00:23:47,480 ние се земе она што беше во минатата година. 473 00:23:47,480 --> 00:23:49,300 Што и да е во последните излегува во прв план. 474 00:23:49,300 --> 00:23:50,890 И 3 е последно. 475 00:23:50,890 --> 00:23:56,110 Па ние се стави на 3 таму долу, а потоа ќе стави на уште 3 и ние 476 00:23:56,110 --> 00:23:57,360 поп нешто повторно. 477 00:23:57,360 --> 00:23:59,990 478 00:23:59,990 --> 00:24:05,710 Конечно, ќе стави на 4, 5, 6 и 7, и тука сме поп. 479 00:24:05,710 --> 00:24:09,060 И поради тоа што е оџакот, ние се она што беше ставен во последните и пишуваат 480 00:24:09,060 --> 00:24:10,240 дека овде долу. 481 00:24:10,240 --> 00:24:14,256 Па на крајот ќе заврши со 1, 3, 3, 7. 482 00:24:14,256 --> 00:24:17,380 483 00:24:17,380 --> 00:24:21,380 Дали некој има било какви прашања во врска Купишта или редици, или овој пример? 484 00:24:21,380 --> 00:24:27,540 485 00:24:27,540 --> 00:24:29,030 >> OK. 486 00:24:29,030 --> 00:24:30,440 Да се ​​вратиме на листата на теми. 487 00:24:30,440 --> 00:24:32,510 Не на тој начин, на овој начин. 488 00:24:32,510 --> 00:24:34,280 Кои други прашања што луѓето имаат? 489 00:24:34,280 --> 00:24:37,550 490 00:24:37,550 --> 00:24:39,480 >> Публика: Јас не знам колку е важно е ова, но бев збунет од 491 00:24:39,480 --> 00:24:43,550 Разликата помеѓу различни типови на јазици како маркап, состави, 492 00:24:43,550 --> 00:24:45,980 толкува. 493 00:24:45,980 --> 00:24:46,750 >> ЈАСОН Hirschhorn: Тоа е добро прашање. 494 00:24:46,750 --> 00:24:50,500 Мислам дека е малку важно, па ајде да одиме над неа брзо. 495 00:24:50,500 --> 00:24:56,850 Големите јазици видовме досега се Ц, PHP и го вклучите Javascript-, во смисла 496 00:24:56,850 --> 00:24:58,330 на програмски јазици. 497 00:24:58,330 --> 00:25:01,060 HTML, како што рековме, не е програмски јазик. 498 00:25:01,060 --> 00:25:02,260 Тоа е маркап јазик. 499 00:25:02,260 --> 00:25:05,700 И тогаш имаме CSS, која е исто така не е програмски јазик. 500 00:25:05,700 --> 00:25:10,330 >> Ние сме, исто така, се гледа SQL, што не е програмски јазик или. 501 00:25:10,330 --> 00:25:15,695 Па SQL ви овозможува да пишувате прашања за база на податоци. 502 00:25:15,695 --> 00:25:18,370 503 00:25:18,370 --> 00:25:20,140 HTML е јазик за Селектирај. 504 00:25:20,140 --> 00:25:22,570 Го дефинира како се структурирани работи. 505 00:25:22,570 --> 00:25:26,250 И CSS ви овозможува да стил нешта. 506 00:25:26,250 --> 00:25:28,520 Тоа е веројатно степенот за она што треба да знаете за овие три. 507 00:25:28,520 --> 00:25:32,920 Но тоа е повеќе интересно да се фигура на разликите помеѓу C, PHP, 508 00:25:32,920 --> 00:25:34,320 и JavaScript. 509 00:25:34,320 --> 00:25:37,900 >> Значи една од најголемите разлики, како што рековме, е како тие се 510 00:25:37,900 --> 00:25:40,550 состави, или што Еквивалент е. 511 00:25:40,550 --> 00:25:42,580 Па C е компајлирана. 512 00:25:42,580 --> 00:25:43,950 Ние секогаш ќе се води компајлерот. 513 00:25:43,950 --> 00:25:51,100 А потоа каде се вашите грешки кога ќе ја извршите C компајлер? 514 00:25:51,100 --> 00:25:55,740 Каде што ви го покаже Грешки во вашиот код? 515 00:25:55,740 --> 00:25:57,860 Како знаеш таму е грешка во вашиот код во C? 516 00:25:57,860 --> 00:25:58,770 >> Публика: Тоа ви покажува во терминал. 517 00:25:58,770 --> 00:26:00,410 >> ЈАСОН Hirschhorn: Тоа ви покажува во терминал како сте составувањето. 518 00:26:00,410 --> 00:26:02,620 И ако има грешки, тоа не, всушност, ќе го компајлирате. 519 00:26:02,620 --> 00:26:04,830 Па да знаете дека постојат грешки во право подалеку, пред време, пред да 520 00:26:04,830 --> 00:26:06,050 дури и се кандидира на вашиот код. 521 00:26:06,050 --> 00:26:10,010 >> Се разбира, може да се кандидира на вашиот код и добие сегментација вина, но тоа беше 522 00:26:10,010 --> 00:26:12,350 веројатно затоа што не некои смешни логика работа. 523 00:26:12,350 --> 00:26:15,770 Но вашиот код со технички сите коректен и би можеле да работат. 524 00:26:15,770 --> 00:26:18,210 Значи C код добива состави пред време. 525 00:26:18,210 --> 00:26:19,760 Што е PHP код? 526 00:26:19,760 --> 00:26:21,430 Каде беа грешките во вашиот PHP код? 527 00:26:21,430 --> 00:26:23,170 Како знаеше дека сте имале грешки во вашиот PHP код? 528 00:26:23,170 --> 00:26:26,038 529 00:26:26,038 --> 00:26:28,430 >> ПУБЛИКАТА: Стартувај време? 530 00:26:28,430 --> 00:26:31,230 >> ЈАСОН Hirschhorn: Да, кога ќе ќе се кандидира, ќе се кандидира на 531 00:26:31,230 --> 00:26:32,180 PHP код во задниот дел. 532 00:26:32,180 --> 00:26:33,300 А потоа ќе се прикаже на екранот. 533 00:26:33,300 --> 00:26:35,260 Можете да видите некои работи на врвот, но тогаш ќе се види, како, некои 534 00:26:35,260 --> 00:26:36,710 портокалова, грди табела. 535 00:26:36,710 --> 00:26:41,420 И тоа ќе ви даде линијата број и да речеме, бла, бла, бла, овој материјал 536 00:26:41,420 --> 00:26:42,400 не работи. 537 00:26:42,400 --> 00:26:48,730 >> Така PHP се толкува линија по линија и извршува на сервер. 538 00:26:48,730 --> 00:26:52,380 И тогаш резултатот е испрати во вас. 539 00:26:52,380 --> 00:26:53,340 Одлично. 540 00:26:53,340 --> 00:26:56,410 Извршува на серверот линија по линија а потоа испратени преку за вас. 541 00:26:56,410 --> 00:26:59,010 И ако има грешка, тоа ќе испрати можете грешка, но може да имаат 542 00:26:59,010 --> 00:27:00,400 добивано и некои работи пред време. 543 00:27:00,400 --> 00:27:02,730 Па некои од нив би можеле да имаат работено, но Подоцна, некои работи не може да има 544 00:27:02,730 --> 00:27:03,890 не работел. 545 00:27:03,890 --> 00:27:04,600 >> Што е го вклучите Javascript-? 546 00:27:04,600 --> 00:27:06,065 Каде го гледате JavaScript за грешки? 547 00:27:06,065 --> 00:27:10,860 548 00:27:10,860 --> 00:27:12,870 Во P постави 8, кога сте ја добиле грешка, како не знаеш? 549 00:27:12,870 --> 00:27:13,710 Каде што ќе се појавиш? 550 00:27:13,710 --> 00:27:15,900 >> ПУБЛИКАТА: Во конзола, на дното. 551 00:27:15,900 --> 00:27:17,650 >> ЈАСОН Hirschhorn: Во конзола, на дното. 552 00:27:17,650 --> 00:27:20,160 Исто така, би ви даде линијата број, и тоа ќе 553 00:27:20,160 --> 00:27:21,330 се појави на дното. 554 00:27:21,330 --> 00:27:24,320 И го вклучите Javascript-не бил погубен на серверот. 555 00:27:24,320 --> 00:27:27,800 Го вклучите Javascript-е испратен на вашиот компјутер, и тогаш кога тоа е време да се кандидира на 556 00:27:27,800 --> 00:27:31,670 Го вклучите Javascript-го вклучите Javascript-се се кандидира линија по линија на 557 00:27:31,670 --> 00:27:33,410 клиент, на ваша страна. 558 00:27:33,410 --> 00:27:35,570 Не на серверот, клиентската страна. 559 00:27:35,570 --> 00:27:37,690 >> И слично, тоа беше се кандидира линија по линија. 560 00:27:37,690 --> 00:27:40,630 И тогаш кога ќе добиете грешка, тоа ќе се појави на дното. 561 00:27:40,630 --> 00:27:44,580 Слично на PHP, некои од нив би можеле да изврши, а потоа може да се добие 562 00:27:44,580 --> 00:27:46,310 грешка подоцна. 563 00:27:46,310 --> 00:27:49,910 >> Исто така, малку разлика PHP, ако ли да вклучите грешка - 564 00:27:49,910 --> 00:27:52,780 велат дека не ја направат вистинската кодот за кутија алармирање - 565 00:27:52,780 --> 00:27:55,800 можете да ги задржи работи вашата програма. 566 00:27:55,800 --> 00:27:58,180 На алармирање кутија не би сакал да работиш, но вашата програма ќе биде добро. 567 00:27:58,180 --> 00:28:00,490 Само можеби таа функција ќе пропадне. 568 00:28:00,490 --> 00:28:02,610 >> Значи има некои од најголемите Разликата во однос на тоа како овие 569 00:28:02,610 --> 00:28:09,230 јазици, или како програмски код ти напишам се всушност оценува. 570 00:28:09,230 --> 00:28:11,970 Исто така има и други разлики во Услови за - најголемата разлика 571 00:28:11,970 --> 00:28:15,590 видовме во однос на променливи во различни јазици. 572 00:28:15,590 --> 00:28:19,660 Па некој може да ми даде разликата помеѓу променливи 573 00:28:19,660 --> 00:28:20,910 во три јазици? 574 00:28:20,910 --> 00:28:24,802 575 00:28:24,802 --> 00:28:25,770 Да. 576 00:28:25,770 --> 00:28:27,130 >> Публика: Во C, тие се строго напишани. 577 00:28:27,130 --> 00:28:28,550 Во другите две, тие се лабаво отчукува. 578 00:28:28,550 --> 00:28:30,040 >> ЈАСОН Hirschhorn: И што значи тоа? 579 00:28:30,040 --> 00:28:31,775 >> Публика: Тоа во C, морате да се изјасни типот на променлива кога 580 00:28:31,775 --> 00:28:36,140 Вие декларирате променлива, како interbool или знак. 581 00:28:36,140 --> 00:28:36,990 >> ЈАСОН Hirschhorn: Одлично. 582 00:28:36,990 --> 00:28:39,780 Во C, ние секогаш мораше да се стави тип на променлива. 583 00:28:39,780 --> 00:28:41,360 И ние навистина не може да се меша типови. 584 00:28:41,360 --> 00:28:45,750 Вие не може да го направи цел број плус стринг. 585 00:28:45,750 --> 00:28:48,760 Но, како што видовме во овие други јазици, вие всушност може да се меша видови, 586 00:28:48,760 --> 00:28:51,230 и никогаш не навистина треба да се даде нешто тип, било кога. 587 00:28:51,230 --> 00:28:53,905 >> Па, како да знаеме работи се променливи во PHP и го вклучите Javascript-? 588 00:28:53,905 --> 00:28:57,120 589 00:28:57,120 --> 00:28:58,685 >> Публика: Во PHP, тие да започнат со знак за долар. 590 00:28:58,685 --> 00:29:00,810 Во JavaScript, кога ќе прогласат нив, ќе мора да имаат бар. 591 00:29:00,810 --> 00:29:01,760 >> ЈАСОН Hirschhorn: Право. 592 00:29:01,760 --> 00:29:03,535 Па во PHP, тие да започнат со знак за долар. 593 00:29:03,535 --> 00:29:06,300 Во JavaScript, тие мора да имаат бар, иако понекогаш тие не се всушност 594 00:29:06,300 --> 00:29:07,520 мора да имаат бар. 595 00:29:07,520 --> 00:29:09,240 Но, тоа е точно. 596 00:29:09,240 --> 00:29:13,300 >> Па тоа е голема разлика помеѓу променливи. 597 00:29:13,300 --> 00:29:16,140 Мислам дека тие се веројатно, во близина на врвот на мојата глава, на двете најголеми 598 00:29:16,140 --> 00:29:19,250 разликите меѓу овие три јазици. 599 00:29:19,250 --> 00:29:20,594 Но, да. 600 00:29:20,594 --> 00:29:24,720 >> ПУБЛИКАТА: И обемот на C променливи е ограничена на големи загради, 601 00:29:24,720 --> 00:29:27,760 каде другите, тоа е исто како, умира и ако тоа е во функција само, 602 00:29:27,760 --> 00:29:29,650 но во спротивно, it's - 603 00:29:29,650 --> 00:29:30,240 >> ЈАСОН Hirschhorn: Право. 604 00:29:30,240 --> 00:29:36,780 Значи опфатот е малку поинаква во C. Како се сеќавате, големи загради се дефинираат 605 00:29:36,780 --> 00:29:37,710 обемот на променливи. 606 00:29:37,710 --> 00:29:41,680 Значи, ако тоа беше дефинирана внатре во ако состојба, која е во внатрешноста на за јамка, 607 00:29:41,680 --> 00:29:44,290 променлива постои само таму. 608 00:29:44,290 --> 00:29:47,760 >> Во JavaScript, ако променливата е дефинирана внатре во ако состојба - 609 00:29:47,760 --> 00:29:50,750 во внатрешноста на за телефонска линија - тоа ќе постојат за таа функција, но тоа нема да постои 610 00:29:50,750 --> 00:29:52,330 надвор од таа функција. 611 00:29:52,330 --> 00:29:59,250 Па опсег е малку повеќе флексибилни во JavaScript и PHP. 612 00:29:59,250 --> 00:30:00,500 Дека одговори на прашањето? 613 00:30:00,500 --> 00:30:03,110 614 00:30:03,110 --> 00:30:04,635 Добро, било какви други прашања? 615 00:30:04,635 --> 00:30:07,260 616 00:30:07,260 --> 00:30:08,865 Можеме да направиме повеќе од четири минути прашања, а потоа 617 00:30:08,865 --> 00:30:10,740 ние ќе фрламе во кодирање. 618 00:30:10,740 --> 00:30:12,645 >> Публика: Може ли да одат во Ајакс и зборува за она што е? 619 00:30:12,645 --> 00:30:15,670 620 00:30:15,670 --> 00:30:17,800 >> ЈАСОН Hirschhorn: Разговарајте со Ави после. 621 00:30:17,800 --> 00:30:19,170 Тој побара тоа прашање претходно. 622 00:30:19,170 --> 00:30:19,630 >> Публика: Мојот лошо. 623 00:30:19,630 --> 00:30:20,880 >> ЈАСОН Hirschhorn: Не грижете. 624 00:30:20,880 --> 00:30:22,740 625 00:30:22,740 --> 00:30:24,290 >> Публика: Што точно е JSON? 626 00:30:24,290 --> 00:30:28,360 627 00:30:28,360 --> 00:30:28,900 >> ЈАСОН Hirschhorn: Што е JSON? 628 00:30:28,900 --> 00:30:29,930 Што е вашето прашање? 629 00:30:29,930 --> 00:30:31,350 >> Публика: Само навистина брзо, разликата помеѓу 630 00:30:31,350 --> 00:30:32,870 печати и ехо во PHP. 631 00:30:32,870 --> 00:30:36,200 632 00:30:36,200 --> 00:30:38,490 >> ЈАСОН Hirschhorn: Зошто не google разликата помеѓу печати и ехо? 633 00:30:38,490 --> 00:30:40,670 Мала разлика. 634 00:30:40,670 --> 00:30:42,020 Не е толку голема за постигнување на договор. 635 00:30:42,020 --> 00:30:44,960 Но дефинитивно треба да го Google, и тоа ќе ви даде добар одговор. 636 00:30:44,960 --> 00:30:46,910 >> JSON, веројатно поголем од договорот. 637 00:30:46,910 --> 00:30:49,300 Се залага за вклучите Javascript-објект нотација. 638 00:30:49,300 --> 00:30:51,865 И кога не сме виделе JSON се користи? 639 00:30:51,865 --> 00:30:55,110 640 00:30:55,110 --> 00:30:55,900 Кога си ја видел - 641 00:30:55,900 --> 00:30:57,400 зошто дури и знаат зборот JSON? 642 00:30:57,400 --> 00:30:59,140 Кога сте го виделе? 643 00:30:59,140 --> 00:31:02,200 >> Публика: Кога бевме добивање берзанските за финансии. 644 00:31:02,200 --> 00:31:02,690 >> ЈАСОН Hirschhorn: Значи сте гледале кога ќе се добива 645 00:31:02,690 --> 00:31:04,830 берзанските за финансии. 646 00:31:04,830 --> 00:31:07,340 И зошто ти го гледаш? 647 00:31:07,340 --> 00:31:09,000 >> Публика: Кога бевме прибирањето сите информации кои 648 00:31:09,000 --> 00:31:10,400 дојде во тој формат. 649 00:31:10,400 --> 00:31:11,700 >> ЈАСОН Hirschhorn: Значи вие ќе добиете - 650 00:31:11,700 --> 00:31:12,540 Да. 651 00:31:12,540 --> 00:31:13,020 Оди напред. 652 00:31:13,020 --> 00:31:15,210 >> ПУБЛИКАТА: [нечујни] информации надвор од објектот? 653 00:31:15,210 --> 00:31:17,170 >> ЈАСОН Hirschhorn: И двете од овие стави заедно е одговорот 654 00:31:17,170 --> 00:31:18,100 ние сме во потрага за. 655 00:31:18,100 --> 00:31:21,240 Што сакате информации од оваа друга веб страница. 656 00:31:21,240 --> 00:31:23,790 И ќе се надевам дека кога сте добивање на таа информација, тоа ќе биде 657 00:31:23,790 --> 00:31:26,720 претставени на вас во некои од типот на стандардизиран формат. 658 00:31:26,720 --> 00:31:29,530 >> Сите се запознаени со одвоени со запирки вредности. 659 00:31:29,530 --> 00:31:32,970 Ќе може да извезува табела Excel или било вид на табела како листа на 660 00:31:32,970 --> 00:31:34,540 одвоени со запирки вредности. 661 00:31:34,540 --> 00:31:37,370 И запирки поделат сите различни области. 662 00:31:37,370 --> 00:31:38,780 Го вклучите Javascript-објект Нотација - 663 00:31:38,780 --> 00:31:39,440 JSON - 664 00:31:39,440 --> 00:31:43,540 е друг вид на стандардизирани распоред на нештата. 665 00:31:43,540 --> 00:31:49,010 И тоа е често како ние се добие информации од нашите Ајакс пребарувања. 666 00:31:49,010 --> 00:31:51,770 >> Значи во овој случај, ние го добивме од Yahoo сајт. 667 00:31:51,770 --> 00:31:53,600 Се вратат работите да се ни во JSON објект. 668 00:31:53,600 --> 00:31:56,790 А потоа ние знаеме, затоа што тоа е стандард, она што е 669 00:31:56,790 --> 00:31:57,250 ќе изгледа. 670 00:31:57,250 --> 00:32:00,760 Значи можеме да iterate преку низа тоа е се врати во нас, низа на 671 00:32:00,760 --> 00:32:03,180 објекти кои се вратија во нас. 672 00:32:03,180 --> 00:32:07,770 >> Ние го правиме веројатно треба да знаете клучеви, но тие обично ви даде 673 00:32:07,770 --> 00:32:11,370 документација во веб-сајт, кога сте преземање некои JSON 674 00:32:11,370 --> 00:32:12,170 нотација за нив. 675 00:32:12,170 --> 00:32:16,940 Исто така, можете да JSON кодираат објектот. 676 00:32:16,940 --> 00:32:19,900 Па постои функција JSON истакне кодираат. 677 00:32:19,900 --> 00:32:22,970 И така може да се земе некој предмет што имаш креирано, JSON тоа се кодираат и 678 00:32:22,970 --> 00:32:26,390 да го давате на нешто друго, ако сакате да. 679 00:32:26,390 --> 00:32:30,770 И JSON декодирање, исто така, постои за слична цел, или за 680 00:32:30,770 --> 00:32:31,780 спротивна цел. 681 00:32:31,780 --> 00:32:36,570 >> Публика: Дали ние треба да знаете кодирање за хеш табели и се обидува? 682 00:32:36,570 --> 00:32:40,300 Или само треба да се разбере како тие се користат, концепциски? 683 00:32:40,300 --> 00:32:44,570 >> ЈАСОН Hirschhorn: Значи, кренете рака ако не хеш табелата за p постави 4 684 00:32:44,570 --> 00:32:46,920 со линк листа. 685 00:32:46,920 --> 00:32:47,960 Или p поставени 5. 686 00:32:47,960 --> 00:32:49,060 Така што беше огромното мнозинство на луѓе. 687 00:32:49,060 --> 00:32:50,390 P постави 5, 6, кој знае. 688 00:32:50,390 --> 00:32:51,240 Пред долго време. 689 00:32:51,240 --> 00:32:54,140 >> Па огромното мнозинство од вас не хеш табели со линк листи. 690 00:32:54,140 --> 00:32:56,525 И затоа што тоа е веројатно повеќе заеднички пристап, и затоа што поминал 691 00:32:56,525 --> 00:32:59,460 многу време прави врската листи и хаш маси, веројатно ќе треба да биде 692 00:32:59,460 --> 00:33:02,600 прилично запознаен со тоа како да го кодот хеш табелата и линк листа. 693 00:33:02,600 --> 00:33:05,060 >> И ако мислите дека назад кон тој проблем постави, тоа не беше навистина 694 00:33:05,060 --> 00:33:06,410 толку тешко како што се очекуваше. 695 00:33:06,410 --> 00:33:08,120 И таму беше многу помалку код отколку што се очекуваше. 696 00:33:08,120 --> 00:33:11,150 697 00:33:11,150 --> 00:33:14,650 Јас би рекол треба да знаете како да се кодот на хеш табелата или линк листа. 698 00:33:14,650 --> 00:33:17,010 Не дека сакаш да се побара, мора, но ќе треба да 699 00:33:17,010 --> 00:33:19,730 сигурно знаат тоа. 700 00:33:19,730 --> 00:33:21,860 >> Исто така, ако се погледне преку последните тестови, имало многу 701 00:33:21,860 --> 00:33:26,450 прашања за пишување функции на линк листи или двојно поврзани листи. 702 00:33:26,450 --> 00:33:28,370 Што се чини дека за да дојдат до секоја година. 703 00:33:28,370 --> 00:33:31,940 Право вметнете на линкот листата, десен избришете од линк листата, десен вметнете 704 00:33:31,940 --> 00:33:33,610 за двојно-поврзана листа, итн. 705 00:33:33,610 --> 00:33:36,170 Така што, јас се чувствувам прилично удобно велејќи дека треба да се знае дека. 706 00:33:36,170 --> 00:33:40,600 >> За обид, јас би рекол дека треба сигурно знаете како тоа функционира, а можеби и 707 00:33:40,600 --> 00:33:43,570 даде некои pseudocode за тоа како да го кодот и го постави. 708 00:33:43,570 --> 00:33:45,600 Но, тоа не би било најлошото нешто во свет, ако не знаат како да се 709 00:33:45,600 --> 00:33:48,870 законик во C. Тоа би било одлично ако знаеја како да го кодот во C, но мислам дека 710 00:33:48,870 --> 00:33:52,516 веројатно pseudocode за обид би да биде најмногу ќе треба 711 00:33:52,516 --> 00:33:53,270 да се знае за да се проба. 712 00:33:53,270 --> 00:33:53,930 >> Публика: Екстра кредит? 713 00:33:53,930 --> 00:33:58,290 >> ЈАСОН Hirschhorn: И истиот со тоа, ако ние одат во бинарна пребарување дрвја, можеби 714 00:33:58,290 --> 00:34:02,320 треба - и сте виделе во минатото, ние го направивме многу - ќе знаеш како 715 00:34:02,320 --> 00:34:03,380 бинарни пребарување дрво работи. 716 00:34:03,380 --> 00:34:07,150 Веројатно ќе треба да бидат способни да еден сет до во псевдо код. 717 00:34:07,150 --> 00:34:10,510 Но, бидејќи огромното мнозинство на луѓе не го направи тоа на проблемот 718 00:34:10,510 --> 00:34:13,880 сет, јас би рекол дека е веројатно помалку важно да знаете како да се кодира 719 00:34:13,880 --> 00:34:17,380 и да се воспостави дрво слично. 720 00:34:17,380 --> 00:34:19,679 >> Било какви други прашања? 721 00:34:19,679 --> 00:34:23,234 Исто така, можеме да ги побарате во текот како што ние одиме преку некои проблеми. 722 00:34:23,234 --> 00:34:27,170 Добро, ние ќе треба да се движат натаму. 723 00:34:27,170 --> 00:34:28,230 Прескокнете дека слајд за сега. 724 00:34:28,230 --> 00:34:32,449 >> Говорејќи на дрвјата, тоа е првиот прашање имам за вас момци. 725 00:34:32,449 --> 00:34:34,270 Бидејќи ова е проблемот. 726 00:34:34,270 --> 00:34:37,380 Јас би рекол дека е многу веројатно ќе добие проблем како овој на вашиот квиз 727 00:34:37,380 --> 00:34:43,659 ќе побара од вас да го кодот некои од типот на вметнете, избришете, пребарување, за еден тип 728 00:34:43,659 --> 00:34:45,270 на податочна структура сме виделе. 729 00:34:45,270 --> 00:34:47,719 >> Што доаѓа до секоја година и си поминале многу време на втората половина на оваа 730 00:34:47,719 --> 00:34:50,270 семестар случува во текот на овие типови на податоци. 731 00:34:50,270 --> 00:34:54,170 Значи, токму сега, јас сум дефинирани јазол во бинарен пребарување дрво. 732 00:34:54,170 --> 00:34:58,490 И она што би сакал да направите е даден бинарен пребарување дрво кое започнува 733 00:34:58,490 --> 00:35:05,450 во овој јазол ѕвезда корен, заврши имплементација на функцијата подолу, 734 00:35:05,450 --> 00:35:07,430 кој се случува да биде откритие функција. 735 00:35:07,430 --> 00:35:09,260 И направете го тоа со и без recursions. 736 00:35:09,260 --> 00:35:10,860 >> Па сакам да се напише две функции. 737 00:35:10,860 --> 00:35:14,310 Една прави ова со рекурзија, еден го прават тоа без да рекурзија. 738 00:35:14,310 --> 00:35:18,050 И не се претпостави дека коренот ќе биде не-нула. 739 00:35:18,050 --> 00:35:21,790 Па ние сме во потрага за целобројни i во дрво со почеток во корен, и ние треба 740 00:35:21,790 --> 00:35:25,280 да ја напишам оваа рекурзивно и iteratively. 741 00:35:25,280 --> 00:35:26,300 Да. 742 00:35:26,300 --> 00:35:29,730 >> Публика: Значи сакате да се вратиме точно ако тоа се, и лажни ако ние 743 00:35:29,730 --> 00:35:30,480 не го најдете. 744 00:35:30,480 --> 00:35:32,160 >> ЈАСОН Hirschhorn: Како знаеш? 745 00:35:32,160 --> 00:35:33,100 Како го знаеш тоа? 746 00:35:33,100 --> 00:35:36,500 >> Публика: Јас не го поставила првиот, но јас бев под претпоставка, бидејќи вели bool на 747 00:35:36,500 --> 00:35:37,490 на почетокот на функција. 748 00:35:37,490 --> 00:35:37,880 >> ЈАСОН Hirschhorn: Право. 749 00:35:37,880 --> 00:35:41,020 Таа вели дека bool, па јас дури и не треба да се ви кажам што очекувам да се врати 750 00:35:41,020 --> 00:35:41,350 затоа што тоа вели право таму. 751 00:35:41,350 --> 00:35:42,280 Но, тоа е во право. 752 00:35:42,280 --> 00:35:43,510 Врати, точно или неточно. 753 00:35:43,510 --> 00:35:47,630 >> Значи пред да започнете, јас ќе им препорачаат, ако сте запознаени со 754 00:35:47,630 --> 00:35:51,300 бинарни пребарување дрвја, брзо цртање слика од него да ја добиете вашата 755 00:35:51,300 --> 00:35:51,750 разбирање, нели. 756 00:35:51,750 --> 00:35:54,720 Кој исто така ќе ви помогне при пишувањето вашиот код и проверка на тоа. 757 00:35:54,720 --> 00:35:57,830 Повторно, исто така, не дека имаат многу време на квизот да се направи сите работи 758 00:35:57,830 --> 00:35:59,030 дека бараме од вас да го стори. 759 00:35:59,030 --> 00:36:02,350 Па пишување псевдо код е многу корисна. 760 00:36:02,350 --> 00:36:05,310 >> И ние генерално даде за тоа - 761 00:36:05,310 --> 00:36:06,820 ако pseudocode е совршено точни, тоа е 762 00:36:06,820 --> 00:36:08,910 генерално 50% на прашање. 763 00:36:08,910 --> 00:36:11,410 Па тоа не е тешко и брзо правило, но ако можете само напишете pseudocode и тоа е 764 00:36:11,410 --> 00:36:13,460 точни, тоа е обично 50%. 765 00:36:13,460 --> 00:36:14,970 Па јас секогаш му препорачувам - 766 00:36:14,970 --> 00:36:16,870 ако сте притисок за време, или дури и ако сте само се обидува да го дознаам - 767 00:36:16,870 --> 00:36:18,290 почнувајќи со pseudocode. 768 00:36:18,290 --> 00:36:24,840 И конечно, ако може да ја напишам оваа сите во C, кој ќе биде фантастично. 769 00:36:24,840 --> 00:36:29,010 >> Па ајде да три минути да работат на оваа програма. 770 00:36:29,010 --> 00:36:33,120 А потоа ние ќе се обидеме да се напише pseudocode за тоа само еднаш, а потоа 771 00:36:33,120 --> 00:36:35,455 ние ќе го кодот рекурзивно и потоа iteratively. 772 00:36:35,455 --> 00:37:28,720 773 00:37:28,720 --> 00:37:30,760 >> Ако имате било какви прашања, се чувствуваат слободен подигне својата рака. 774 00:37:30,760 --> 00:37:34,270 Среќен да се шетаат и да одговори на нив пред да започнете како група. 775 00:37:34,270 --> 00:39:22,600 776 00:39:22,600 --> 00:39:27,200 >> Нека продолжи, а ние ќе се pseudocode рекурзивен верзија на 777 00:39:27,200 --> 00:39:29,830 ова, а потоа ние ќе го кодот. 778 00:39:29,830 --> 00:39:33,380 Па рекурзивен функција треба две работи. 779 00:39:33,380 --> 00:39:35,960 Ова може да биде прашање кое можете да се праша. 780 00:39:35,960 --> 00:39:37,950 Треба две работи. 781 00:39:37,950 --> 00:39:40,610 Кои може да се подигне својата рака и да ми кажете што две работи рекурзивен 782 00:39:40,610 --> 00:39:43,680 функцијата треба? 783 00:39:43,680 --> 00:39:45,030 По дефиниција има две работи. 784 00:39:45,030 --> 00:39:46,280 Кои се тие две работи? 785 00:39:46,280 --> 00:39:48,580 786 00:39:48,580 --> 00:39:49,830 Нови раце. 787 00:39:49,830 --> 00:39:55,050 788 00:39:55,050 --> 00:39:56,390 Да, Alden. 789 00:39:56,390 --> 00:39:57,980 >> Публика: Па јас не сум точно сигурен дали ова е терминологија, но - 790 00:39:57,980 --> 00:39:59,715 >> ЈАСОН Hirschhorn: Мило ми е сте подигање на вашата рака. 791 00:39:59,715 --> 00:40:03,380 >> ПУБЛИКАТА: Тоа е потребна база случај, и тоа треба рекурзивен чекор. 792 00:40:03,380 --> 00:40:03,960 >> ЈАСОН Hirschhorn: Совршена. 793 00:40:03,960 --> 00:40:06,340 Тоа треба база случај и рекурзивен чекор. 794 00:40:06,340 --> 00:40:10,430 Значи она што е нашата база случај тука? 795 00:40:10,430 --> 00:40:12,950 >> ПУБЛИКАТА: F корен еднаква еднаква на нула. 796 00:40:12,950 --> 00:40:15,110 Жал ми е, само во pseudocode, ако тоа е нула. 797 00:40:15,110 --> 00:40:16,360 Ако корен е нула. 798 00:40:16,360 --> 00:40:21,900 799 00:40:21,900 --> 00:40:23,540 >> ЈАСОН Hirschhorn: Ако корен е нула. 800 00:40:23,540 --> 00:40:23,850 Тоа е одличен. 801 00:40:23,850 --> 00:40:24,610 Тоа е нашата база случај. 802 00:40:24,610 --> 00:40:25,910 Тоа е она што ние ќе да се провери секое време. 803 00:40:25,910 --> 00:40:28,000 И база случај е Првото нешто што го правите. 804 00:40:28,000 --> 00:40:29,720 Ако го погоди база случај, ќе завршиш. 805 00:40:29,720 --> 00:40:34,140 >> Сега ние треба нашите рекурзивен повик, и јас би биде подготвен да се обложи ние треба неколку 806 00:40:34,140 --> 00:40:35,440 рекурзивните повици тука. 807 00:40:35,440 --> 00:40:39,630 Затоа што тоа е едно дрво, а ние може да оди повеќе начини. 808 00:40:39,630 --> 00:40:43,190 Значи, ако коренот е нула, ние сме добро. 809 00:40:43,190 --> 00:40:44,970 >> Што ви предложи? 810 00:40:44,970 --> 00:40:49,640 И сега ќе одам да почнете да повикувате надвор на вас момци, затоа што знам вие момци 811 00:40:49,640 --> 00:40:50,540 сите го знаеме ова. 812 00:40:50,540 --> 00:40:52,610 Но Ени, она што треба да следната линија да биде? 813 00:40:52,610 --> 00:40:53,570 Што ако ние го најде тоа? 814 00:40:53,570 --> 00:40:55,526 Што ќе правиме? 815 00:40:55,526 --> 00:40:57,300 >> Публика: Ако го најде? 816 00:40:57,300 --> 00:40:59,160 >> ЈАСОН Hirschhorn: Или она што треба да биде тоа - 817 00:40:59,160 --> 00:41:02,124 ми даде pseudocode за линија каде што ја најдов. 818 00:41:02,124 --> 00:41:04,700 >> Публика: Ако јас еднаква на коренот јас? 819 00:41:04,700 --> 00:41:06,650 >> ЈАСОН Hirschhorn: И тогаш што правиме? 820 00:41:06,650 --> 00:41:07,590 >> ПУБЛИКАТА: Враќање вистина. 821 00:41:07,590 --> 00:41:08,530 >> ЈАСОН Hirschhorn: Велики. 822 00:41:08,530 --> 00:41:16,890 Значи, ако јас е i - 823 00:41:16,890 --> 00:41:17,400 ох, тие се двете се јавив. 824 00:41:17,400 --> 00:41:18,470 Кој добива збунувачки. 825 00:41:18,470 --> 00:41:23,830 Но, ако јас е i врати вистина. 826 00:41:23,830 --> 00:41:25,620 Тоа е веројатно на следната нешто што ние треба да направи. 827 00:41:25,620 --> 00:41:27,300 Има смисла. 828 00:41:27,300 --> 00:41:30,610 >> Добро, сега не сме го направиле нашиот рекурзивен јавете се уште, иако, бидејќи рекурзивен 829 00:41:30,610 --> 00:41:32,300 повик би го нарекол оваа функција повторно. 830 00:41:32,300 --> 00:41:41,460 Значи она што треба следно линија на pseudocode да биде? 831 00:41:41,460 --> 00:41:42,730 Ана. 832 00:41:42,730 --> 00:41:43,980 >> Публика: на левата страна. 833 00:41:43,980 --> 00:41:47,040 834 00:41:47,040 --> 00:41:47,590 >> ЈАСОН Hirschhorn: Бидете конкретни, иако. 835 00:41:47,590 --> 00:41:50,600 Ова е бинарен за пребарување дрво, па што се проверка на левата страна повлекува? 836 00:41:50,600 --> 00:41:51,890 >> ПУБЛИКАТА: Значи јазол - 837 00:41:51,890 --> 00:41:53,342 Жал ми е, корен. 838 00:41:53,342 --> 00:41:55,306 А потоа стрелка лево. 839 00:41:55,306 --> 00:41:59,234 840 00:41:59,234 --> 00:42:00,720 Јазол, јазол, жалам. 841 00:42:00,720 --> 00:42:01,978 Јас не сум тоа и читањето правилно. 842 00:42:01,978 --> 00:42:05,700 Таа се вика јазол, нели? 843 00:42:05,700 --> 00:42:09,270 >> ЈАСОН Hirschhorn: Ќе се вика корен во таа функција, но било начин. 844 00:42:09,270 --> 00:42:10,925 На левата страна - Да? 845 00:42:10,925 --> 00:42:13,780 >> Публика: Ако тоа не се еднакви јас, тогаш ние ќе треба да се јавите 846 00:42:13,780 --> 00:42:15,130 функцијата повторно? 847 00:42:15,130 --> 00:42:15,490 >> ЈАСОН Hirschhorn: Тоа е право. 848 00:42:15,490 --> 00:42:17,870 Ако тоа не еднакво јас, ние ќе да се јавите на функцијата повторно. 849 00:42:17,870 --> 00:42:21,435 Но, она што страната на дрвото одиме да се јавите на функција повторно? 850 00:42:21,435 --> 00:42:22,685 >> Публика: На левата страна. 851 00:42:22,685 --> 00:42:25,932 852 00:42:25,932 --> 00:42:27,670 >> ЈАСОН Hirschhorn: Ние не сме секогаш ќе го наречеме лево, ако тоа 853 00:42:27,670 --> 00:42:29,190 не го еднакви. 854 00:42:29,190 --> 00:42:29,610 >> Публика: Ох, извинете. 855 00:42:29,610 --> 00:42:31,200 Јавете се на десно. 856 00:42:31,200 --> 00:42:33,680 >> ЈАСОН Hirschhorn: Сакаме да знаеме Поточно, иако - се сеќавам, во 857 00:42:33,680 --> 00:42:37,700 бинарни пребарување дрво, сè до на левата страна е помала. 858 00:42:37,700 --> 00:42:40,460 Сè што десно страна е поголема. 859 00:42:40,460 --> 00:42:43,990 Па тоа е само не - Да, повелете. 860 00:42:43,990 --> 00:42:46,805 >> Публика: Ако е помалку отколку што, а потоа - 861 00:42:46,805 --> 00:42:52,130 862 00:42:52,130 --> 00:42:53,380 ако тоа е на левата страна - 863 00:42:53,380 --> 00:42:56,160 864 00:42:56,160 --> 00:42:58,606 >> ЈАСОН Hirschhorn: Значи, ако ri е помалку од - 865 00:42:58,606 --> 00:43:01,854 866 00:43:01,854 --> 00:43:09,110 па ако нашиот број е помал од мене, на која страна сакаме да одат? 867 00:43:09,110 --> 00:43:15,120 >> ПУБЛИКАТА: Ние сакаме да одиме на десната страна. 868 00:43:15,120 --> 00:43:16,250 >> ЈАСОН Hirschhorn: Сакаме да си одат - 869 00:43:16,250 --> 00:43:19,210 дозволете ми да подготви брзо дрво. 870 00:43:19,210 --> 00:43:23,850 Ако ова е 5, ова ќе биде 3. 871 00:43:23,850 --> 00:43:29,410 Па ако ри е помалку од пет години, што страна сакаме да одат? 872 00:43:29,410 --> 00:43:30,390 >> ПУБЛИКАТА: За жал, она што? 873 00:43:30,390 --> 00:43:33,190 >> ЈАСОН Hirschhorn: Нашите број е помал од бројот што сте 874 00:43:33,190 --> 00:43:34,710 гледајќи во моментов. 875 00:43:34,710 --> 00:43:35,890 >> ПУБЛИКАТА: Ох, тогаш сакаме да се оди на левата страна. 876 00:43:35,890 --> 00:43:36,240 Да. 877 00:43:36,240 --> 00:43:36,920 Жал. 878 00:43:36,920 --> 00:43:37,230 >> ЈАСОН Hirschhorn: Токму така. 879 00:43:37,230 --> 00:43:38,480 Не се грижи. 880 00:43:38,480 --> 00:43:41,020 Во бинарна пребарување дрво, сè пониска е на лево, 881 00:43:41,020 --> 00:43:42,110 поголема е десно. 882 00:43:42,110 --> 00:43:46,700 Значи, ако нашиот број е помал од јас сме проверка - 883 00:43:46,700 --> 00:43:48,790 затоа што те гледам во јазол, таа има I - 884 00:43:48,790 --> 00:43:50,040 тогаш ќе сакате да се оди на лево. 885 00:43:50,040 --> 00:43:55,480 886 00:43:55,480 --> 00:43:56,720 >> И ова е лесна. 887 00:43:56,720 --> 00:44:01,700 Што е тоа на другата линија на pseudocode ние треба да се напише? 888 00:44:01,700 --> 00:44:02,910 Carlos? 889 00:44:02,910 --> 00:44:05,970 >> Публика: Истото, само се префрлат до поголем од знак 890 00:44:05,970 --> 00:44:07,420 и да одат во ред. 891 00:44:07,420 --> 00:44:08,350 >> ЈАСОН Hirschhorn: Може да ви велат дека тоа уште еднаш? 892 00:44:08,350 --> 00:44:11,640 >> Публика: Ако нашиот број е поголем од мене, одат кон десно. 893 00:44:11,640 --> 00:44:24,900 894 00:44:24,900 --> 00:44:26,690 >> ЈАСОН Hirschhorn: Одлично работа на pseudocode. 895 00:44:26,690 --> 00:44:28,700 Дозволете ни да го направите ова во реалниот код. 896 00:44:28,700 --> 00:44:33,280 И повторно, овој pseudocode ќе веројатно ќе го добиете, бидејќи тоа е 897 00:44:33,280 --> 00:44:35,480 точна, 50% по ова прашање. 898 00:44:35,480 --> 00:44:39,720 Но, ова pseudocode исто така преведува еден на една, во суштина, во код. 899 00:44:39,720 --> 00:44:44,380 >> Па нека го прават тоа во В Кој може да даде ме на првата линија на кодот? 900 00:44:44,380 --> 00:44:48,390 Всушност, прво, пред да го направам тоа, дозволете ми да се повлече во текот - 901 00:44:48,390 --> 00:44:49,260 >> Публика: Имам едно прашање. 902 00:44:49,260 --> 00:44:52,430 Зошто се вовлекува во линија ви дадов? 903 00:44:52,430 --> 00:44:54,160 >> ЈАСОН Hirschhorn: Бидејќи Не можев да пишувам. 904 00:44:54,160 --> 00:44:55,240 Не знам. 905 00:44:55,240 --> 00:44:55,650 Во право си. 906 00:44:55,650 --> 00:44:57,780 Таа линија треба да биде таму. 907 00:44:57,780 --> 00:45:11,600 908 00:45:11,600 --> 00:45:14,480 >> Добро, тука е нашата функција. 909 00:45:14,480 --> 00:45:18,090 И дозволете ми да се повлече во текот, исто така, нашата дефиниција на еден јазол. 910 00:45:18,090 --> 00:45:23,320 911 00:45:23,320 --> 00:45:27,180 Што се случува ако ние не пишува typedef? 912 00:45:27,180 --> 00:45:30,240 Дали некој знае? 913 00:45:30,240 --> 00:45:32,570 >> Публика: Тоа не би се компајлира. 914 00:45:32,570 --> 00:45:33,860 >> ЈАСОН Hirschhorn: Тоа би собере, да. 915 00:45:33,860 --> 00:45:37,120 >> ПУБЛИКАТА: Дали тоа само прогласи една пример, наместо за правење на тоа нова 916 00:45:37,120 --> 00:45:39,840 тип може да прогласи повеќе случаи на? 917 00:45:39,840 --> 00:45:41,700 >> ЈАСОН Hirschhorn: Значи тоа не би знаете - тоа не би 918 00:45:41,700 --> 00:45:43,120 само прогласи еден тип. 919 00:45:43,120 --> 00:45:46,150 Вие сеуште може да направи многу јазли. 920 00:45:46,150 --> 00:45:48,070 >> Публика: Но, не би ние треба да пишува struct јазол во секое време? 921 00:45:48,070 --> 00:45:48,640 >> ЈАСОН Hirschhorn: Тоа е право. 922 00:45:48,640 --> 00:45:50,960 Вие ќе треба да се напише struct јазол секој пат, наместо само јазол. 923 00:45:50,960 --> 00:45:55,270 Но со typedef, можете само пишува јазол секој време. 924 00:45:55,270 --> 00:45:58,240 Добро, кој не даде - Да, Avica. 925 00:45:58,240 --> 00:46:01,520 >> Публика: Ако корен еднаква на еднаквите нула, враќање false. 926 00:46:01,520 --> 00:46:07,130 927 00:46:07,130 --> 00:46:09,490 >> ЈАСОН Hirschhorn: Велики, и тоа е нашата база случај. 928 00:46:09,490 --> 00:46:11,200 Следната линија на кодот. 929 00:46:11,200 --> 00:46:13,999 Некој кој не го даде мене линија од кодот уште? 930 00:46:13,999 --> 00:46:14,945 Да. 931 00:46:14,945 --> 00:46:23,360 >> ПУБЛИКАТА: корен стрелките јас е еднаква еднаква на i. 932 00:46:23,360 --> 00:46:27,260 Потоа се врати вистина. 933 00:46:27,260 --> 00:46:29,162 >> ЈАСОН Hirschhorn: Велики. 934 00:46:29,162 --> 00:46:32,048 Следната линија? 935 00:46:32,048 --> 00:46:32,790 Да. 936 00:46:32,790 --> 00:46:34,010 Некој друг? 937 00:46:34,010 --> 00:46:36,774 А потоа можете да одат понатаму. 938 00:46:36,774 --> 00:46:44,820 >> Публика: друго, ако коренот стрелка i е помалку отколку што се врати 939 00:46:44,820 --> 00:46:47,737 функција наречена најде коренот - 940 00:46:47,737 --> 00:46:50,611 >> ЈАСОН Hirschhorn: Извини. 941 00:46:50,611 --> 00:46:56,272 >> ПУБЛИКАТА: Враќање најде коренот укажува на лево запирка i. 942 00:46:56,272 --> 00:47:01,760 943 00:47:01,760 --> 00:47:08,440 >> ЈАСОН Hirschhorn: Значи, ако ри е поголема од работа во дрво, ние сакаме да 944 00:47:08,440 --> 00:47:09,573 оди на лево? 945 00:47:09,573 --> 00:47:11,790 >> ПУБЛИКАТА: Не, ја имав таа вклучен. 946 00:47:11,790 --> 00:47:13,040 >> ЈАСОН Hirschhorn: Кој? 947 00:47:13,040 --> 00:47:16,310 948 00:47:16,310 --> 00:47:16,950 >> ПУБЛИКАТА: Не, да. 949 00:47:16,950 --> 00:47:19,050 Имам помалку од знакот. 950 00:47:19,050 --> 00:47:22,890 >> ЈАСОН Hirschhorn: Точно, ако ри е помалку од она што е во коренот - 951 00:47:22,890 --> 00:47:25,660 нашите сегашни корен - тогаш ние сакаат да одат на левата страна. 952 00:47:25,660 --> 00:47:26,960 И она што е на последната линија, нели? 953 00:47:26,960 --> 00:47:30,930 >> ПУБЛИКАТА: Во суштина иста работа, освен вклучите поголема или 954 00:47:30,930 --> 00:47:34,690 еднаков на помалку од и од лево кон десно. 955 00:47:34,690 --> 00:47:43,590 956 00:47:43,590 --> 00:47:43,680 >> ЈАСОН Hirschhorn: Одлично. 957 00:47:43,680 --> 00:47:48,430 Дали некој има било какви прашања врска со ова? 958 00:47:48,430 --> 00:47:52,560 Па некои други работи што ќе биле точни е дека 959 00:47:52,560 --> 00:47:53,810 би можело да биде-ltiff. 960 00:47:53,810 --> 00:47:56,520 961 00:47:56,520 --> 00:47:59,520 Претпоставувам, технички, ниту еден од овие навистина, исто така треба да биде-ltiff. 962 00:47:59,520 --> 00:48:00,950 >> Исто така, има веројатно само еден случај овде. 963 00:48:00,950 --> 00:48:02,380 Па тоа е веројатно последниот случај. 964 00:48:02,380 --> 00:48:04,000 Вие дури и не треба дека-ltiff. 965 00:48:04,000 --> 00:48:06,160 Но, веројатно е добро да се напише тоа, да биде јасно. 966 00:48:06,160 --> 00:48:06,660 Да. 967 00:48:06,660 --> 00:48:09,200 >> ПУБЛИКАТА: Значи вие не мислам квиз - ако се направи грешки, на пример, 968 00:48:09,200 --> 00:48:11,725 во синтаксата - 969 00:48:11,725 --> 00:48:13,990 малку синтаксички грешки - 970 00:48:13,990 --> 00:48:17,810 како не, кои се земени во квизот? 971 00:48:17,810 --> 00:48:21,300 >> ЈАСОН Hirschhorn: Општо за квизот, мали синтаксички грешки или мали 972 00:48:21,300 --> 00:48:24,010 стил грешки не го изгубите поени. 973 00:48:24,010 --> 00:48:26,610 Значи, ако сте ја заборавиле точка-запирка Еве, тоа ќе биде во ред. 974 00:48:26,610 --> 00:48:30,290 Ако сте заборавиле да го затвори ова заграда, дека ќе биде во ред. 975 00:48:30,290 --> 00:48:34,880 >> Огромен синтаксички грешки кои ја менуваат функционална смисла на вашиот код 976 00:48:34,880 --> 00:48:37,600 драматично, може да добие симната поени за. 977 00:48:37,600 --> 00:48:40,330 Или генерално, само вие оценување за тоа дали или не вашиот 978 00:48:40,330 --> 00:48:42,150 кодот функции, дури и - 979 00:48:42,150 --> 00:48:44,830 не неговиот дизајн толку многу, а не нејзин стил. 980 00:48:44,830 --> 00:48:50,780 981 00:48:50,780 --> 00:48:55,480 >> Ајде сега кодот итеративен верзија на наодот. 982 00:48:55,480 --> 00:49:00,400 983 00:49:00,400 --> 00:49:03,450 Па затоа се случува да бидат прилично слични, но Секако дека постојат и ќе биде 984 00:49:03,450 --> 00:49:06,250 некои клучни разлики. 985 00:49:06,250 --> 00:49:09,160 Сепак, нашите pseudocode веројатно може да се оди - 986 00:49:09,160 --> 00:49:11,610 ние се уште може да потрае една линија на pseudocode и дознаам што 987 00:49:11,610 --> 00:49:14,160 линија е во овој случај. 988 00:49:14,160 --> 00:49:18,010 >> Па во итеративен верзија, што мислите, Јулија, треба 989 00:49:18,010 --> 00:49:19,260 биде на првата линија? 990 00:49:19,260 --> 00:49:23,100 991 00:49:23,100 --> 00:49:26,920 >> Публика: Повторно, во итеративен логичка, што треба да се постави за телефонска линија, нели? 992 00:49:26,920 --> 00:49:27,660 >> ЈАСОН Hirschhorn: OK. 993 00:49:27,660 --> 00:49:38,480 >> Публика: Значи за како, к, за x еднакво на 0, x е помала од i. 994 00:49:38,480 --> 00:49:42,260 Или не, x е помала од големината на дрвото. 995 00:49:42,260 --> 00:49:42,760 >> ЈАСОН Hirschhorn: Дрвото. 996 00:49:42,760 --> 00:49:46,660 Па ние навистина не знам од големината на дрво, а ние навистина не знам за 997 00:49:46,660 --> 00:49:48,900 колку пати може да се оди, така што е друг тип на јамка што може да биде 998 00:49:48,900 --> 00:49:50,150 подобро во овој случај? 999 00:49:50,150 --> 00:49:53,250 1000 00:49:53,250 --> 00:49:55,244 >> Публика: Ако друг? 1001 00:49:55,244 --> 00:49:57,070 >> ЈАСОН Hirschhorn: Ако друг не може да биде јамка. 1002 00:49:57,070 --> 00:49:58,935 Значи она што е еден вид на јамка ние само може да одат се додека не се сретнав со некои случај? 1003 00:49:58,935 --> 00:50:07,250 1004 00:50:07,250 --> 00:50:11,560 Што е единствениот друг вид на јамка во C покрај за телефонска линија? 1005 00:50:11,560 --> 00:50:11,930 >> ПУБЛИКАТА: Додека. 1006 00:50:11,930 --> 00:50:13,380 >> ЈАСОН Hirschhorn: Додека, точно. 1007 00:50:13,380 --> 00:50:16,430 Подолго време јамка, не треба да знаете како - 1008 00:50:16,430 --> 00:50:18,450 додека јамка и за телефонска линија може да го направи иста работа, но убаво нешто 1009 00:50:18,450 --> 00:50:21,500 за време јамка е ние не треба да знаете колку е голема нашата дрво. 1010 00:50:21,500 --> 00:50:23,060 Па ние ќе да се оди до што? 1011 00:50:23,060 --> 00:50:25,880 1012 00:50:25,880 --> 00:50:28,032 >> ПУБЛИКАТА: До изнесува големината на - 1013 00:50:28,032 --> 00:50:32,320 >> ЈАСОН Hirschhorn: Па, тоа е многу слична на нашата рекурзивен случај. 1014 00:50:32,320 --> 00:50:33,360 Па - 1015 00:50:33,360 --> 00:50:36,470 >> ПУБЛИКАТА: Додека корен Јас не го прави еднаков i. 1016 00:50:36,470 --> 00:50:37,620 >> ЈАСОН Hirschhorn: Тоа е навистина блиску. 1017 00:50:37,620 --> 00:50:39,430 Додека корен I - 1018 00:50:39,430 --> 00:50:40,610 ајде да се обидеме. 1019 00:50:40,610 --> 00:50:41,180 Не мислам дека [нечујни] 1020 00:50:41,180 --> 00:50:43,026 каде корен јас не еднакви i. 1021 00:50:43,026 --> 00:50:47,380 1022 00:50:47,380 --> 00:50:49,460 Ние би можеле да треба да ја промените во малку малку, но тоа звучи како тоа е прилично 1023 00:50:49,460 --> 00:50:50,160 добро, сега за сега. 1024 00:50:50,160 --> 00:50:51,710 Па ние ќе го направи тоа. 1025 00:50:51,710 --> 00:50:55,660 >> Исто така, се сеќавам, ние не може да се претпостави на прашањето. 1026 00:50:55,660 --> 00:50:57,880 Вие не претпостави дека коренот ќе биде не-нула. 1027 00:50:57,880 --> 00:51:01,914 Па што мислите дека многу Првото нешто што ние треба да направите е? 1028 00:51:01,914 --> 00:51:02,770 >> Публика: Само стори истото нешто како порано. 1029 00:51:02,770 --> 00:51:05,260 Ако коренот еднаква на еднаквите нула, враќање false. 1030 00:51:05,260 --> 00:51:11,030 1031 00:51:11,030 --> 00:51:12,130 >> ЈАСОН Hirschhorn: Велики. 1032 00:51:12,130 --> 00:51:13,820 Па тоа би можело да биде нула. 1033 00:51:13,820 --> 00:51:15,810 Затоа сакаме да се ослободиме на тоа веднаш. 1034 00:51:15,810 --> 00:51:19,560 И тогаш ние ќе провери дали корен јас не еднакви i. 1035 00:51:19,560 --> 00:51:24,480 Значи, да речеме ние сме во потрага во ова дрво за 3, корен јас не еднакви јас, сега 1036 00:51:24,480 --> 00:51:25,950 ние сме во нашата додека јамка. 1037 00:51:25,950 --> 00:51:27,500 Што сакаме да направите? 1038 00:51:27,500 --> 00:51:32,320 1039 00:51:32,320 --> 00:51:35,430 И повторно, тоа се случува да бидат прилично слична на нашата рекурзивен верзија. 1040 00:51:35,430 --> 00:51:36,230 Да. 1041 00:51:36,230 --> 00:51:40,470 >> ПУБЛИКАТА: Значи вие би сакале да iterate, или Продолжувам да одам долу на дрвото додека 1042 00:51:40,470 --> 00:51:42,400 корен не е еднаква на нула. 1043 00:51:42,400 --> 00:51:45,120 1044 00:51:45,120 --> 00:51:46,640 >> ЈАСОН Hirschhorn: Се додека корен не е еднаква на нула? 1045 00:51:46,640 --> 00:51:50,200 >> ПУБЛИКАТА: Коренот цртичка јас не е еднаква на нула. 1046 00:51:50,200 --> 00:51:51,220 Само коренот, да. 1047 00:51:51,220 --> 00:51:52,920 Како долго како корен е не се еднакви на нула. 1048 00:51:52,920 --> 00:51:54,240 >> ЈАСОН Hirschhorn: Значи сакате да го промените ова во корен 1049 00:51:54,240 --> 00:51:56,590 не е еднакво на нула? 1050 00:51:56,590 --> 00:51:59,020 >> Публика: Да. 1051 00:51:59,020 --> 00:52:00,800 >> Публика: Би можеле да се комбинираат ова, нели? 1052 00:52:00,800 --> 00:52:02,990 Ние не треба, ако, на почетокот. 1053 00:52:02,990 --> 00:52:05,180 >> ЈАСОН Hirschhorn: Добро, па ако ние Дон '- 1054 00:52:05,180 --> 00:52:08,140 ако ние ги комбинирате, па ние ќе да се направи додека корен не е еднакво на нула, и 1055 00:52:08,140 --> 00:52:10,800 ако коренот се случува да биде null на на почетокот, што ќе правиме овде? 1056 00:52:10,800 --> 00:52:11,450 >> ПУБЛИКАТА: Враќање лажни. 1057 00:52:11,450 --> 00:52:12,730 >> ЈАСОН Hirschhorn: Велики. 1058 00:52:12,730 --> 00:52:14,110 Значи двата начини веројатно би работеле. 1059 00:52:14,110 --> 00:52:15,645 Ова е еден поинаков начин, и ова е комбинација тоа. 1060 00:52:15,645 --> 00:52:18,950 Но, повторно, ако не било начин, ние сме нема да ги тргнеме дизајн 1061 00:52:18,950 --> 00:52:19,800 укажува на квизот. 1062 00:52:19,800 --> 00:52:21,020 Но ова изгледа добро. 1063 00:52:21,020 --> 00:52:23,940 >> Така, додека корен не е еднакво нула, што е првото 1064 00:52:23,940 --> 00:52:25,400 нешто што сакате да се провери? 1065 00:52:25,400 --> 00:52:26,330 Некој друг? 1066 00:52:26,330 --> 00:52:29,720 Нула, што е првото нешто? 1067 00:52:29,720 --> 00:52:32,850 >> Публика: Ако ри е помалку од - 1068 00:52:32,850 --> 00:52:36,140 ох, претпоставувам, ако ние веќе го најде тоа во корен. 1069 00:52:36,140 --> 00:52:40,830 Значи, ако коренот стрелките i е еднаква на i - 1070 00:52:40,830 --> 00:52:40,990 >> ЈАСОН Hirschhorn: Молам? 1071 00:52:40,990 --> 00:52:45,840 >> Публика: Ако корен стрелка i изнесува еднаква на i - 1072 00:52:45,840 --> 00:52:47,090 >> ЈАСОН Hirschhorn: Што ќе правиме? 1073 00:52:47,090 --> 00:52:50,300 1074 00:52:50,300 --> 00:52:51,550 >> ПУБЛИКАТА: Враќање вистина. 1075 00:52:51,550 --> 00:52:58,850 1076 00:52:58,850 --> 00:52:59,280 >> ЈАСОН Hirschhorn: Велики. 1077 00:52:59,280 --> 00:53:00,530 И она што е следно? 1078 00:53:00,530 --> 00:53:04,510 1079 00:53:04,510 --> 00:53:06,843 Џеф, што е следната линија на кодот? 1080 00:53:06,843 --> 00:53:16,190 >> ПУБЛИКАТА: Ако е помалку од корен стрелка јас, тогаш корен еднаква на коренот стрелка лево. 1081 00:53:16,190 --> 00:53:21,550 >> ЈАСОН Hirschhorn: корен еднаквите корен стрелка лево. 1082 00:53:21,550 --> 00:53:24,530 Па тоа е веројатно најголемата Разликата тука во овој итеративен 1083 00:53:24,530 --> 00:53:26,600 верзија за разлика од рекурзивен верзија. 1084 00:53:26,600 --> 00:53:28,970 Рекурзивен верзија, ние јавете се во функција повторно. 1085 00:53:28,970 --> 00:53:32,640 Ние ќе се ажурирање корен кога ние го нарекуваме нова функција. 1086 00:53:32,640 --> 00:53:34,170 Тука ние не сме нарекувајќи нова функција. 1087 00:53:34,170 --> 00:53:37,610 Ние сме едноставно само ажурирање корен во оваа функција. 1088 00:53:37,610 --> 00:53:38,880 Тоа е одличен. 1089 00:53:38,880 --> 00:53:40,730 И она што е на последната линија на кодот? 1090 00:53:40,730 --> 00:53:43,950 1091 00:53:43,950 --> 00:53:44,880 Да, Марио? 1092 00:53:44,880 --> 00:53:48,290 >> Публика: Друго корен еднаквите корен стрелките во право. 1093 00:53:48,290 --> 00:53:49,492 >> ЈАСОН Hirschhorn: Молам? 1094 00:53:49,492 --> 00:53:52,340 >> ПУБЛИКАТА: корен еднаквите корен стрелките во право. 1095 00:53:52,340 --> 00:53:55,590 1096 00:53:55,590 --> 00:53:57,140 >> ЈАСОН Hirschhorn: Може ли, исто така, напише нешто како ова? 1097 00:53:57,140 --> 00:54:02,786 1098 00:54:02,786 --> 00:54:03,890 >> Публика: Јас немам идеја. 1099 00:54:03,890 --> 00:54:05,140 >> ЈАСОН Hirschhorn: Вие не може. 1100 00:54:05,140 --> 00:54:07,302 1101 00:54:07,302 --> 00:54:08,270 Не можете да направите плус еднакви. 1102 00:54:08,270 --> 00:54:10,780 Добро, така што ова изгледа добро. 1103 00:54:10,780 --> 00:54:13,620 Зошто не можеме само го направи тоа за да го исчисти. 1104 00:54:13,620 --> 00:54:15,220 Ова изгледа одлично, и тоа ќе работи. 1105 00:54:15,220 --> 00:54:16,920 И ние би се пробие. 1106 00:54:16,920 --> 00:54:21,460 >> Ако корен левата беше null или корен право беше празно, ќе дојде до тука. 1107 00:54:21,460 --> 00:54:22,470 Корен ќе биде еднаква на нула. 1108 00:54:22,470 --> 00:54:24,270 Ние би се пробие на нашите јамка, и ние би враќање false. 1109 00:54:24,270 --> 00:54:26,280 Па кога ќе се пробие на јамка, се враќаме лажни. 1110 00:54:26,280 --> 00:54:29,520 1111 00:54:29,520 --> 00:54:32,793 >> И повторно, додека јамка беше совршена тука, бидејќи ние не знаеме како 1112 00:54:32,793 --> 00:54:33,850 голема нашите дрво. 1113 00:54:33,850 --> 00:54:36,460 Се обидовме да ја напише за телефонска линија, но ние реализира имаш да дознаам како 1114 00:54:36,460 --> 00:54:37,410 голема тоа е пред време. 1115 00:54:37,410 --> 00:54:38,720 Да. 1116 00:54:38,720 --> 00:54:41,790 >> Публика: Ако ова не беа бинарен Барај дрво, тоа ќе биде вистинска математика-Y 1117 00:54:41,790 --> 00:54:44,220 да го пишувам iteratively, нели? 1118 00:54:44,220 --> 00:54:47,170 Како, ако тоа беше дрво, но не е задолжително - 1119 00:54:47,170 --> 00:54:49,730 па тоа не е сите помали од левата страна, и сите поголеми десно. 1120 00:54:49,730 --> 00:54:52,540 Тоа ќе биде навистина тешко да iterate преку тоа, нели? 1121 00:54:52,540 --> 00:54:55,720 Ние ќе мора да се спаси она што беше порано на во дрво и се врати, 1122 00:54:55,720 --> 00:54:56,970 и работи како што. 1123 00:54:56,970 --> 00:54:59,690 1124 00:54:59,690 --> 00:55:02,010 >> ЈАСОН Hirschhorn: Ако тоа не беше бинарен Барај дрво, ако тоа беше само една 1125 00:55:02,010 --> 00:55:04,740 дрво и работите не беа подредени вака - 1126 00:55:04,740 --> 00:55:07,440 и сфативме порано, кога Ана ни помагаше дека правејќи го 1127 00:55:07,440 --> 00:55:08,800 сортирани ни помага многу - 1128 00:55:08,800 --> 00:55:12,610 ние ќе треба да, да, секогаш ги зачувате каде што претходно беа. 1129 00:55:12,610 --> 00:55:14,430 Но може да има многу каде што бевме previouslys. 1130 00:55:14,430 --> 00:55:17,730 Не може да има многу родител јазли. 1131 00:55:17,730 --> 00:55:22,530 >> Веројатно најдобар начин да го направите тоа би биде да се задржи туркање работи врз некои 1132 00:55:22,530 --> 00:55:24,170 тип на магацинот или задача. 1133 00:55:24,170 --> 00:55:26,030 Вие никогаш не ќе треба да кодот овој затоа што тоа е тешко проблем. 1134 00:55:26,030 --> 00:55:30,820 Но те турнам некои работи врз оџакот или задача, а потоа pop ги исклучи и 1135 00:55:30,820 --> 00:55:31,890 потоа да ги оцени. 1136 00:55:31,890 --> 00:55:34,200 >> А потоа имаат некои други, каде што нешто ти си, всушност ставање на јазли и 1137 00:55:34,200 --> 00:55:36,090 а потоа се создаде тоа, а потоа пребарување низ тоа. 1138 00:55:36,090 --> 00:55:38,700 Тоа може да биде најдобар начин да го направи тоа. 1139 00:55:38,700 --> 00:55:42,410 Добро, било какви прашања во врска со овој проблем? 1140 00:55:42,410 --> 00:55:44,670 >> Публика: Ова е На поврзани со белешка. 1141 00:55:44,670 --> 00:55:50,460 Ние ќе мора да се споредат рок пати за хеш табели, бинарен 1142 00:55:50,460 --> 00:55:52,160 Барај дрвја, и така натаму? 1143 00:55:52,160 --> 00:55:54,310 >> ЈАСОН Hirschhorn: Веројатно. 1144 00:55:54,310 --> 00:55:56,150 Па ајде го направат тоа навистина брзо. 1145 00:55:56,150 --> 00:55:58,490 Стартувај време за хеш табелата - 1146 00:55:58,490 --> 00:55:59,090 она што се другите? 1147 00:55:59,090 --> 00:56:00,050 Бинарно дрво? 1148 00:56:00,050 --> 00:56:02,920 >> ПУБЛИКАТА: Линк листи. 1149 00:56:02,920 --> 00:56:04,780 >> ЈАСОН Hirschhorn: Добро, ајде да направиме внесување. 1150 00:56:04,780 --> 00:56:09,980 Што е голема О на вметнете на хаш табелата? 1151 00:56:09,980 --> 00:56:13,080 1152 00:56:13,080 --> 00:56:15,285 Кои се претпоставките што ги правите? 1153 00:56:15,285 --> 00:56:17,760 >> ПУБЛИКАТА: Ти си вметнување на на почетокот на врската листа. 1154 00:56:17,760 --> 00:56:19,860 >> ЈАСОН Hirschhorn: Веројатно првиот Претпоставката е дека нема судири. 1155 00:56:19,860 --> 00:56:22,340 Ако не постојат судири, а потоа вметнување време е еден. 1156 00:56:22,340 --> 00:56:26,560 Ако има судири, и вие ќе бидете прави посебен врзувањето и вметнување 1157 00:56:26,560 --> 00:56:31,880 на почетокот на врската листа, потоа вметнување е исто така константна. 1158 00:56:31,880 --> 00:56:34,700 >> Ако правиш хаш табелата, но вие имаат различен метод на справување 1159 00:56:34,700 --> 00:56:36,040 со судири, она што е друг метод? 1160 00:56:36,040 --> 00:56:41,580 1161 00:56:41,580 --> 00:56:42,960 Што е различен метод за справување со 1162 00:56:42,960 --> 00:56:44,205 судир во хеш табелата? 1163 00:56:44,205 --> 00:56:44,915 >> Публика: линеарно програмирање. 1164 00:56:44,915 --> 00:56:45,540 >> ЈАСОН Hirschhorn: линеарно програмирање. 1165 00:56:45,540 --> 00:56:47,770 Па ние ќе ги бараме за следната отворена самото место. 1166 00:56:47,770 --> 00:56:50,390 Тоа не е постојана вметнување време. 1167 00:56:50,390 --> 00:56:52,266 Вие би можеле да мора да одат преку на целата маса, така што 1168 00:56:52,266 --> 00:56:53,936 би можело да биде големо O на n. 1169 00:56:53,936 --> 00:56:54,740 Да. 1170 00:56:54,740 --> 00:56:57,690 >> Публика: Инаку само врзувањето? 1171 00:56:57,690 --> 00:57:00,160 >> ЈАСОН Hirschhorn: Рековме посебна врзувањето. 1172 00:57:00,160 --> 00:57:00,720 Тоа беше првиот. 1173 00:57:00,720 --> 00:57:01,560 Тоа е она што го линкот листа. 1174 00:57:01,560 --> 00:57:03,720 Фенси име е посебен врзувањето. 1175 00:57:03,720 --> 00:57:06,880 Тоа може да биде било кој тип на листа структура ние се случи да се направи во врска листа. 1176 00:57:06,880 --> 00:57:10,490 >> Значи, повторно, вметнување на хеш табелата би можело да биде постојана време. 1177 00:57:10,490 --> 00:57:13,160 Она што за вметнување на полнач на дното? 1178 00:57:13,160 --> 00:57:19,260 1179 00:57:19,260 --> 00:57:20,640 >> Публика: Зарем тоа не е постојан? 1180 00:57:20,640 --> 00:57:21,530 >> ЈАСОН Hirschhorn: Тоа е постојана време. 1181 00:57:21,530 --> 00:57:23,420 Сте само го туркав натаму. 1182 00:57:23,420 --> 00:57:24,120 OK. 1183 00:57:24,120 --> 00:57:25,380 Вметнување, што беа останатите? 1184 00:57:25,380 --> 00:57:27,100 На проба? 1185 00:57:27,100 --> 00:57:30,252 Што е Биг О на вметнување на проба? 1186 00:57:30,252 --> 00:57:32,808 >> ПУБЛИКАТА: Должина е константна. 1187 00:57:32,808 --> 00:57:34,560 Должината на најдолгата - 1188 00:57:34,560 --> 00:57:36,998 должината на збор сте вметнување. 1189 00:57:36,998 --> 00:57:38,210 >> ЈАСОН Hirschhorn: Молам? 1190 00:57:38,210 --> 00:57:39,120 Чекај, па она што не слушам? 1191 00:57:39,120 --> 00:57:40,260 Ти рече - што велите вие? 1192 00:57:40,260 --> 00:57:41,650 Каков беше вашиот одговор, Маркус? 1193 00:57:41,650 --> 00:57:43,640 >> Публика: Должината на зборот сте вметнување на знаци, 1194 00:57:43,640 --> 00:57:45,480 претпоставувајќи дека е лик проба. 1195 00:57:45,480 --> 00:57:46,840 >> ЈАСОН Hirschhorn: Добро, така што должината на зборот. 1196 00:57:46,840 --> 00:57:49,500 Ќе се направи претпоставка дека тоа е низа од карактери. 1197 00:57:49,500 --> 00:57:51,930 Ти рече нешто различно, иако. 1198 00:57:51,930 --> 00:57:55,490 Ти рече должината на најдолгиот збор. 1199 00:57:55,490 --> 00:57:57,600 >> Публика: Тоа е само постојана, нели? 1200 00:57:57,600 --> 00:57:58,440 >> ЈАСОН Hirschhorn: Зошто би тоа да биде постојан? 1201 00:57:58,440 --> 00:58:00,970 >> Публика: Како, ако имате потреба при користење големо O нотација, тогаш тоа не се разликуваат врз основа 1202 00:58:00,970 --> 00:58:04,680 на број на работи кои се веќе во обид. 1203 00:58:04,680 --> 00:58:07,344 >> ЈАСОН Hirschhorn: Значи, ние би велат дека тоа е постојана време. 1204 00:58:07,344 --> 00:58:11,840 Тоа е постојана вметнување, и тоа е затоа што оваа идеја - 1205 00:58:11,840 --> 00:58:14,820 велат дека ние имаме еден збор тоа е 45, или збор кој е 60, што 1206 00:58:14,820 --> 00:58:16,800 има константен број. 1207 00:58:16,800 --> 00:58:21,050 И тоа само ќе се вметнат во постојан време. 1208 00:58:21,050 --> 00:58:26,060 >> Во пракса, сепак, тоа не би било, очигледно, се случи во една милисекунда, 1209 00:58:26,060 --> 00:58:26,590 на пример. 1210 00:58:26,590 --> 00:58:28,880 Но, ние би рекле големите O е константна за да се проба. 1211 00:58:28,880 --> 00:58:31,330 И тоа е една од неговите најголемите предности. 1212 00:58:31,330 --> 00:58:33,330 >> Она што за вметнување во врска листа? 1213 00:58:33,330 --> 00:58:37,220 Само генерички, сортирани листа со линкови? 1214 00:58:37,220 --> 00:58:37,700 Да. 1215 00:58:37,700 --> 00:58:38,530 >> ПУБЛИКАТА: Имав прашање. 1216 00:58:38,530 --> 00:58:42,670 На тестот, ќе некогаш да побарате од нас за вметнување времето што е четири чекори, 1217 00:58:42,670 --> 00:58:43,270 или нешто? 1218 00:58:43,270 --> 00:58:44,300 Или тоа е само - 1219 00:58:44,300 --> 00:58:47,670 кога ќе се каже вметнување време е еден, тоа само значи постојана време? 1220 00:58:47,670 --> 00:58:49,770 >> ЈАСОН Hirschhorn: Да, тие би секогаш прашуваат, дали е голема О од n? 1221 00:58:49,770 --> 00:58:51,440 Биг О на најавите n? 1222 00:58:51,440 --> 00:58:53,960 N квадрат константа. 1223 00:58:53,960 --> 00:58:56,520 Тие се навистина само оние што ви треба да знаете. 1224 00:58:56,520 --> 00:58:58,420 Што е со вметнување врз сортирани листа со линкови? 1225 00:58:58,420 --> 00:58:59,440 >> ПУБЛИКАТА: Имав прашање - 1226 00:58:59,440 --> 00:58:59,980 прашање - 1227 00:58:59,980 --> 00:59:01,060 >> ЈАСОН Hirschhorn: Што е одговорот на тоа прашање, иако? 1228 00:59:01,060 --> 00:59:02,120 >> Публика: Чекај, што го побара од вас? 1229 00:59:02,120 --> 00:59:06,750 >> ЈАСОН Hirschhorn: Која е голема О на вметнување во сортирани листа со линкови? 1230 00:59:06,750 --> 00:59:07,070 >> Публика: Еден? 1231 00:59:07,070 --> 00:59:09,400 Не чекајте, Не чекај, n. 1232 00:59:09,400 --> 00:59:11,420 >> ЈАСОН Hirschhorn: Н Покрај врската листа. 1233 00:59:11,420 --> 00:59:12,706 И она што е вашето прашање? 1234 00:59:12,706 --> 00:59:16,440 >> ПУБЛИКАТА: Значи ќе ти напишам o на k или o 1 за - 1235 00:59:16,440 --> 00:59:18,150 >> ЈАСОН Hirschhorn: О. 1236 00:59:18,150 --> 00:59:21,830 Јас ќе напише o на 1, веројатно. 1237 00:59:21,830 --> 00:59:24,160 Имаше една друга податочна структура кои би биле добри. 1238 00:59:24,160 --> 00:59:25,730 Дрво, бинарна пребарување дрво. 1239 00:59:25,730 --> 00:59:27,510 Што е вметнување на бинарни пребарување дрво? 1240 00:59:27,510 --> 00:59:31,190 1241 00:59:31,190 --> 00:59:33,900 >> ПУБЛИКАТА: Најавете. 1242 00:59:33,900 --> 00:59:39,260 >> ЈАСОН Hirschhorn: Значи, она што е најлошо случај во бинарен пребарување дрво? 1243 00:59:39,260 --> 00:59:45,350 Па ако се случи да започне во 5, и секој број е поголем од 5, а потоа 1244 00:59:45,350 --> 00:59:48,760 ние имаме 5, 7, 9, 11, итн. 1245 00:59:48,760 --> 00:59:52,255 Во овој случај, тоа е во основа, само линк листа, и ние треба да го вметнете сите 1246 00:59:52,255 --> 00:59:52,680 начинот на кој на крајот. 1247 00:59:52,680 --> 00:59:54,350 Па тоа е голема О од n. 1248 00:59:54,350 --> 00:59:57,720 >> Тоа би можело да биде наш најлош случај на бинарни пребарување дрво. 1249 00:59:57,720 --> 01:00:00,890 Очигледно, вие никогаш не ќе изгради бинарен пребарување дрво со 5 во 1250 01:00:00,890 --> 01:00:04,270 средината, знаејќи 5 би биде најмал број. 1251 01:00:04,270 --> 01:00:08,030 Но, тоа може да биде, ако сте почнувајќи од нула. 1252 01:00:08,030 --> 01:00:10,980 Било какви прашања на оваа пред да да се движи кон едно друго прашање? 1253 01:00:10,980 --> 01:00:11,560 Тоа беше добро прашање. 1254 01:00:11,560 --> 01:00:15,100 Јас ќе знам големо O на - 1255 01:00:15,100 --> 01:00:18,620 >> Публика: Што во врска со пребарувањето за оние четири? 1256 01:00:18,620 --> 01:00:20,400 >> ЈАСОН Hirschhorn: Дефинитивно ние се пребарување и подредување. 1257 01:00:20,400 --> 01:00:22,160 Ние го сторивме сите оние алгоритми, нели. 1258 01:00:22,160 --> 01:00:23,390 Чекај, беше дека за Квиз 1? 1259 01:00:23,390 --> 01:00:23,980 Беше дека притаени - 1260 01:00:23,980 --> 01:00:25,860 го имате дека прашање на Квиз 1? 1261 01:00:25,860 --> 01:00:29,650 Големите О траење на бинарни пребарување, вметнување вид, меур вид? 1262 01:00:29,650 --> 01:00:30,160 >> Публика: Да. 1263 01:00:30,160 --> 01:00:32,790 >> ЈАСОН Hirschhorn: Ако сте ја имале таа прашање на Квиз 0, шансите се дека нема да 1264 01:00:32,790 --> 01:00:35,180 го добиете истиот точната прашање на Квиз 1. 1265 01:00:35,180 --> 01:00:36,300 Може да биде уште добро да се знаат тие. 1266 01:00:36,300 --> 01:00:38,520 Се надевам да знаете GH веќе. 1267 01:00:38,520 --> 01:00:40,740 >> Но и другите логаритамска runtimes веројатно се добри да се знае. 1268 01:00:40,740 --> 01:00:42,890 Работи кои не беа опфатени на Квиз 0. 1269 01:00:42,890 --> 01:00:47,300 Како и сите овие оператори на овие апстрактни типови на податоци. 1270 01:00:47,300 --> 01:00:50,760 >> Добро, ајде да се движат натаму. 1271 01:00:50,760 --> 01:00:52,190 Оваа треба да биде прилично брзо. 1272 01:00:52,190 --> 01:00:56,170 И ова е нов јазик, ние не треба всушност кодирани во пред. 1273 01:00:56,170 --> 01:00:59,300 Ова е прашање прашува да код во PHP. 1274 01:00:59,300 --> 01:01:01,950 Па сметаат дека низа PHP подолу. 1275 01:01:01,950 --> 01:01:06,150 Напише PHP и / или HTML кодови, како што тоа излези на две колони маса со TFS 1276 01:01:06,150 --> 01:01:08,810 имиња и куќи. 1277 01:01:08,810 --> 01:01:11,600 >> Никогаш не сте направиле тоа порано, овој специфичен проблем. 1278 01:01:11,600 --> 01:01:16,270 Но ова треба да биде многу запознаени со што направи во проблем постави 7. 1279 01:01:16,270 --> 01:01:21,250 Па јас ќе бидам подготвен да се обложи дека ќе биде побара да кодот нешто во PHP што 1280 01:01:21,250 --> 01:01:23,880 е многу сличен на она што правеше во проблем постави 7. 1281 01:01:23,880 --> 01:01:26,300 >> Прво, низа не е таа специфична. 1282 01:01:26,300 --> 01:01:28,140 Каков вид на низа е ова? 1283 01:01:28,140 --> 01:01:29,080 >> Публика: Асоцијативни. 1284 01:01:29,080 --> 01:01:31,250 >> ЈАСОН Hirschhorn: Тоа е асоцијативна низа. 1285 01:01:31,250 --> 01:01:33,750 И она што е разликата помеѓу асоцијативна низа и објектот? 1286 01:01:33,750 --> 01:01:41,780 1287 01:01:41,780 --> 01:01:44,857 >> Публика: Еден објект низа има индекс на цели броеви, а асоцијативна низа 1288 01:01:44,857 --> 01:01:47,814 е индекс на стринг, или нешто слично. 1289 01:01:47,814 --> 01:01:50,570 1290 01:01:50,570 --> 01:01:54,880 >> ЈАСОН Hirschhorn: Значи низа на објекти ќе имаат индекси на 1291 01:01:54,880 --> 01:01:57,090 цели броеви, но објектот има полиња. 1292 01:01:57,090 --> 01:02:01,590 Таа има оние области имиња како име, куќа, студент. 1293 01:02:01,590 --> 01:02:03,720 Дали имате идеја? 1294 01:02:03,720 --> 01:02:06,630 >> ПУБЛИКАТА: Па, асоцијативниот низа е во PHP, нели? 1295 01:02:06,630 --> 01:02:07,880 И објектот е во вклучите Javascript-? 1296 01:02:07,880 --> 01:02:12,330 1297 01:02:12,330 --> 01:02:14,820 >> ЈАСОН Hirschhorn: Искрено, не постои вистинска разлика меѓу двете. 1298 01:02:14,820 --> 01:02:19,540 И двете имаат низи како на клучеви, и може да имаат во основа ништо што се вредност. 1299 01:02:19,540 --> 01:02:21,250 Различни јазици јавете се на еден нешто асоцијативна низа, 1300 01:02:21,250 --> 01:02:22,750 едно нешто објектот. 1301 01:02:22,750 --> 01:02:25,960 Па искрено, не постои вистинска разлика, но има сигурно некои 1302 01:02:25,960 --> 01:02:27,730 синтаксички разлики помеѓу двете. 1303 01:02:27,730 --> 01:02:28,200 Да. 1304 01:02:28,200 --> 01:02:33,580 >> Публика: Така е објект, исто така кодирани под хаубата како хаш табелата, тогаш? 1305 01:02:33,580 --> 01:02:35,796 >> ЈАСОН Hirschhorn: Што мислите значи, кодирани под хауба? 1306 01:02:35,796 --> 01:02:38,017 >> Публика: Ни беше кажано дека асоцијативна низа беше технички 1307 01:02:38,017 --> 01:02:39,960 хаш табелата. 1308 01:02:39,960 --> 01:02:44,510 Така е објект, исто така технички хеш табелата? 1309 01:02:44,510 --> 01:02:45,350 >> ЈАСОН Hirschhorn: Јас не одам да одговори на тоа прашање. 1310 01:02:45,350 --> 01:02:46,600 Јас ќе се вратам на вас за тоа. 1311 01:02:46,600 --> 01:02:48,980 Но, јас не би помислил на или на оние како што. 1312 01:02:48,980 --> 01:02:53,790 Но, на било кој начин, асоцијативна низа и објект, генерално, луѓето ги користат овие 1313 01:02:53,790 --> 01:02:54,910 условите мешаат. 1314 01:02:54,910 --> 01:02:57,630 Во овој случај, кул дел е можете да го користите копчињата. 1315 01:02:57,630 --> 01:03:00,580 Жици што се копчињата, отколку само едноставни броеви. 1316 01:03:00,580 --> 01:03:02,070 >> Па јас сум се зборува за ова за некое време. 1317 01:03:02,070 --> 01:03:04,090 Се надевам, некои луѓе имаат добивано започнете на ова. 1318 01:03:04,090 --> 01:03:08,050 Ние ќе се пишуваат некои PHP и HTML кодот, така што ние добие две колони 1319 01:03:08,050 --> 01:03:11,830 маса со TFS имиња и куќи. 1320 01:03:11,830 --> 01:03:15,380 >> Добро, јас исто така би сакал насловот ред на оваа табела. 1321 01:03:15,380 --> 01:03:18,410 Па ќе одам да се добие директно во оваа. 1322 01:03:18,410 --> 01:03:20,770 Ние ќе се поднесе, нов, и ние ќе - 1323 01:03:20,770 --> 01:03:27,780 1324 01:03:27,780 --> 01:03:28,320 >> OK. 1325 01:03:28,320 --> 01:03:29,970 Како можам да започнете маса? 1326 01:03:29,970 --> 01:03:32,090 Што е ознака, Мајкл, да започнете на табелата? 1327 01:03:32,090 --> 01:03:32,890 >> ПУБЛИКАТА: Табела. 1328 01:03:32,890 --> 01:03:34,020 >> ЈАСОН Hirschhorn: Табела. 1329 01:03:34,020 --> 01:03:37,870 И ако јас се отвори ознака, што друго ми е потребно? 1330 01:03:37,870 --> 01:03:39,810 >> Публика: А главата? 1331 01:03:39,810 --> 01:03:41,040 Или, претпоставувам, класа. 1332 01:03:41,040 --> 01:03:41,730 >> ЈАСОН Hirschhorn: Значи, ми е жал. 1333 01:03:41,730 --> 01:03:45,430 Претпоставуваме дека веќе сме писмени doctab, HTML, и сето тоа. 1334 01:03:45,430 --> 01:03:50,230 Но, ако јас ја отворите оваа маса таг, што друго не ми треба да се напише? 1335 01:03:50,230 --> 01:03:53,450 за потврда HTML? 1336 01:03:53,450 --> 01:03:55,000 >> ПУБЛИКАТА: Затвори го. 1337 01:03:55,000 --> 01:03:56,050 >> ЈАСОН Hirschhorn: Затвори таг. 1338 01:03:56,050 --> 01:03:57,575 Како можам да се напише во близина на табелата таг? 1339 01:03:57,575 --> 01:03:59,580 >> ПУБЛИКАТА: Dot намали масата. 1340 01:03:59,580 --> 01:04:00,960 >> ЈАСОН Hirschhorn: Slash маса, одлично. 1341 01:04:00,960 --> 01:04:02,730 Веројатно има смисла да напишете и на оние заедно, бидејќи 1342 01:04:02,730 --> 01:04:03,870 имаш да го направи тоа. 1343 01:04:03,870 --> 01:04:08,575 Добро, ако сакам насловот ред, како да Јас пишувам една насловот ред со наслови? 1344 01:04:08,575 --> 01:04:11,650 1345 01:04:11,650 --> 01:04:19,290 >> Публика: Тоа е помалку од 10 час во близина - 1346 01:04:19,290 --> 01:04:21,550 TR, да. 1347 01:04:21,550 --> 01:04:22,100 >> ЈАСОН Hirschhorn: TR? 1348 01:04:22,100 --> 01:04:25,080 >> ПУБЛИКАТА: Тогаш истото, црта, да. 1349 01:04:25,080 --> 01:04:26,610 >> ЈАСОН Hirschhorn: Добро, и ми даде две колони. 1350 01:04:26,610 --> 01:04:30,100 1351 01:04:30,100 --> 01:04:33,210 >> ПУБЛИКАТА: T D? 1352 01:04:33,210 --> 01:04:34,460 >> ЈАСОН Hirschhorn: OK. 1353 01:04:34,460 --> 01:04:37,730 1354 01:04:37,730 --> 01:04:39,520 Сакам две колони. 1355 01:04:39,520 --> 01:04:40,960 Дали ова ми даде две колони? 1356 01:04:40,960 --> 01:04:43,880 Колку колони е ова? 1357 01:04:43,880 --> 01:04:45,920 Еден. 1358 01:04:45,920 --> 01:04:47,170 Па ајде да копирате и залепите ова. 1359 01:04:47,170 --> 01:04:59,750 1360 01:04:59,750 --> 01:05:03,390 >> Па така всушност, на квизот, сите овој код дека ние досега го напишав беше 1361 01:05:03,390 --> 01:05:04,710 всушност ви е дадена. 1362 01:05:04,710 --> 01:05:06,200 Но, треба да веројатно уште знаете како да го пишувам. 1363 01:05:06,200 --> 01:05:06,470 Да. 1364 01:05:06,470 --> 01:05:10,636 >> ПУБЛИКАТА: Вашиот дом е помеѓу два. 1365 01:05:10,636 --> 01:05:11,130 >> ЈАСОН Hirschhorn: бум. 1366 01:05:11,130 --> 01:05:12,720 Таа треба да оди таму, нели? 1367 01:05:12,720 --> 01:05:14,600 Добар повик. 1368 01:05:14,600 --> 01:05:17,760 Па уште еднаш, сето ова кодот е всушност дадени за да ви од вистински квиз. 1369 01:05:17,760 --> 01:05:19,570 Но тоа е забавно да се пишуваат, и вие треба да знаете како да го пишувам. 1370 01:05:19,570 --> 01:05:23,640 Значи ова е местото каде што ви треба да ја стартувате вашиот код. 1371 01:05:23,640 --> 01:05:25,150 Што треба да напишете токму тука? 1372 01:05:25,150 --> 01:05:28,640 1373 01:05:28,640 --> 01:05:30,565 >> Жал ми е, јас треба да се промени името на оваа датотека. 1374 01:05:30,565 --> 01:05:41,180 1375 01:05:41,180 --> 01:05:44,270 Па ние го зачувани во. HTML датотека, не е во. PHP фајл. 1376 01:05:44,270 --> 01:05:47,030 Овие работи би значело ништо во. PHP фајл. 1377 01:05:47,030 --> 01:05:48,500 Па ние сме во. HTML датотека. 1378 01:05:48,500 --> 01:05:50,090 Што е првото нешто Ми треба да се напише? 1379 01:05:50,090 --> 01:05:52,990 Сакам да се стави некои PHP код во HTML. 1380 01:05:52,990 --> 01:05:57,300 >> ПУБЛИКАТА: PHP, како уште еден морков и прашалник PHP, нели? 1381 01:05:57,300 --> 01:05:58,310 >> ЈАСОН Hirschhorn: Велики. 1382 01:05:58,310 --> 01:05:59,360 И како можам да се стави крај тоа? 1383 01:05:59,360 --> 01:06:02,510 >> Публика: Со прашалник. 1384 01:06:02,510 --> 01:06:03,120 >> ЈАСОН Hirschhorn: Тоа е одлично. 1385 01:06:03,120 --> 01:06:07,090 Тоа е првото нешто што треба ако сакам да се стави некои PHP код тука. 1386 01:06:07,090 --> 01:06:11,210 >> Публика:. Мислев на PHP датотеката може да потрае HTML. 1387 01:06:11,210 --> 01:06:12,290 >> ЈАСОН Hirschhorn: Да. 1388 01:06:12,290 --> 01:06:15,330 А. PHP фајл може да потрае неколку HTML и бидат прикажани. 1389 01:06:15,330 --> 01:06:16,450 Тоа ми беше лошо. 1390 01:06:16,450 --> 01:06:18,300 Јас бев само се обидува да го имитираат она што беше на квизот. 1391 01:06:18,300 --> 01:06:21,910 1392 01:06:21,910 --> 01:06:24,720 >> Добро, жал да те збуни. 1393 01:06:24,720 --> 01:06:25,550 Да, practice.HTML. 1394 01:06:25,550 --> 01:06:27,340 Сега ние ќе треба да се стави некои PHP код внатре 1395 01:06:27,340 --> 01:06:30,530 Што е на првата линија на PHP код да пишувам? 1396 01:06:30,530 --> 01:06:33,360 Одам да поминат низ оваа низа и да ја направат во табелата. 1397 01:06:33,360 --> 01:06:34,600 Да. 1398 01:06:34,600 --> 01:06:37,160 >> Публика: Можете да ги користите А за H јамка или за телефонска линија. 1399 01:06:37,160 --> 01:06:38,415 >> ЈАСОН Hirschhorn: Добро, што Дали сакате да ги користите? 1400 01:06:38,415 --> 01:06:40,720 >> Публика: Јас ќе го користи за телефонска линија. 1401 01:06:40,720 --> 01:06:48,700 За, а потоа да го направите знакот за долар i изнесува 0 запирка долар 1402 01:06:48,700 --> 01:06:51,580 потпишат јас помалку од 2. 1403 01:06:51,580 --> 01:06:55,455 А потоа запирка јас долар потпишат јас плус плус. 1404 01:06:55,455 --> 01:07:01,890 1405 01:07:01,890 --> 01:07:03,880 >> ЈАСОН Hirschhorn: Како да знаете да користите 2? 1406 01:07:03,880 --> 01:07:10,444 >> ПУБЛИКАТА: Бидејќи имаше два асоцијативни низи во рамките на поголеми 1407 01:07:10,444 --> 01:07:11,960 асоцијативна низа. 1408 01:07:11,960 --> 01:07:13,610 >> ЈАСОН Hirschhorn: Значи голема работа е не соработник низа. 1409 01:07:13,610 --> 01:07:15,500 Голема работа е само нормално низа. 1410 01:07:15,500 --> 01:07:17,380 Но ти си во право, постојат две асоцијативни низи 1411 01:07:17,380 --> 01:07:18,910 во нашата поголема низа. 1412 01:07:18,910 --> 01:07:20,310 Тоа е зошто вие користите две. 1413 01:07:20,310 --> 01:07:24,270 Се чувствувам непријатно да се претпостави дека тие се 2, па што е начин да се напише 1414 01:07:24,270 --> 01:07:26,810 тоа без да се претпостави дека тие се 2? 1415 01:07:26,810 --> 01:07:27,507 >> ПУБЛИКАТА: [нечујни]? 1416 01:07:27,507 --> 01:07:29,165 >> ЈАСОН Hirschhorn: Добро, како да ти напишам тоа? 1417 01:07:29,165 --> 01:07:35,262 >> Публика: foreach знакот за долар TFS или како знакот за долар ТФ. 1418 01:07:35,262 --> 01:07:38,360 1419 01:07:38,360 --> 01:07:41,960 >> ЈАСОН Hirschhorn: Добро, така што за секој TFS како TFS, сакам да, сега 1420 01:07:41,960 --> 01:07:43,650 повторно, да имаат мојата маса. 1421 01:07:43,650 --> 01:07:45,250 Па кој може да ми даде следната линија на кодот? 1422 01:07:45,250 --> 01:07:52,870 1423 01:07:52,870 --> 01:07:59,810 >> ПУБЛИКАТА: печатење, а потоа во цитати, држач tr крајот 1424 01:07:59,810 --> 01:08:02,670 заградата, Крај на цитатот. 1425 01:08:02,670 --> 01:08:05,300 Крајот загради, точка-запирка. 1426 01:08:05,300 --> 01:08:07,135 >> ЈАСОН Hirschhorn: Добро, и што е тоа ќе го направи? 1427 01:08:07,135 --> 01:08:08,610 >> Публика: Тоа се случува да се каже, нов ред. 1428 01:08:08,610 --> 01:08:11,070 Тоа се случува да се стави на ознака за нов ред. 1429 01:08:11,070 --> 01:08:13,000 >> ЈАСОН Hirschhorn: Точно, ова се PHP, како зборувавме претходно - ова 1430 01:08:13,000 --> 01:08:22,160 PHP ќе бидат оценувани, а потоа тоа се случува да испечатите До оваа податотека со 1431 01:08:22,160 --> 01:08:26,350 маса забавува, а потоа дека HTML ќе се оценува. 1432 01:08:26,350 --> 01:08:27,810 Ние сме само копирање на овој HTML имавме тука. 1433 01:08:27,810 --> 01:08:28,120 Да. 1434 01:08:28,120 --> 01:08:29,470 >> ПУБЛИКАТА: [нечујни]? 1435 01:08:29,470 --> 01:08:30,290 >> ЈАСОН Hirschhorn: Молам? 1436 01:08:30,290 --> 01:08:31,240 Тоа е во право тука. 1437 01:08:31,240 --> 01:08:33,590 Есен 2012. 1438 01:08:33,590 --> 01:08:35,970 Не гледај одговорите, ајде да се реши заедно. 1439 01:08:35,970 --> 01:08:37,330 Па ние печати табелата. 1440 01:08:37,330 --> 01:08:38,550 Па ти си веројатно во лулашката на нештата. 1441 01:08:38,550 --> 01:08:41,060 Што е следната линија на кодот ние треба да се напише? 1442 01:08:41,060 --> 01:08:42,926 Асам, дај ми следната линија на кодот. 1443 01:08:42,926 --> 01:08:46,290 >> ПУБЛИКАТА: Треба името на ТФ е. 1444 01:08:46,290 --> 01:08:54,319 Tf отворени загради знакот за цитирање именува затворени голема заграда. 1445 01:08:54,319 --> 01:08:57,310 >> ЈАСОН Hirschhorn: Дај ми го своето име. 1446 01:08:57,310 --> 01:08:58,540 >> ПУБЛИКАТА: Вие треба да се печати тоа. 1447 01:08:58,540 --> 01:08:59,790 >> [Ставање ГЛАСОВИ] 1448 01:08:59,790 --> 01:09:01,963 1449 01:09:01,963 --> 01:09:03,430 >> ЈАСОН Hirschhorn: Добро, како можам да го испечатите? 1450 01:09:03,430 --> 01:09:04,680 >> [Ставање ГЛАСОВИ] 1451 01:09:04,680 --> 01:09:08,609 1452 01:09:08,609 --> 01:09:10,350 >> ЈАСОН Hirschhorn: Јас сум недостасува нешто сега. 1453 01:09:10,350 --> 01:09:12,470 Што сум јас недостасува? 1454 01:09:12,470 --> 01:09:13,720 >> ПУБЛИКАТА: Треба знакот за долар. 1455 01:09:13,720 --> 01:09:15,960 1456 01:09:15,960 --> 01:09:17,210 >> ЈАСОН Hirschhorn: Што друг сум јас недостасува? 1457 01:09:17,210 --> 01:09:20,100 1458 01:09:20,100 --> 01:09:21,650 Сите ние сме печатени досега е tr. 1459 01:09:21,650 --> 01:09:25,589 1460 01:09:25,589 --> 01:09:27,470 >> Публика: Затворете го tr по него. 1461 01:09:27,470 --> 01:09:28,720 >> ЈАСОН Hirschhorn: Значи ние треба за да го затворите tr после. 1462 01:09:28,720 --> 01:09:34,390 1463 01:09:34,390 --> 01:09:37,906 Кој го гледа тоа што ние сме недостасува on-line 16? 1464 01:09:37,906 --> 01:09:39,340 Да, Ана. 1465 01:09:39,340 --> 01:09:47,050 >> ПУБЛИКАТА: Треба да се отвори ТД и тркалезните загради. 1466 01:09:47,050 --> 01:09:49,380 >> ЈАСОН Hirschhorn: А каде ние се стави големи загради? 1467 01:09:49,380 --> 01:09:51,790 >> ПУБЛИКАТА: Околу името на ТФ. 1468 01:09:51,790 --> 01:09:53,080 >> ЈАСОН Hirschhorn: Како тоа? 1469 01:09:53,080 --> 01:09:55,420 >> Публика: Да. 1470 01:09:55,420 --> 01:09:59,000 А потоа ја затвори td. 1471 01:09:59,000 --> 01:10:00,250 >> ЈАСОН Hirschhorn: Како тоа? 1472 01:10:00,250 --> 01:10:03,370 1473 01:10:03,370 --> 01:10:06,950 >> Публика: Дали ви е потребна двојно цитат знаци до големи загради? 1474 01:10:06,950 --> 01:10:07,460 >> ЈАСОН Hirschhorn: Право овде? 1475 01:10:07,460 --> 01:10:08,710 Не, не. 1476 01:10:08,710 --> 01:10:10,820 1477 01:10:10,820 --> 01:10:12,550 Значи тоа е точно. 1478 01:10:12,550 --> 01:10:12,940 Да. 1479 01:10:12,940 --> 01:10:15,290 >> Публика: Значи разликата помеѓу кои и encatenating со точки, ако 1480 01:10:15,290 --> 01:10:18,420 го користите точки, ќе треба да имаат двојни наводници, а потоа точка, 1481 01:10:18,420 --> 01:10:20,370 тогаш точка - 1482 01:10:20,370 --> 01:10:20,520 >> ЈАСОН Hirschhorn: Точни. 1483 01:10:20,520 --> 01:10:23,800 Значи велите дека има крајна начин на пишување на оваа, како што. 1484 01:10:23,800 --> 01:10:26,760 1485 01:10:26,760 --> 01:10:28,966 Што сплет оператор во вклучите Javascript-? 1486 01:10:28,966 --> 01:10:31,200 >> Публика: А плус знак. 1487 01:10:31,200 --> 01:10:34,710 Сте заборавиле да се стави на кадрава подготвуваат назад. 1488 01:10:34,710 --> 01:10:35,760 >> ЈАСОН Hirschhorn: Велики. 1489 01:10:35,760 --> 01:10:38,850 И има уште една линија на кодот недостасува. 1490 01:10:38,850 --> 01:10:40,130 Кој може да ми даде последната линија на кодот ние сме недостасува? 1491 01:10:40,130 --> 01:10:43,940 1492 01:10:43,940 --> 01:10:47,602 >> Публика: Само иста работа, само со куќа наместо име. 1493 01:10:47,602 --> 01:10:52,960 1494 01:10:52,960 --> 01:10:53,450 Голема 1495 01:10:53,450 --> 01:10:54,390 >> ЈАСОН Hirschhorn: Велики. 1496 01:10:54,390 --> 01:10:59,320 И вашиот синтаксата е точно во право за добивање на работите во придружено низа. 1497 01:10:59,320 --> 01:11:04,450 Па во конкретната квиз, вие сте всушност откажале додека тука. 1498 01:11:04,450 --> 01:11:05,710 Па овој код е дадена за вас. 1499 01:11:05,710 --> 01:11:07,750 Сите ти мораше да пишуваат беа овие четири линии и не заборавајте да 1500 01:11:07,750 --> 01:11:09,190 Затвори табелата таг. 1501 01:11:09,190 --> 01:11:11,370 Вие момци всушност не сето тоа и многу повеќе. 1502 01:11:11,370 --> 01:11:11,810 Да. 1503 01:11:11,810 --> 01:11:14,850 >> Публика: Значи тоа ќе биде функционално исто ако само имаше дека сите во 1504 01:11:14,850 --> 01:11:17,250 една голема печатење повик, нели? 1505 01:11:17,250 --> 01:11:19,630 А потоа само concatenated тоа на, и така натаму? 1506 01:11:19,630 --> 01:11:20,730 >> ЈАСОН Hirschhorn: Како тоа? 1507 01:11:20,730 --> 01:11:21,980 >> Публика: Да. 1508 01:11:21,980 --> 01:11:23,810 1509 01:11:23,810 --> 01:11:26,940 Тоа едноставно не ќе изгледаат добро ако сте биле гледа во тоа кога сте инспекција 1510 01:11:26,940 --> 01:11:28,550 елемент на вашиот сајт, нели? 1511 01:11:28,550 --> 01:11:29,800 >> ЈАСОН Hirschhorn: Јас се согласувам. 1512 01:11:29,800 --> 01:11:35,410 1513 01:11:35,410 --> 01:11:38,710 Ако јас натоварени оваа веб страна, јас ќе бидам можност да се види PHP код, некогаш? 1514 01:11:38,710 --> 01:11:39,240 >> ПУБЛИКАТА: Не 1515 01:11:39,240 --> 01:11:40,080 >> ЈАСОН Hirschhorn: Не 1516 01:11:40,080 --> 01:11:42,240 И всушност, јас не би. 1517 01:11:42,240 --> 01:11:43,920 >> Публика: Ова не е HTML, нели? 1518 01:11:43,920 --> 01:11:45,000 Па можеби ќе бидете во можност да - 1519 01:11:45,000 --> 01:11:46,780 >> ЈАСОН Hirschhorn: Значи ова PHP ќе се оценува од страна на серверот. 1520 01:11:46,780 --> 01:11:51,020 PHP е секогаш оценува од страна на серверот, па никогаш не сте способни да гледаат PHP код. 1521 01:11:51,020 --> 01:11:52,980 >> Публика: Но, ќе бидете во можност да видиме и резултат од отпечатоци. 1522 01:11:52,980 --> 01:11:53,480 >> ЈАСОН Hirschhorn: Право. 1523 01:11:53,480 --> 01:11:55,510 И тоа искрено не може стави сето тоа на линија. 1524 01:11:55,510 --> 01:11:59,740 Тоа би можело да ја форматирате убаво за вас, или тоа би можело да го стави на една линија. 1525 01:11:59,740 --> 01:12:01,521 Нејасно. 1526 01:12:01,521 --> 01:12:03,596 Но да, добра точка. 1527 01:12:03,596 --> 01:12:06,470 >> Публика: Како дојде таму е нема текст за нагласување на 1528 01:12:06,470 --> 01:12:07,550 било која од PHP команди? 1529 01:12:07,550 --> 01:12:09,370 Бидејќи јас се сеќавам гледајќи дека. 1530 01:12:09,370 --> 01:12:11,620 >> ЈАСОН Hirschhorn: Поради тоа што е . HTML датотека тука на врвот. 1531 01:12:11,620 --> 01:12:20,390 1532 01:12:20,390 --> 01:12:21,650 Таму да одите. 1533 01:12:21,650 --> 01:12:25,752 1534 01:12:25,752 --> 01:12:28,800 >> Публика: Ако ние го сторивме почетната метод со за петелки, десно, ако ние 1535 01:12:28,800 --> 01:12:33,500 сакав да влезам во TFS, нели направи TFS заградата 0 заградата, потоа 1536 01:12:33,500 --> 01:12:35,180 [Нечујни]? 1537 01:12:35,180 --> 01:12:35,970 >> ЈАСОН Hirschhorn: Вие би - 1538 01:12:35,970 --> 01:12:40,560 па ти си велејќи дека за за телефонска линија, можете би го направил во знакот за долар TFS заградата 1 1539 01:12:40,560 --> 01:12:41,850 или јас, нели. 1540 01:12:41,850 --> 01:12:46,780 Или знакот за долар јас блиску заграда, и потоа квадратни држач 1541 01:12:46,780 --> 01:12:49,600 двојни наводници, да. 1542 01:12:49,600 --> 01:12:50,640 >> Добро, одлично. 1543 01:12:50,640 --> 01:12:53,020 Имаме уште еден брз еден. 1544 01:12:53,020 --> 01:12:55,090 Седум минути, па сакам да се оди во текот на оваа. 1545 01:12:55,090 --> 01:12:56,160 Ова е уште еден пример. 1546 01:12:56,160 --> 01:12:58,740 Ние сме сега сосема друг јазик. 1547 01:12:58,740 --> 01:12:59,990 >> Имаме некои HTML код. 1548 01:12:59,990 --> 01:13:02,480 1549 01:13:02,480 --> 01:13:07,460 Тоа е вид на мали на екранот, но Сакам да се погледне преку тоа навистина 1550 01:13:07,460 --> 01:13:11,140 брзо, и може да некој ми каже, ако јас се да се вчита оваа веб-страница, 1551 01:13:11,140 --> 01:13:12,390 она што јас би се види? 1552 01:13:12,390 --> 01:13:22,710 1553 01:13:22,710 --> 01:13:26,450 Опишете сè за оваа интернет страница. 1554 01:13:26,450 --> 01:13:28,630 Ноа? 1555 01:13:28,630 --> 01:13:30,450 Што би гледам? 1556 01:13:30,450 --> 01:13:38,140 >> ПУБЛИКАТА: Код на предниот крај на Google со чувство за текст и 1557 01:13:38,140 --> 01:13:39,190 поднесе копче. 1558 01:13:39,190 --> 01:13:41,180 >> ЈАСОН Hirschhorn: И што би рекол копче? 1559 01:13:41,180 --> 01:13:42,430 >> ПУБЛИКАТА: Прати. 1560 01:13:42,430 --> 01:13:44,620 1561 01:13:44,620 --> 01:13:45,160 Ох, пребарување. 1562 01:13:45,160 --> 01:13:45,840 Жал ми е. 1563 01:13:45,840 --> 01:13:46,830 >> ЈАСОН Hirschhorn: Тоа би рекле пребарување. 1564 01:13:46,830 --> 01:13:47,520 Се сеќавам, име. 1565 01:13:47,520 --> 01:13:50,550 Што ние ги користиме име за? 1566 01:13:50,550 --> 01:13:53,774 Ова име атрибут, она што е кои се користат за? 1567 01:13:53,774 --> 01:13:55,470 >> [Ставање ГЛАСОВИ] 1568 01:13:55,470 --> 01:13:59,300 >> Публика: Тоа е неговото име за кога е кликнато? 1569 01:13:59,300 --> 01:14:00,160 >> ЈАСОН Hirschhorn: Тоа би можело да биде. 1570 01:14:00,160 --> 01:14:02,690 Но, она што ние обично се види - зошто сме давање на оваа задача име? 1571 01:14:02,690 --> 01:14:03,830 Зошто ние да се види тоа? 1572 01:14:03,830 --> 01:14:05,220 Да. 1573 01:14:05,220 --> 01:14:08,600 >> ПУБЛИКАТА: Не дека стана индекс на супер глобалната променлива? 1574 01:14:08,600 --> 01:14:12,740 >> ЈАСОН Hirschhorn: Да, обично кога оваа форма ќе поднесе, а потоа каде 1575 01:14:12,740 --> 01:14:13,500 ова ќе ги достават до? 1576 01:14:13,500 --> 01:14:14,750 Што страница? 1577 01:14:14,750 --> 01:14:16,820 1578 01:14:16,820 --> 01:14:18,460 Ное, која страница ќе овој достават до? 1579 01:14:18,460 --> 01:14:25,710 1580 01:14:25,710 --> 01:14:27,700 >> Публика: Јас не сум сигурен. 1581 01:14:27,700 --> 01:14:28,920 >> ЈАСОН Hirschhorn: Каде би можеле да можеме да го најдеме? 1582 01:14:28,920 --> 01:14:31,025 Каде да го најдете тоа што страница го доставува до? 1583 01:14:31,025 --> 01:14:32,850 Што линија код? 1584 01:14:32,850 --> 01:14:34,040 >> ПУБЛИКАТА: Форма акција. 1585 01:14:34,040 --> 01:14:34,650 >> ЈАСОН Hirschhorn: Токму така. 1586 01:14:34,650 --> 01:14:35,130 Акција. 1587 01:14:35,130 --> 01:14:37,100 Па го доставува до пребарувањето страница. 1588 01:14:37,100 --> 01:14:38,630 Обратна коса црта пребарување. 1589 01:14:38,630 --> 01:14:40,140 Значи тоа е точно. 1590 01:14:40,140 --> 01:14:40,680 Што метод? 1591 01:14:40,680 --> 01:14:42,090 >> ПУБЛИКАТА: Земете. 1592 01:14:42,090 --> 01:14:42,490 >> ЈАСОН Hirschhorn: Земете. 1593 01:14:42,490 --> 01:14:43,420 Токму така. 1594 01:14:43,420 --> 01:14:44,490 Па ние ја прочитате оваа. 1595 01:14:44,490 --> 01:14:45,180 Ова се случува да биде еден вид. 1596 01:14:45,180 --> 01:14:45,910 Ти си точно во право. 1597 01:14:45,910 --> 01:14:50,340 Две работи за формата, називот на страница и на врвот ќе биде на Google. 1598 01:14:50,340 --> 01:14:54,270 >> Значи тука се две прашања што треба да биде во можност да одговори за оваа страница. 1599 01:14:54,270 --> 01:15:01,760 Ако ова HTML живее во овој сајт и корисникот влезови бубачка во овој текст 1600 01:15:01,760 --> 01:15:06,900 поле токму тука, она што рачно ќе корисникот себеси се најде на 1601 01:15:06,900 --> 01:15:08,150 поднесување на формуларот? 1602 01:15:08,150 --> 01:15:10,980 1603 01:15:10,980 --> 01:15:12,510 >> Па ние имаме тоа право овде. 1604 01:15:12,510 --> 01:15:13,720 Одам да се вратиме на оваа страница, иако. 1605 01:15:13,720 --> 01:15:16,980 Јас ќе пишувам на овој првиот дел. 1606 01:15:16,980 --> 01:15:18,230 Може да се види на сите овде? 1607 01:15:18,230 --> 01:15:30,620 1608 01:15:30,620 --> 01:15:32,906 Добро, Марио, мислите дека знаете? 1609 01:15:32,906 --> 01:15:34,700 Што страница? 1610 01:15:34,700 --> 01:15:37,630 >> Публика: Обратна коса црта пребарување. 1611 01:15:37,630 --> 01:15:38,880 >> ЈАСОН Hirschhorn: Одам да се движи надолу тука. 1612 01:15:38,880 --> 01:15:44,800 1613 01:15:44,800 --> 01:15:49,155 Добро, обратна коса црта пребарување прашање Означи q е еднакво на бубачка. 1614 01:15:49,155 --> 01:15:53,560 1615 01:15:53,560 --> 01:15:55,165 Секој има различна сугестија? 1616 01:15:55,165 --> 01:15:57,910 1617 01:15:57,910 --> 01:15:59,160 Да. 1618 01:15:59,160 --> 01:16:01,700 1619 01:16:01,700 --> 01:16:03,740 >> Па како можеме да станеме ова? 1620 01:16:03,740 --> 01:16:05,520 Па, ние сме виделе ова досега. 1621 01:16:05,520 --> 01:16:07,170 И ќе излезе со овој порано. 1622 01:16:07,170 --> 01:16:08,870 Ти беше во право, Ное, дека акција е да ни кажува што 1623 01:16:08,870 --> 01:16:11,700 страница одиме да. 1624 01:16:11,700 --> 01:16:12,820 >> Ние исто така знаеме што метод. 1625 01:16:12,820 --> 01:16:13,420 Ние сме прави добие. 1626 01:16:13,420 --> 01:16:17,040 И разликата помеѓу GET и POST е дека се прикажува во URL-то 1627 01:16:17,040 --> 01:16:18,490 и пост не го прави. 1628 01:16:18,490 --> 01:16:22,760 Значи, ако јас го напишав пост во право, таму во метод, што ќе биде поинаку? 1629 01:16:22,760 --> 01:16:24,250 >> ПУБЛИКАТА: Тоа само би биде коса црта пребарување. 1630 01:16:24,250 --> 01:16:25,400 >> ЈАСОН Hirschhorn: Тоа би само да се намали за пребарување. 1631 01:16:25,400 --> 01:16:27,400 Ништо повеќе тука ќе се случи. 1632 01:16:27,400 --> 01:16:30,030 Но, бидејќи тоа е се, URL се прикажува како што следи. 1633 01:16:30,030 --> 01:16:35,140 Прво гледаме прашалник и можеме да видиме на името и вредност. 1634 01:16:35,140 --> 01:16:42,730 Велат дека е еден друг текст полето и Јас го даде името на r и јас внесување на 1635 01:16:42,730 --> 01:16:45,220 вредност, гасеница. 1636 01:16:45,220 --> 01:16:48,560 Што би ова сега изгледа? 1637 01:16:48,560 --> 01:16:52,040 Имам уште една полето за текст, ќе го дадам име на R и A вредноста на гасеница. 1638 01:16:52,040 --> 01:16:56,990 >> ПУБЛИКАТА: По бар ќе треба на симболот гасеница. 1639 01:16:56,990 --> 01:16:58,380 >> ЈАСОН Hirschhorn: Тоа е не го симболот. 1640 01:16:58,380 --> 01:17:00,500 >> Публика: Или само она што на и симбол. 1641 01:17:00,500 --> 01:17:01,330 >> ЈАСОН Hirschhorn: Да, бр. 1642 01:17:01,330 --> 01:17:03,700 Ти беше во право, не бев во право. 1643 01:17:03,700 --> 01:17:05,660 Тоа е како е. 1644 01:17:05,660 --> 01:17:06,910 >> ПУБЛИКАТА: Caterpillar. 1645 01:17:06,910 --> 01:17:08,840 1646 01:17:08,840 --> 01:17:11,090 r е еднакво на Caterpillar, жалам. 1647 01:17:11,090 --> 01:17:13,970 1648 01:17:13,970 --> 01:17:14,700 >> ЈАСОН Hirschhorn: Дали има Нема R таму? 1649 01:17:14,700 --> 01:17:16,680 >> Публика: Не, не постои. 1650 01:17:16,680 --> 01:17:18,030 >> ЈАСОН Hirschhorn: Ние ќе разговараме за тоа по класа. 1651 01:17:18,030 --> 01:17:18,930 Тоа е точно. 1652 01:17:18,930 --> 01:17:20,530 Па и е точно. 1653 01:17:20,530 --> 01:17:23,430 А потоа би можеле да имаат многу од овие, и сите тие ќе бидат concatenated 1654 01:17:23,430 --> 01:17:24,950 заедно со тоа и. 1655 01:17:24,950 --> 01:17:25,900 Значи тоа е точно. 1656 01:17:25,900 --> 01:17:27,700 >> Има уште едно прашање. 1657 01:17:27,700 --> 01:17:30,676 Скица ДОМ овој HTML е, почнувајќи со документ. 1658 01:17:30,676 --> 01:17:33,330 1659 01:17:33,330 --> 01:17:34,570 Ние би можеле да го сторат тоа во две минути. 1660 01:17:34,570 --> 01:17:36,790 Ние ќе го направи тоа овде. 1661 01:17:36,790 --> 01:17:38,040 Јас ќе се вратам на оваа веб страница. 1662 01:17:38,040 --> 01:17:40,630 1663 01:17:40,630 --> 01:17:42,160 Добро, да почнеме со документ. 1664 01:17:42,160 --> 01:17:49,698 1665 01:17:49,698 --> 01:17:52,090 >> Што е следно? 1666 01:17:52,090 --> 01:17:53,910 Значи, кога ја читаш преку - 1667 01:17:53,910 --> 01:17:54,540 >> Публика: HTML. 1668 01:17:54,540 --> 01:17:55,790 >> ЈАСОН Hirschhorn: HTML е следната. 1669 01:17:55,790 --> 01:17:57,850 Ние ќе одиме таг со тагот. 1670 01:17:57,850 --> 01:18:00,890 Што по HTML? 1671 01:18:00,890 --> 01:18:01,550 >> Публика: Раководител. 1672 01:18:01,550 --> 01:18:02,800 >> ЈАСОН Hirschhorn: Раководител. 1673 01:18:02,800 --> 01:18:05,090 1674 01:18:05,090 --> 01:18:08,520 Што е по глава? 1675 01:18:08,520 --> 01:18:09,770 >> Публика: Наслов. 1676 01:18:09,770 --> 01:18:11,880 1677 01:18:11,880 --> 01:18:12,560 >> ЈАСОН Hirschhorn: Наслов. 1678 01:18:12,560 --> 01:18:14,740 И насловот има вредност на Google, но јас не одам да 1679 01:18:14,740 --> 01:18:16,240 пишува дека во за сега. 1680 01:18:16,240 --> 01:18:18,750 Добро, каде е телото одиме? 1681 01:18:18,750 --> 01:18:20,890 >> ПУБЛИКАТА: Исто така излетаат на HTML. 1682 01:18:20,890 --> 01:18:21,490 >> ЈАСОН Hirschhorn: Токму така. 1683 01:18:21,490 --> 01:18:22,820 Тело доаѓа надвор од тука. 1684 01:18:22,820 --> 01:18:25,970 1685 01:18:25,970 --> 01:18:30,330 Дали сите се види зошто тоа е така? 1686 01:18:30,330 --> 01:18:32,970 Веројатно ќе треба да биде во можност да дознаам ова, исто така, дури и ако јас не имаат 1687 01:18:32,970 --> 01:18:33,665 оваа убава вовлекување. 1688 01:18:33,665 --> 01:18:37,680 >> Вовлекувањето вид на го дава далеку, но може да се види дека главата таг има 1689 01:18:37,680 --> 01:18:41,240 е затворена, која значи веројатно не може да одат надолу тука. 1690 01:18:41,240 --> 01:18:43,460 Ние треба да одиме назад до она што бил во право пред шефот 1691 01:18:43,460 --> 01:18:44,730 ознака, или под тоа. 1692 01:18:44,730 --> 01:18:46,720 Ние сме дури и со шефот на тагот. 1693 01:18:46,720 --> 01:18:48,560 >> И под тело оди форма. 1694 01:18:48,560 --> 01:18:50,300 Под форма, постојат два влезови. 1695 01:18:50,300 --> 01:18:53,330 1696 01:18:53,330 --> 01:18:54,420 OK. 1697 01:18:54,420 --> 01:18:55,490 Тоа е се што имаме. 1698 01:18:55,490 --> 01:18:56,980 Квиз 1 е утре. 1699 01:18:56,980 --> 01:18:58,350 Јас сум толку возбуден за вас момци. 1700 01:18:58,350 --> 01:18:59,690 Тоа се случува да биде експлозијата. 1701 01:18:59,690 --> 01:19:00,250 >> Ако имате - 1702 01:19:00,250 --> 01:19:00,600 >> ПУБЛИКАТА: [Аплауз] 1703 01:19:00,600 --> 01:19:02,460 >> ЈАСОН Hirschhorn: О запре, запре. 1704 01:19:02,460 --> 01:19:04,520 Но, не, јас сум шегуваш. 1705 01:19:04,520 --> 01:19:07,220 Ако имате било какви прашања, право по дел, ќе бидам надвор. 1706 01:19:07,220 --> 01:19:11,700 Ако имате било какви прашања вечерва, се чувствуваат слободни да се јавите, електронска пошта, Gchat, 1707 01:19:11,700 --> 01:19:12,740 превозникот ме гулаб. 1708 01:19:12,740 --> 01:19:13,950 Со среќа утре. 1709 01:19:13,950 --> 01:19:16,220 Имаат прекрасен благодарноста пауза, ако не ја гледате пред тоа. 1710 01:19:16,220 --> 01:19:19,320 И јас ќе те гледам по Денот на благодарноста во вторникот за нашата крајна 1711 01:19:19,320 --> 01:19:20,295 делот на партијата секогаш. 1712 01:19:20,295 --> 01:19:21,545 >> ПУБЛИКАТА: [нечујни]. 1713 01:19:21,545 --> 01:19:25,270 1714 01:19:25,270 --> 01:19:25,790 >> ЈАСОН Hirschhorn: Велики. 1715 01:19:25,790 --> 01:19:28,900 Добро, ќе видиме вие ​​момци следната недела, или во две недели. 1716 01:19:28,900 --> 01:19:30,150 И со среќа утре. 1717 01:19:30,150 --> 01:19:32,203