1 00:00:00,000 --> 00:00:08,250 2 00:00:08,250 --> 00:00:12,680 >> JASON Hirschhorn: Ongi etorri denek Zazpi Atalari. 3 00:00:12,680 --> 00:00:15,040 Dira astean zazpi Ikastaroaren dugu. 4 00:00:15,040 --> 00:00:18,440 Eta hurrengo ostegunean Halloween da, beraz, I am 5 00:00:18,440 --> 00:00:21,420 mozorrotuta kalabaza bat bezala. 6 00:00:21,420 --> 00:00:23,460 Ezin nuen okertu baino gehiago eta jarri nire oinetakoak, beraz, horregatik nago 7 00:00:23,460 --> 00:00:25,660 besterik galtzerdiak jantzita. 8 00:00:25,660 --> 00:00:29,220 Dut, halaber, ez da ezer jantzita pean honek, beraz, ezin dut eraman ezazu off bada 9 00:00:29,220 --> 00:00:29,950 Zuri distracting. 10 00:00:29,950 --> 00:00:31,860 Barkamena eskatzen dut, aldez aurretik horretarako. 11 00:00:31,860 --> 00:00:33,170 Zuk ez duzu imajinatu zer ari den gertatzen. 12 00:00:33,170 --> 00:00:34,240 Boxeolariak naiz jantzita. 13 00:00:34,240 --> 00:00:36,170 Hain ona guztiak da. 14 00:00:36,170 --> 00:00:41,120 >> Zergatik naiz buruzko istorio luzeagoa daukat kalabaza bat bezala jantzita, baina noa joan 15 00:00:41,120 --> 00:00:45,110 gorde duten atal honetan geroago dut nahi duelako egiten lehen urratsak emateko. 16 00:00:45,110 --> 00:00:47,720 Zirraragarria gauza asko dugu aste honetan zehar joan. 17 00:00:47,720 --> 00:00:51,810 Horietako gehienak erlazionatu zuzenean honetara astean arazo multzo, gaizki idatzitako hitzak. 18 00:00:51,810 --> 00:00:54,680 Lotuta baino gehiago egingo goaz zerrendak eta hash taulak 19 00:00:54,680 --> 00:00:57,160 atal osorako. 20 00:00:57,160 --> 00:01:02,490 Zerrenda honetan zerrenda bat jarri nuen sortu Astero, lagundu nahi baduzu zurekin baliabideak 21 00:01:02,490 --> 00:01:04,120 Ikastaro honi buruzko materiala. 22 00:01:04,120 --> 00:01:07,600 Galera bat bada edo batzuk bila Informazio gehiago nahi izanez gero, begiratu bat 23 00:01:07,600 --> 00:01:09,930 baliabide horiek. 24 00:01:09,930 --> 00:01:14,530 >> Berriz ere, pset6 Akatsik da, Aste honetan pset. 25 00:01:14,530 --> 00:01:17,690 Eta ere animatzen da, eta nik animatzen zaren, beste batzuk erabili 26 00:01:17,690 --> 00:01:20,320 baliabideak zehazki pset honetan. 27 00:01:20,320 --> 00:01:23,390 Hain zuzen ere, hiru izan dut zerrendatu pantailan - 28 00:01:23,390 --> 00:01:27,160 gdb, zein izan dugu ezagutzen eta orain erabiliz, berriz, bat, da 29 00:01:27,160 --> 00:01:29,270 Oso lagungarria izango da aste honetan egingo da. 30 00:01:29,270 --> 00:01:30,190 Beraz, hori jarri dut hemen. 31 00:01:30,190 --> 00:01:32,910 Baina C lan egiten ari zaren, betiere, Beti egon gdb erabiliz behar duzu 32 00:01:32,910 --> 00:01:34,430 zure programak arazteko. 33 00:01:34,430 --> 00:01:36,660 Aste honetan ere Valgrind. 34 00:01:36,660 --> 00:01:38,535 Inor daki zer valgrind du? 35 00:01:38,535 --> 00:01:42,184 36 00:01:42,184 --> 00:01:43,890 >> AUDIENCE: egiaztatzen memoria filtrazioak It? 37 00:01:43,890 --> 00:01:45,950 >> JASON Hirschhorn: Valgrind memoria filtrazioak egiaztatzen du. 38 00:01:45,950 --> 00:01:49,970 Hala bada in malloc duzu zerbait zure programa, memoria eskatuz zaren. 39 00:01:49,970 --> 00:01:52,920 Zure programaren amaieran, duzu free idazten duzun guztia 40 00:01:52,920 --> 00:01:54,800 malloced memorian atzera emateko. 41 00:01:54,800 --> 00:01:58,420 Ez duzu idazteko free bada amaieran eta Zure programa ondorio bat dator, 42 00:01:58,420 --> 00:02:00,000 guztia automatikoki egingo libratuko dira. 43 00:02:00,000 --> 00:02:02,340 Eta programa txikiak, hura da Akordio bat ez duten big. 44 00:02:02,340 --> 00:02:05,250 Baina zuk jada entzierro bat idazten ari bada programa horrek ez irten, 45 00:02:05,250 --> 00:02:09,180 nahitaez, minutu bat edo pare bat segundo pare, ondoren memoria filtrazioak 46 00:02:09,180 --> 00:02:10,710 Akordio handi bat bihur daiteke. 47 00:02:10,710 --> 00:02:14,940 >> Beraz pset6 egiteko, esperantza dela zero memoria filtrazioak izan izango duzu 48 00:02:14,940 --> 00:02:15,910 Zure programa. 49 00:02:15,910 --> 00:02:18,690 Memoria ihesak egiaztatzeko, exekutatu valgrind eta eman egingo duzu polit batzuk 50 00:02:18,690 --> 00:02:21,190 irteera jakin ala ez dezazun edo ez, dena libre zen. 51 00:02:21,190 --> 00:02:23,940 Izango da batera landu dugu geroago gaur, zorionez. 52 00:02:23,940 --> 00:02:25,790 >> Azkenik, diff komandoa. 53 00:02:25,790 --> 00:02:28,900 Da antzeko zerbait erabili zenuen peek tresnarekin Pset5 in. 54 00:02:28,900 --> 00:02:30,780 Baimenduta barruan begiratu behar duzu. 55 00:02:30,780 --> 00:02:33,400 Halaber diff erabiltzen duzu, ere, per arazoa multzo zehaztapenak. 56 00:02:33,400 --> 00:02:35,950 Baina onartzen duzu nahi konparatu bi fitxategiak. 57 00:02:35,950 --> 00:02:39,180 The bitmap fitxategia eta konparatu dezakezu Datu langileei irtenbide bat goiburu eta 58 00:02:39,180 --> 00:02:42,200 zure irtenbidea Pset5 bada hura erabiltzeko digu. 59 00:02:42,200 --> 00:02:44,030 Diff duzu aukera emango du Hau egitea, bai. 60 00:02:44,030 --> 00:02:48,620 Erantzun zuzena alderatu dezakezu Zure erantzuna 'ezarrita aste honetan arazo 61 00:02:48,620 --> 00:02:52,210 eta ikusten baduzu up lerro da edo ikusteko non akatsak dira. 62 00:02:52,210 --> 00:02:55,870 >> Beraz, horiek dira hiru tresna ona dela Aste honetan erabili behar duzu, eta 63 00:02:55,870 --> 00:02:58,130 zalantzarik gabe zure programa check hiru tresna horiek 64 00:02:58,130 --> 00:03:00,520 inflexio sartu aurretik 65 00:03:00,520 --> 00:03:04,650 Berriz ere, astean behin esan dizudan bezala, bai - Niretzat edozein feedback duzu bada 66 00:03:04,650 --> 00:03:06,470 positiboa eta konstruktiboa - 67 00:03:06,470 --> 00:03:09,930 sentitzen free webgunera joatea diapositiba honen behealdean 68 00:03:09,930 --> 00:03:11,270 eta sarrera han. 69 00:03:11,270 --> 00:03:13,440 Benetan edozein eskertzen dut eta zuzenketa guztiak. 70 00:03:13,440 --> 00:03:17,360 Eta eman duzun me bada gauza zehatzak Hobetu egin ahal izango dut edo naiz zela 71 00:03:17,360 --> 00:03:21,350 ondo egiten duten me nahi duzun jarraitzeko, hori hartzen dut bihotza eta 72 00:03:21,350 --> 00:03:24,040 Benetan saiatu gogor entzuteko zure iritzia emateko. 73 00:03:24,040 --> 00:03:27,720 Ezin dut promesa egin noa Guztia, ordea, jantzita bezalako 74 00:03:27,720 --> 00:03:30,700 Astero mozorro kalabaza. 75 00:03:30,700 --> 00:03:34,020 >> Beraz ari gara gehienak pasatzera joan atalean, aipatu dudan bezala, buruz ari 76 00:03:34,020 --> 00:03:37,240 lotuta zerrendak eta hash taulak, eta horrek zuzenean aplikagarri izango 77 00:03:37,240 --> 00:03:38,780 Arazo multzo aste honetan. 78 00:03:38,780 --> 00:03:42,580 Lotuta zerrendak dugun baino gehiago nahiko joango dugu gastatu azkar delako arrazoizko apur bat 79 00:03:42,580 --> 00:03:44,930 Denboraren gainean atalean joan. 80 00:03:44,930 --> 00:03:48,680 Eta horrela lortuko dugu zuzenean sartu kodeketa arazoak lotuta zerrendak egiteko. 81 00:03:48,680 --> 00:03:52,740 Eta gero bukaeran dugu buruz hitz taulak hash eta nola aplikatu honi dute 82 00:03:52,740 --> 00:03:55,280 astean arazo ezarri. 83 00:03:55,280 --> 00:03:57,560 >> Kode hau lehenago ikusi duzu. 84 00:03:57,560 --> 00:04:02,730 Hau egitura bat da, eta definitzea da Zerbait berria nodo deritzo. 85 00:04:02,730 --> 00:04:10,660 Eta nodo baten barruan badaude oso bat da eskubidea han eta hemen erakuslea da 86 00:04:10,660 --> 00:04:11,830 nodo beste. 87 00:04:11,830 --> 00:04:12,790 Ikusi dugu honen aurretik. 88 00:04:12,790 --> 00:04:14,830 Hau sortu du datozen sido para astez, orain pare bat. 89 00:04:14,830 --> 00:04:18,680 Erakusleak, bertan izan gara uztartzen ditu , eta structs zeini esker lan 90 00:04:18,680 --> 00:04:22,079 bi ezberdinak konbinatzeko gurekin datu mota bat sartu gauzak. 91 00:04:22,079 --> 00:04:24,830 92 00:04:24,830 --> 00:04:26,490 >> Asko gertatzen da pantailan da. 93 00:04:26,490 --> 00:04:30,220 Baina guztia nahiko izan beharko luke duzu ezagutzen. 94 00:04:30,220 --> 00:04:33,810 Lehen lerroan, dugu nodo berri bat aldarrikatu. 95 00:04:33,810 --> 00:04:41,650 Eta gero nodoaren barruan, I ezarri nodo horretan osokoa bat. 96 00:04:41,650 --> 00:04:44,950 Ikus hurrengo lerro bat egiten ari naiz on dugu printf komando, baina grisez markatutako dut 97 00:04:44,950 --> 00:04:48,080 printf komandoa benetan delako zati garrantzitsu lerro hau da hemen - 98 00:04:48,080 --> 00:04:50,020 new_node.n. 99 00:04:50,020 --> 00:04:51,270 Zer esan nahi dot? 100 00:04:51,270 --> 00:04:53,810 101 00:04:53,810 --> 00:04:57,240 >> AUDIENCE: nodoaren ra joan eta n da balioa ebaluatzeko. 102 00:04:57,240 --> 00:04:58,370 >> JASON Hirschhorn: Hori zehazki eskubidea. 103 00:04:58,370 --> 00:05:03,300 Dot esan nahi n parte sartzeko nodo berri honen. 104 00:05:03,300 --> 00:05:05,690 Hurrengo lerro hau ez du zer? 105 00:05:05,690 --> 00:05:16,140 106 00:05:16,140 --> 00:05:17,050 Michael. 107 00:05:17,050 --> 00:05:21,910 >> AUDIENCE: nodoa beste sortzen du egingo duten nodo berria seinalatu. 108 00:05:21,910 --> 00:05:24,870 >> JASON Hirschhorn: Beraz, ez da nodo berri bat sortzeko. 109 00:05:24,870 --> 00:05:26,120 Zer bat sortzen da? 110 00:05:26,120 --> 00:05:28,300 111 00:05:28,300 --> 00:05:29,300 >> AUDIENCE: erakuslea. 112 00:05:29,300 --> 00:05:33,460 >> JASON Hirschhorn: nodo bat erakuslea, adierazitako nodo * honetan bezala hemen. 113 00:05:33,460 --> 00:05:34,800 Beraz nodo bat erakuslea bat sortzen da. 114 00:05:34,800 --> 00:05:37,490 Eta horrek nodo da seinalatuz , Michael? 115 00:05:37,490 --> 00:05:38,440 >> AUDIENCE: nodo berria? 116 00:05:38,440 --> 00:05:39,240 >> JASON Hirschhorn: nodo berria. 117 00:05:39,240 --> 00:05:43,020 Eta bertan apuntatzen da dugu delako jakin ezazu nodo berri-helbidea. 118 00:05:43,020 --> 00:05:45,820 Eta, orain, lerro hau ikusten dugu bi modu desberdinak 119 00:05:45,820 --> 00:05:46,910 gauza bera adierazteko. 120 00:05:46,910 --> 00:05:49,650 Eta azpimarratu nahi nuen nola horiek Bi gauza bera dira. 121 00:05:49,650 --> 00:05:54,740 Lehen lerroan, dugun erreferentzia kenduta erakuslea. 122 00:05:54,740 --> 00:05:55,830 Beraz, joan nodo nahi dugu. 123 00:05:55,830 --> 00:05:56,830 Hori zer izar horrek esan nahi. 124 00:05:56,830 --> 00:05:57,930 Ikusi dugu, erakusleak aurretik. 125 00:05:57,930 --> 00:05:59,280 Nodo horretara joateko. 126 00:05:59,280 --> 00:06:00,370 Duten parentesi da. 127 00:06:00,370 --> 00:06:04,610 Eta, ondoren, puntu operadorea bidez sartzeko n nodo duten elementua. 128 00:06:04,610 --> 00:06:08,430 >> Beraz, sintaxia Honez hartu eskuinera orain eta hemen ikusi genuen 129 00:06:08,430 --> 00:06:09,670 ez ezazu erabili erakuslea batekin. 130 00:06:09,670 --> 00:06:13,730 Jakina, halako lortzen lanpetuta bada of ezazu parentesi horiek idazten ari zaren - 131 00:06:13,730 --> 00:06:14,940 izarra duten eta puntu horretan. 132 00:06:14,940 --> 00:06:16,220 Apur bat lanpetuta lortzen da. 133 00:06:16,220 --> 00:06:18,500 Beraz azukre sintaktiko batzuk ditugu. 134 00:06:18,500 --> 00:06:19,920 Eta lerro hau hementxe - 135 00:06:19,920 --> 00:06:21,170 ptr_node-> n. 136 00:06:21,170 --> 00:06:25,400 137 00:06:25,400 --> 00:06:28,000 Duten zehatza gauza bera egiten du. 138 00:06:28,000 --> 00:06:30,840 Beraz, bi kode lerro horiek dira baliokide eta egingo 139 00:06:30,840 --> 00:06:31,650 gauza bera zehatza. 140 00:06:31,650 --> 00:06:34,210 >> Baina horiek seinalatu aurretik nahi nuen Beste inora joan gara, beraz, ulertzen duzu 141 00:06:34,210 --> 00:06:39,000 benetan hementxe gauza hau da besterik azukre sintaktikoa dereferencing egiteko 142 00:06:39,000 --> 00:06:44,200 erakuslea eta gero joan n struct duten zatia. 143 00:06:44,200 --> 00:06:45,525 Diapositiba buruzko galderarik? 144 00:06:45,525 --> 00:06:53,020 145 00:06:53,020 --> 00:06:54,390 Ados. 146 00:06:54,390 --> 00:06:58,510 >> Beraz, bikote baten bidez joan eragiketak on egin dezakezu 147 00:06:58,510 --> 00:06:59,730 lotuta zerrendak. 148 00:06:59,730 --> 00:07:05,770 Lotuta zerrenda bat, abisuaren, multzo bat da beste bat seinalatu duten nodo. 149 00:07:05,770 --> 00:07:12,470 Eta, oro har, erakuslea batekin hasiko dugu burua deitzen zaio, oro har, hori seinalatzen 150 00:07:12,470 --> 00:07:14,040 Zerrendako lehen gauza. 151 00:07:14,040 --> 00:07:18,900 Beraz, lehen lerroan hemen, dugun Lehenengo gure jatorrizko L dute. 152 00:07:18,900 --> 00:07:21,370 Beraz, gauza zarela pentsa dezakezu - hori hementxe testu gisa dezakezu uste 153 00:07:21,370 --> 00:07:23,560 besterik erakuslea gordetzen dugu nonbait puntu 154 00:07:23,560 --> 00:07:24,670 lehenengo elementua da. 155 00:07:24,670 --> 00:07:27,500 Eta lotutako zerrenda honetan lau nodo dugu. 156 00:07:27,500 --> 00:07:29,530 Nodo bakoitzean kutxa handi bat da. 157 00:07:29,530 --> 00:07:33,430 Koadroan handiago big barruan kutxa zenbaki oso zatia da. 158 00:07:33,430 --> 00:07:37,400 Eta, ondoren, erakuslea zati bat dugu. 159 00:07:37,400 --> 00:07:39,630 >> Kutxa horiek ez dira marraztuko eskala delako nola big da 160 00:07:39,630 --> 00:07:42,320 bytetan zenbaki oso bat? 161 00:07:42,320 --> 00:07:43,290 Zein handia orain? 162 00:07:43,290 --> 00:07:43,710 Lau. 163 00:07:43,710 --> 00:07:45,470 Eta zein handia da erakuslea? 164 00:07:45,470 --> 00:07:45,940 Lau. 165 00:07:45,940 --> 00:07:48,180 Beraz, benetan, marrazteko bagenitu hau bai kutxak eskalatzeko 166 00:07:48,180 --> 00:07:49,690 tamaina bera izango litzateke. 167 00:07:49,690 --> 00:07:52,870 Kasu horretan, sartu nahi dugun lotuta zerrendan sartu zerbait. 168 00:07:52,870 --> 00:07:57,190 Beraz, hemen ikusi ahal izango duzu behera txertatzen ari gara bost zeharkatuko bidez dugu 169 00:07:57,190 --> 00:08:01,310 lotutako zerrenda, aurkitu non bost doa, eta gero sartu. 170 00:08:01,310 --> 00:08:03,560 >> Hautsi dezagun behera duten eta joan pixka bat motelago. 171 00:08:03,560 --> 00:08:05,510 Taula seinalatu noa. 172 00:08:05,510 --> 00:08:09,930 Beraz, gure nodoaren dugu bost duten mallocs dugu sortutako. 173 00:08:09,930 --> 00:08:11,190 Zergatik denek barrezka ari da? 174 00:08:11,190 --> 00:08:12,130 Just kidding. 175 00:08:12,130 --> 00:08:13,310 Ados. 176 00:08:13,310 --> 00:08:14,820 Beraz malloced dugu bost. 177 00:08:14,820 --> 00:08:16,310 Nodo hau sortu dugu nonbait. 178 00:08:16,310 --> 00:08:17,740 Joateko prest egon behar dugu. 179 00:08:17,740 --> 00:08:20,130 Hasteko aurrean dugun gure bi zerrenda. 180 00:08:20,130 --> 00:08:22,380 Eta sartu nahi dugun ordenatuko moda batean. 181 00:08:22,380 --> 00:08:27,550 >> Beraz bi ikusiko dugu eta gero jarri nahi dugu bost urtean, zer egin dugu ikusten dugunean 182 00:08:27,550 --> 00:08:28,800 Guk baino gutxiago? 183 00:08:28,800 --> 00:08:31,850 184 00:08:31,850 --> 00:08:33,520 Zer? 185 00:08:33,520 --> 00:08:36,750 Bost txertatzeko honetan sartu nahi dugun lotutako zerrenda, mantenduz horrela antolatu. 186 00:08:36,750 --> 00:08:37,520 Bi zenbaki ikusiko dugu. 187 00:08:37,520 --> 00:08:38,769 Beraz, zer egiten dugu? 188 00:08:38,769 --> 00:08:39,179 Marcus? 189 00:08:39,179 --> 00:08:40,679 >> AUDIENCE: Dei erakuslea hurrengo nodo. 190 00:08:40,679 --> 00:08:42,530 >> JASON Hirschhorn: Eta zergatik joan hurrengo bat dugu? 191 00:08:42,530 --> 00:08:45,970 >> AUDIENCE: da delako Zerrendako hurrengo nodoa. 192 00:08:45,970 --> 00:08:48,310 Eta beste kokapen hori bakarrik ezagutzen dugu. 193 00:08:48,310 --> 00:08:50,410 >> JASON Hirschhorn: Eta bost da handiagoa bi baino, bereziki. 194 00:08:50,410 --> 00:08:51,600 Ordenatuko da mantendu nahi dugulako. 195 00:08:51,600 --> 00:08:52,730 Beraz, bost bi baino handiagoa da. 196 00:08:52,730 --> 00:08:54,460 Beraz, aurrera egin dugu hurrengo bat. 197 00:08:54,460 --> 00:08:55,240 Eta orain lau iritsiko gara. 198 00:08:55,240 --> 00:08:56,490 Eta zer gertatzen den lau iritsiko gara? 199 00:08:56,490 --> 00:08:58,920 200 00:08:58,920 --> 00:09:00,310 >> Bost lau baino handiagoa da. 201 00:09:00,310 --> 00:09:01,460 Beraz jarraitzea dugu. 202 00:09:01,460 --> 00:09:03,110 Eta orain Oraindik seietan dugu. 203 00:09:03,110 --> 00:09:04,360 Eta zer ikusten seietan dugu? 204 00:09:04,360 --> 00:09:08,672 205 00:09:08,672 --> 00:09:09,608 Bai, Carlos? 206 00:09:09,608 --> 00:09:10,544 >> AUDIENCE: Sei bost baino handiagoa da. 207 00:09:10,544 --> 00:09:11,480 >> JASON Hirschhorn: Sei da bost baino handiagoa. 208 00:09:11,480 --> 00:09:13,660 Beraz, non nahi dugun bost txertatzeko. 209 00:09:13,660 --> 00:09:17,320 Hala ere, gogoan badugu Besterik ez da erakusle bat hemen - 210 00:09:17,320 --> 00:09:19,840 hau gure erakuslea estra hori da zerrendan zehar zeharkatzen. 211 00:09:19,840 --> 00:09:21,860 Eta sei ari gara seinalatuz. 212 00:09:21,860 --> 00:09:25,010 Pista galdu dugu zer dagoen Sei aurretik dator. 213 00:09:25,010 --> 00:09:29,130 Beraz, zerbait txertatu sartu nahi badugu mantenduz zerrenda honetan ordenatuko, dugu 214 00:09:29,130 --> 00:09:31,630 Ziurrenik erakusleak zenbat behar? 215 00:09:31,630 --> 00:09:32,280 >> AUDIENCE: Bi. 216 00:09:32,280 --> 00:09:32,920 >> JASON HIRSCHORN: Bi. 217 00:09:32,920 --> 00:09:35,720 Korrontearen segimendua egiteko bat bat eta bat segimendua egiteko 218 00:09:35,720 --> 00:09:37,050 aurreko bat du. 219 00:09:37,050 --> 00:09:38,450 Hau banaka lotuta zerrenda bat besterik ez da. 220 00:09:38,450 --> 00:09:39,670 Norabide batean bakarrik jartzen da. 221 00:09:39,670 --> 00:09:43,220 Bi aldiz lotuta zerrenda bat bagenu, non dena gauza seinalatuz zen 222 00:09:43,220 --> 00:09:46,240 da eta horren aurretik gauza, eta gero ondoren ez genuke behar horretarako. 223 00:09:46,240 --> 00:09:49,350 Baina kasu honetan ez dugu nahi galtzen gure aurrean zer etorri zen kasu horretan, pista 224 00:09:49,350 --> 00:09:53,350 bost nonbait sartu behar dugu erdian. 225 00:09:53,350 --> 00:09:55,610 Esan ziren txertatu dugu bederatzi. 226 00:09:55,610 --> 00:09:57,260 Zer gertatuko litzateke denean zortzi lortu nahi dugu? 227 00:09:57,260 --> 00:10:01,860 228 00:10:01,860 --> 00:10:04,880 >> AUDIENCE: litzaidake behar duzu null puntu hori lortzeko. 229 00:10:04,880 --> 00:10:07,820 Null puntua izan beharrean litzaidake duzu elementu bat gehitu eta gero izan 230 00:10:07,820 --> 00:10:09,216 seinalatu eta bederatzi da. 231 00:10:09,216 --> 00:10:09,700 >> JASON HIRSCHORN: Zehazki. 232 00:10:09,700 --> 00:10:10,600 Beraz, zortzi lortuko dugu. 233 00:10:10,600 --> 00:10:13,140 Zerrendako amaieran iritsi garelako hau da null seinalatuz. 234 00:10:13,140 --> 00:10:16,330 Eta, orain, ordez izatea seinalatu du null seinalatu gure nodo berria egiten dugu. 235 00:10:16,330 --> 00:10:19,870 Eta erakuslea ezarri dugu hemen gure nodoaren null. 236 00:10:19,870 --> 00:10:21,445 Du inor edozein zalantza sartzeari buruzko? 237 00:10:21,445 --> 00:10:25,620 238 00:10:25,620 --> 00:10:28,100 Zer ez zait, bada buruz ordenatuko zerrendan mantenduz? 239 00:10:28,100 --> 00:10:31,701 240 00:10:31,701 --> 00:10:34,350 >> AUDIENCE: Negu Gorriak dut at hasita edo amaieran. 241 00:10:34,350 --> 00:10:35,510 >> JASON HIRSCHORN: Negu Gorriak at hasieran edo amaieran. 242 00:10:35,510 --> 00:10:37,276 Zein nahi dugu? 243 00:10:37,276 --> 00:10:38,770 Bobby? 244 00:10:38,770 --> 00:10:41,020 Zergatik amaieran? 245 00:10:41,020 --> 00:10:43,250 >> AUDIENCE: Zeren hasieran Dagoeneko beteta. 246 00:10:43,250 --> 00:10:43,575 >> JASON HIRSCHORN: Ados. 247 00:10:43,575 --> 00:10:44,360 Hasieran jada beteta. 248 00:10:44,360 --> 00:10:46,090 Nork nahi du Bobby aurka argudiatzeko. 249 00:10:46,090 --> 00:10:47,290 Marcus. 250 00:10:47,290 --> 00:10:48,910 >> AUDIENCE: Beno seguruenik nahi makila hasieratik delako 251 00:10:48,910 --> 00:10:50,140 jarri duzu bestela bada at amaieran duzuna izan 252 00:10:50,140 --> 00:10:51,835 zeharkatuko zerrenda osoa. 253 00:10:51,835 --> 00:10:52,990 >> JASON HIRSCHORN: Zehazki. 254 00:10:52,990 --> 00:10:57,970 Exekuzio buruz dugun pentsatzen ari hala bada ere, amaieran txertatu du exekuzio 255 00:10:57,970 --> 00:11:00,110 izan n litzateke, hau tamaina. 256 00:11:00,110 --> 00:11:03,080 Zer da big O txertatzeak duen exekuzio du hasieran? 257 00:11:03,080 --> 00:11:04,170 Etengabeko denbora. 258 00:11:04,170 --> 00:11:07,075 Beraz, ez baduzu mantenduz buruz zaintzen zerbait ordenatuko, askoz ere, besterik gabe, hobeto 259 00:11:07,075 --> 00:11:08,420 zerrenda honen hasieran txertatzeko. 260 00:11:08,420 --> 00:11:10,320 Eta hori konstante denbora egin daiteke. 261 00:11:10,320 --> 00:11:13,900 262 00:11:13,900 --> 00:11:14,690 >> Ados. 263 00:11:14,690 --> 00:11:18,870 Hurrengo eragiketa aurkituko da, eta horrek beste - phrased dugu hau bilaketa gisa. 264 00:11:18,870 --> 00:11:22,470 Baina ari gara bidez begiratu egingo du objektu estekatu batzuen zerrenda. 265 00:11:22,470 --> 00:11:26,000 Zaudete kodea ikusi baterako bilatu baino lehen hitzaldia. 266 00:11:26,000 --> 00:11:29,490 Baina sort besterik ez genuen berarekin txertatu, edo, gutxienez, txertatu 267 00:11:29,490 --> 00:11:30,580 zerbait ordenatuko. 268 00:11:30,580 --> 00:11:36,350 Bidez begiratzea, joan nodo nodo arabera, kopuruaren duzu Oraindik aurkitu arte 269 00:11:36,350 --> 00:11:37,780 bila. 270 00:11:37,780 --> 00:11:39,670 Zer gertatzen iristeko baduzu zerrendako amaieran? 271 00:11:39,670 --> 00:11:43,020 Esaten dut bederatzi eta bila nabil zerrendaren amaierara iristeko. 272 00:11:43,020 --> 00:11:44,270 Zer egiten dugu? 273 00:11:44,270 --> 00:11:47,147 274 00:11:47,147 --> 00:11:48,110 >> AUDIENCE: Return faltsua? 275 00:11:48,110 --> 00:11:48,690 >> JASON HIRSCHORN: Return faltsua. 276 00:11:48,690 --> 00:11:49,960 Ez dugu aurkitu. 277 00:11:49,960 --> 00:11:52,010 Zerrendaren amaiera iritsiko bada, eta Ez baduzu zenbakia Oraindik aurkitu 278 00:11:52,010 --> 00:11:54,170 bila, ez da han ere. 279 00:11:54,170 --> 00:11:55,420 Buruzko zalantzaren bat aurkitu? 280 00:11:55,420 --> 00:11:59,530 281 00:11:59,530 --> 00:12:04,615 Hau horrela antolatu zerrenda bat izan bada, zer egingo zenuke izan gure Bilatzen desberdinak? 282 00:12:04,615 --> 00:12:07,370 283 00:12:07,370 --> 00:12:08,103 Bai. 284 00:12:08,103 --> 00:12:10,600 >> AUDIENCE: lehen balioa aurkituko litzateke hori baino handiagoa 285 00:12:10,600 --> 00:12:12,390 zuretzat eta bilatzen ari zaren ondoren, itzultzeko faltsua. 286 00:12:12,390 --> 00:12:13,190 >> JASON HIRSCHORN: Zehazki. 287 00:12:13,190 --> 00:12:17,310 Beraz horrela antolatu zerrenda bat izanez gero, lortuko dugu hori zer baino handiagoa den zerbait 288 00:12:17,310 --> 00:12:20,180 bilatzen ari gara, ez dugu behar mantentzeko zerrendaren amaieran joan. 289 00:12:20,180 --> 00:12:24,060 Daiteke puntu horretan itzuliko gara faltsua ari gara, ez delako aurkitu du. 290 00:12:24,060 --> 00:12:27,340 Galdera da, orain, hitz egin dugu lotuta zerrendak mantenduz ordenatuta, 291 00:12:27,340 --> 00:12:28,180 horiek mantenduz ordenatu gabe. 292 00:12:28,180 --> 00:12:30,050 Hori zerbait Oraindik izango da seguruenik pentsatu izan da joan 293 00:12:30,050 --> 00:12:34,240 denean kodeketa arazo ezarri bost baduzu aukeratu bereizi hash taula bat 294 00:12:34,240 --> 00:12:36,360 kateatzea hurbilketa, eta horrek buruz hitz egingo dugu beranduago. 295 00:12:36,360 --> 00:12:41,400 >> Baina merezi du zerrendan mantentzeko ordenatuko eta ondoren izango da, agian, izan ahal 296 00:12:41,400 --> 00:12:42,310 bilaketak azkarrago? 297 00:12:42,310 --> 00:12:47,220 Edo, hobe azkar txerta konstante exekuzio zerbait baina gero 298 00:12:47,220 --> 00:12:48,430 luzeagoa izan bilatzen? 299 00:12:48,430 --> 00:12:52,250 Duten denerako bat bertan duzun get zer da gehiago egokia erabakitzeko 300 00:12:52,250 --> 00:12:53,590 Zure arazo bereziei. 301 00:12:53,590 --> 00:12:56,680 Eta ez dago ez da nahitaez bat erabat erantzun egokia. 302 00:12:56,680 --> 00:12:59,520 Baina zalantzarik gabe, erabaki bat lortuko duzu , egiteko eta defendatzeko seguruenik ona 303 00:12:59,520 --> 00:13:05,270 horretan, esan, iruzkin bat edo bi zergatik bata bestearen gainean digu. 304 00:13:05,270 --> 00:13:06,490 >> Azkenik, ezabatzen. 305 00:13:06,490 --> 00:13:08,100 Ikusi dugu ezabatzen. 306 00:13:08,100 --> 00:13:09,180 Da bilatzen antzekoa da. 307 00:13:09,180 --> 00:13:11,020 Elementua bilatzen dugu. 308 00:13:11,020 --> 00:13:12,390 Esan sei ezabatzen saiatzen ari gara. 309 00:13:12,390 --> 00:13:14,450 Beraz aurkituko dugu sei hemen. 310 00:13:14,450 --> 00:13:18,860 Ziur dugu egin behar dugu gauza egin da hori dena delakoa da seinalatuz 311 00:13:18,860 --> 00:13:21,220 Sei - ikusiko dugu urrats gisa bi behera hemen - 312 00:13:21,220 --> 00:13:26,500 dena delakoa da eta sei beharrak seinalatuz skip sei orain eta behar den aldatu 313 00:13:26,500 --> 00:13:28,160 edozein dela sei da seinalatuz. 314 00:13:28,160 --> 00:13:31,410 Ez dugu nahi, gainerako inoiz umezurtz Gure zerrenda horretan ezarri nahi ditugu ahaztu arabera 315 00:13:31,410 --> 00:13:32,960 Aurreko erakuslea. 316 00:13:32,960 --> 00:13:35,960 Eta, ondoren, batzuetan, arabera programa da, besterik gabe, egingo dute 317 00:13:35,960 --> 00:13:37,380 Nodo hau ezabatu erabat. 318 00:13:37,380 --> 00:13:40,135 Batzuetan itzuli nahi duzu balioa duten nodo horretan da. 319 00:13:40,135 --> 00:13:42,490 Beraz, lanak nola ezabatzen. 320 00:13:42,490 --> 00:13:44,610 Buruzko zalantzaren bat ezabatu? 321 00:13:44,610 --> 00:13:51,280 322 00:13:51,280 --> 00:13:53,850 >> AUDIENCE: Beraz zu ezabatu bada da, litzateke erabili besterik ez duzu free delako 323 00:13:53,850 --> 00:13:55,655 zentzuzkoa malloced zegoen? 324 00:13:55,655 --> 00:13:57,976 >> JASON HIRSCHORN: to askatzea nahi baduzu hori zehazki eskubidea eta duzu zerbait 325 00:13:57,976 --> 00:13:58,540 malloced da. 326 00:13:58,540 --> 00:14:00,410 Esateko balio hori itzuli nahi izan dugu. 327 00:14:00,410 --> 00:14:04,010 Agian itzuliko gara sei eta ondoren doan nodo hau eta dei free ezazu. 328 00:14:04,010 --> 00:14:06,180 Edo seguruenik litzaidake deitzen dugun doako lehen eta ondoren itzultzeko sei. 329 00:14:06,180 --> 00:14:11,210 330 00:14:11,210 --> 00:14:11,580 >> Ados. 331 00:14:11,580 --> 00:14:14,010 Beraz dezagun aurrera coding landu. 332 00:14:14,010 --> 00:14:16,090 Hiru funtzio kode goaz. 333 00:14:16,090 --> 00:14:18,260 Lehena da insert_node deritzo. 334 00:14:18,260 --> 00:14:22,170 Beraz duzula bidaliko dut kodea behar duzu, eta duzu hau geroago ikusten ari bada 335 00:14:22,170 --> 00:14:28,020 kodearen irits zaitezke linked.c in CS50 web orrian. 336 00:14:28,020 --> 00:14:30,880 Baina linked.c batean, ez da zenbait hori da dagoeneko hezurdura kodea 337 00:14:30,880 --> 00:14:32,280 idatzi zuretzat. 338 00:14:32,280 --> 00:14:34,560 Eta orduan, bikote funtzio bat idatzi behar duzu. 339 00:14:34,560 --> 00:14:36,380 >> Lehen goaz idatzi insert_node. 340 00:14:36,380 --> 00:14:39,800 Eta zer insert_node du da zenbaki oso bat txertatzen. 341 00:14:39,800 --> 00:14:42,440 Eta osokoa ari zaren emanez lotutako zerrenda batean. 342 00:14:42,440 --> 00:14:45,470 Eta bereziki, behar duzun ordenatuko zerrendan mantentzeko 343 00:14:45,470 --> 00:14:47,650 txikiena etatik handiena. 344 00:14:47,650 --> 00:14:51,360 Halaber, ez duzu nahi edozein bikoiztuak txertatzeko. 345 00:14:51,360 --> 00:14:54,600 Azkenik, insert_node ikusi dezakezu bezala boolearra itzultzen du. 346 00:14:54,600 --> 00:14:57,140 Beraz, zu ustezko utzi, erabiltzaileak jakin txertatze izan zen ala ez 347 00:14:57,140 --> 00:15:00,800 egia edo gezurra itzuliz arrakastatsua. 348 00:15:00,800 --> 00:15:02,580 Programa honen amaieran - 349 00:15:02,580 --> 00:15:05,750 eta etapa honetan, ez duzu behar ezer askatzeaz kezkatu. 350 00:15:05,750 --> 00:15:11,790 Beraz, egiten ari zaren guztia da zenbaki oso bat hartzen eta txertatu zerrenda batean. 351 00:15:11,790 --> 00:15:13,890 >> Hau da, zer duzun galdetzen dut orain egin. 352 00:15:13,890 --> 00:15:17,620 Berriz ere, linked.c batean, eta zuk denek dute, hezurdura kodea da. 353 00:15:17,620 --> 00:15:20,980 Eta duzun beheko aldera ikusi beharko lagin funtzioaren adierazpenean. 354 00:15:20,980 --> 00:15:27,390 Hala ere, programazioan sartzen joan aurretik C, oso animatzen zaituztet joan 355 00:15:27,390 --> 00:15:29,330 urratsak egiten dugu dugun aste bakoitzean praktikatzeko. 356 00:15:29,330 --> 00:15:31,100 Dugu dagoeneko pasatu horren irudi bat. 357 00:15:31,100 --> 00:15:33,380 Beraz ulertzea batzuk izan behar dituzu hau nola funtzionatzen duen. 358 00:15:33,380 --> 00:15:36,590 Baina zuk idatzi animatuko nuke urpean sartu aurretik pseudocode batzuk 359 00:15:36,590 --> 00:15:38,640 Eta ari gara baino gehiago joan da joan pseudocode talde gisa. 360 00:15:38,640 --> 00:15:41,470 Eta ondoren idatzitakoa behin zure pseudocode, eta idatzi dugu behin gure 361 00:15:41,470 --> 00:15:45,850 pseudocode talde gisa, ahal duzun coding da C. sartu 362 00:15:45,850 --> 00:15:49,980 >> Buruak bat sortu, insert_node funtzioa gisa da seguruenik of trickiest 363 00:15:49,980 --> 00:15:53,550 hirurak ari gara, idazteko joan dudalako mugak osagarriak batzuk gehitu behar 364 00:15:53,550 --> 00:15:57,190 zure programazioa, bereziki, duten Ez bazara edozein txertatzeko joan 365 00:15:57,190 --> 00:15:59,880 bikoiztuak eta den zerrendan ordenatuko jarraituko behar. 366 00:15:59,880 --> 00:16:02,660 Beraz, hau ez hutsala programa bat da ondorengo kodea behar duzula. 367 00:16:02,660 --> 00:16:06,470 Eta zergatik ez bost hartu duzu zazpi minutu besterik ezagutu ari da lanean 368 00:16:06,470 --> 00:16:07,640 pseudocode eta kodea. 369 00:16:07,640 --> 00:16:09,460 Eta orduan hasiko gara talde gisa joan. 370 00:16:09,460 --> 00:16:11,680 Berriz ere, galderaren bat besterik ez duzu bada eskua altxatu eta inguruan etorriko naiz. 371 00:16:11,680 --> 00:16:15,258 372 00:16:15,258 --> 00:16:16,508 . 373 00:16:16,508 --> 00:18:28,370 374 00:18:28,370 --> 00:18:30,120 >> Ere, oro har egiten dugu horiek - 375 00:18:30,120 --> 00:18:32,070 edo ez dut esplizituki esan duzu jendearekin lan egin daiteke. 376 00:18:32,070 --> 00:18:36,500 Baina, jakina, oso animatzen zaitut, Zalantzaren bat izanez gero, eskatu 377 00:18:36,500 --> 00:18:39,840 bizilaguna ondoan eserita edo nahiz eta norbait berarekin lan 378 00:18:39,840 --> 00:18:40,510 bestela, nahi izanez gero. 379 00:18:40,510 --> 00:18:42,600 Honek ez du pertsona bat izan nahi du Jarduera isila. 380 00:18:42,600 --> 00:20:11,770 381 00:20:11,770 --> 00:20:16,330 >> Dezagun batzuk idazteari ekin en pseudocode taula gainean. 382 00:20:16,330 --> 00:20:19,395 Duten lehen lerroan eman ahal dit Programa honen pseudocode? 383 00:20:19,395 --> 00:20:22,240 384 00:20:22,240 --> 00:20:23,640 Funtzio honetarako, baizik eta - insert_node. 385 00:20:23,640 --> 00:20:29,960 386 00:20:29,960 --> 00:20:31,830 Alden? 387 00:20:31,830 --> 00:20:36,560 >> AUDIENCE: Beraz, lehenengo gauza egin nuen sortu nodo eta I erakuslea berria 388 00:20:36,560 --> 00:20:41,320 hasieratu seinalatuz bera da gauza zerrenda horretan apuntatzen da. 389 00:20:41,320 --> 00:20:41,550 >> JASON HIRSCHORN: Ados. 390 00:20:41,550 --> 00:20:45,190 Beraz erakuslea berri bat sortzen ari zaren zerrendan, ez nodo. 391 00:20:45,190 --> 00:20:45,420 >> AUDIENCE: Eskuin. 392 00:20:45,420 --> 00:20:46,150 Bai. 393 00:20:46,150 --> 00:20:46,540 >> JASON HIRSCHORN: Ados. 394 00:20:46,540 --> 00:20:48,221 Eta gero, zer egin nahi dugu? 395 00:20:48,221 --> 00:20:49,163 Zer da horren ondoren? 396 00:20:49,163 --> 00:20:50,105 Zer nodo buruz? 397 00:20:50,105 --> 00:20:51,050 Ez dugu nodo bat. 398 00:20:51,050 --> 00:20:52,300 Balio bat besterik ez dugu. 399 00:20:52,300 --> 00:20:55,918 400 00:20:55,918 --> 00:20:58,890 Nodo bat txertatu nahi badugu, zer egiten dugu are gehiago, ezin dugu aurretik lehen egin behar 401 00:20:58,890 --> 00:20:59,980 bertan txertatu pentsatzen? 402 00:20:59,980 --> 00:21:00,820 >> AUDIENCE: Oh, barkatu. 403 00:21:00,820 --> 00:21:02,160 espazio malloc nodo bat behar dugu. 404 00:21:02,160 --> 00:21:02,455 >> JASON HIRSCHORN: Bikain. 405 00:21:02,455 --> 00:21:03,210 Egin dezagun - 406 00:21:03,210 --> 00:21:04,628 Ados. 407 00:21:04,628 --> 00:21:06,065 Ezin altua duten iristeko. 408 00:21:06,065 --> 00:21:08,939 409 00:21:08,939 --> 00:21:09,897 Ados. 410 00:21:09,897 --> 00:21:13,236 Behera joan goaz, eta, ondoren, bi zutabe erabiltzen ari gara. 411 00:21:13,236 --> 00:21:13,732 Ezin dut joan - 412 00:21:13,732 --> 00:21:14,982 Ados. 413 00:21:14,982 --> 00:21:23,660 414 00:21:23,660 --> 00:21:25,130 Nodo berria sortzen du. 415 00:21:25,130 --> 00:21:29,380 Erakuslea beste sor dezakezu zerrendara edo erabili dezakezu zerrenda existitzen gisa. 416 00:21:29,380 --> 00:21:30,720 Ez benetan behar duzun horretarako. 417 00:21:30,720 --> 00:21:31,750 >> Beraz, nodo berri bat sortu dugu. 418 00:21:31,750 --> 00:21:32,010 Handia. 419 00:21:32,010 --> 00:21:32,840 Hori zer lehen egin dugu. 420 00:21:32,840 --> 00:21:34,870 Zer da hurrengoa? 421 00:21:34,870 --> 00:21:35,080 >> AUDIENCE: Itxaron. 422 00:21:35,080 --> 00:21:38,330 Nodo berri bat sortu behar dugu orain, edo behar den ziur itxaron dugu 423 00:21:38,330 --> 00:21:42,260 ez dago nodo bikoiztuak zerrendan sortu aurretik dugu? 424 00:21:42,260 --> 00:21:43,100 >> JASON HIRSCHORN: Ona galdera. 425 00:21:43,100 --> 00:21:47,770 Dezagun eutsi en geroago delako da garai sortzeko egingo dugu gehiengo 426 00:21:47,770 --> 00:21:48,220 Nodo berria. 427 00:21:48,220 --> 00:21:49,110 Beraz, hemen jarraituko dugu horretan. 428 00:21:49,110 --> 00:21:51,006 Baina galdera ona da. 429 00:21:51,006 --> 00:21:53,250 Sortu eta bada aurkituko dugu bikoiztua, zer egin beharko lukete 430 00:21:53,250 --> 00:21:54,490 egiten dugu itzuli aurretik? 431 00:21:54,490 --> 00:21:55,190 >> AUDIENCE: Doan da. 432 00:21:55,190 --> 00:21:55,470 >> JASON HIRSCHORN: Bai. 433 00:21:55,470 --> 00:21:56,500 Ziurrenik askatzea da. 434 00:21:56,500 --> 00:21:56,760 Ados. 435 00:21:56,760 --> 00:21:59,850 Zer egiten dugu dugu ondoren nodo berri bat sortzeko? 436 00:21:59,850 --> 00:22:02,260 Annie? 437 00:22:02,260 --> 00:22:04,780 >> AUDIENCE: jarri dugu nodoaren zenbakiarekin? 438 00:22:04,780 --> 00:22:05,140 >> JASON HIRSCHORN: Zehazki. 439 00:22:05,140 --> 00:22:07,190 Zenbakia jarri dugu - espazio malloc dugu. 440 00:22:07,190 --> 00:22:08,160 Duten utzi noa guztiak lerro bat bezala. 441 00:22:08,160 --> 00:22:08,720 Baina eskubidea. 442 00:22:08,720 --> 00:22:10,305 Espazio malloc dugu, eta, ondoren, zenbakia jarri dugu sartu 443 00:22:10,305 --> 00:22:12,585 Nahiz erakuslea ezarri ahal izango ditugu, zati null. 444 00:22:12,585 --> 00:22:13,720 Hori da zehazki eskubidea. 445 00:22:13,720 --> 00:22:17,400 Eta gero, zer horren ondoren zer? 446 00:22:17,400 --> 00:22:18,490 Argazki hau atera genuen taula gainean. 447 00:22:18,490 --> 00:22:21,190 Beraz, zer egiten dugu? 448 00:22:21,190 --> 00:22:22,680 >> AUDIENCE: zerrendan zehar joan ginen. 449 00:22:22,680 --> 00:22:23,930 >> JASON HIRSCHORN: zerrendan zehar joan. 450 00:22:23,930 --> 00:22:30,620 451 00:22:30,620 --> 00:22:31,100 Ados. 452 00:22:31,100 --> 00:22:34,280 Eta zer begiratu dugu nodo bakoitzean. 453 00:22:34,280 --> 00:22:35,955 Kurt, zer egiaztatu dugu Nodo bakoitzean for? 454 00:22:35,955 --> 00:22:41,640 >> AUDIENCE: Ikus n balioaren ala nodo n balioa baino handiagoa da 455 00:22:41,640 --> 00:22:43,070 gure nodoa. 456 00:22:43,070 --> 00:22:43,340 >> JASON HIRSCHORN: Ados. 457 00:22:43,340 --> 00:22:44,280 Egin dut - 458 00:22:44,280 --> 00:22:45,855 yeah, Ados. 459 00:22:45,855 --> 00:22:48,160 Beraz, n - 460 00:22:48,160 --> 00:22:59,040 Balioa handiagoa bada, esan nahi dut Nodo hau baino, orduan zer egiten dugu? 461 00:22:59,040 --> 00:23:07,290 >> AUDIENCE: Beno, gero sartu gara eskubide hori baino lehen gauza. 462 00:23:07,290 --> 00:23:07,970 >> JASON HIRSCHORN: Ados. 463 00:23:07,970 --> 00:23:09,410 Beraz, hau baino handiagoa bada, ondoren, txertatu nahi dugu. 464 00:23:09,410 --> 00:23:14,010 Baina txertatzeko eskuineko aurretik nahi dugu dugu izan ere egin beharko lukeelako 465 00:23:14,010 --> 00:23:16,070 jarraipena, eta ondoren, zer izan zen aurretik. 466 00:23:16,070 --> 00:23:22,690 Beraz txertatu aurretik. 467 00:23:22,690 --> 00:23:25,120 Beraz, ziurrenik, zerbait faltan botatzen dugu lehenago. 468 00:23:25,120 --> 00:23:27,770 Ziurrenik ez dugu behar izango mantenduz zer gertatzen da pista. 469 00:23:27,770 --> 00:23:28,460 Baina lortu dugu han. 470 00:23:28,460 --> 00:23:30,160 Beraz, zer balioa baino txikiagoa? 471 00:23:30,160 --> 00:23:38,030 472 00:23:38,030 --> 00:23:39,710 Kurt, zer egiten dugu bada balioa baino txikiagoa? 473 00:23:39,710 --> 00:23:43,000 >> AUDIENCE: Orduan, besterik gabe, gorde duzu joan azkena salbu. 474 00:23:43,000 --> 00:23:43,550 >> JASON HIRSCHORN: hori gustatzen zait. 475 00:23:43,550 --> 00:23:44,800 Beraz, hurrengo nodo joan. 476 00:23:44,800 --> 00:23:47,410 477 00:23:47,410 --> 00:23:48,930 Ezean azkena da - 478 00:23:48,930 --> 00:23:51,100 ari gara seguruenik duten egiaztapena baldintza bat baldintzapean ere. 479 00:23:51,100 --> 00:23:54,870 Baina bai, hurrengo nodoa. 480 00:23:54,870 --> 00:23:58,680 Eta hori oso baxua lortzean, beraz mugitu dugu hemen. 481 00:23:58,680 --> 00:24:02,030 Baina bada - 482 00:24:02,030 --> 00:24:03,280 daiteke denek ikusi hau? 483 00:24:03,280 --> 00:24:07,230 484 00:24:07,230 --> 00:24:11,610 Berdinak Oraindik badugu zer egiten dugu? 485 00:24:11,610 --> 00:24:15,740 Balioa txertatzeko saiatzen ari gara bada nodo honen balioa berdina? 486 00:24:15,740 --> 00:24:16,320 Bai? 487 00:24:16,320 --> 00:24:18,400 >> IKUSLEEN: [INAUDIBLE]. 488 00:24:18,400 --> 00:24:18,850 >> JASON HIRSCHORN: Bai. 489 00:24:18,850 --> 00:24:19,290 Hori - 490 00:24:19,290 --> 00:24:20,090 Marcus eskubidea da. 491 00:24:20,090 --> 00:24:21,330 Liteke agian egin dugu zerbait desberdina. 492 00:24:21,330 --> 00:24:25,360 Baina emandako sortu dugu, hemen askatu behar dugu, eta ondoren itzuli. 493 00:24:25,360 --> 00:24:26,774 Oh mutil. 494 00:24:26,774 --> 00:24:30,080 Hobea da hori? 495 00:24:30,080 --> 00:24:31,850 Nola da hori? 496 00:24:31,850 --> 00:24:33,100 Ados. 497 00:24:33,100 --> 00:24:35,360 498 00:24:35,360 --> 00:24:37,640 Libre eta gero, zer egin dugu itzultzeko, [INAUDIBLE]? 499 00:24:37,640 --> 00:24:41,330 500 00:24:41,330 --> 00:24:44,110 Ados. 501 00:24:44,110 --> 00:24:45,360 Dugu ezer falta dira? 502 00:24:45,360 --> 00:24:53,500 503 00:24:53,500 --> 00:24:59,650 Beraz, non dira jarraipena dugu aurretiko Nodo? 504 00:24:59,650 --> 00:25:02,370 >> AUDIENCE: uste dut joango litzateke ondoren nodo berri bat sortzeko. 505 00:25:02,370 --> 00:25:02,600 >> JASON HIRSCHORN: Ados. 506 00:25:02,600 --> 00:25:03,940 Beraz, hasieran ziurrenik zaitugu - 507 00:25:03,940 --> 00:25:07,175 yeah, erakuslea erregistro berri bat sortu ahal izango dugu Nodo, aurreko nodoaren erakuslea bat bezala eta 508 00:25:07,175 --> 00:25:09,600 uneko nodoaren erakuslea. 509 00:25:09,600 --> 00:25:12,640 Hargatik txertatu duten hemen. 510 00:25:12,640 --> 00:25:15,610 511 00:25:15,610 --> 00:25:26,900 Sortu egungo eta aurreko nodo erakusleak. 512 00:25:26,900 --> 00:25:28,955 Baina ez erakusleak horiek doitzeko dugu? 513 00:25:28,955 --> 00:25:30,205 Non ez dela egin nahi dugu kodean? 514 00:25:30,205 --> 00:25:33,830 515 00:25:33,830 --> 00:25:34,160 Jeff? 516 00:25:34,160 --> 00:25:35,170 >> AUDIENCE: - Balio baldintza? 517 00:25:35,170 --> 00:25:36,420 >> JASON HIRSCHORN: Zein bereziki bat? 518 00:25:36,420 --> 00:25:39,862 519 00:25:39,862 --> 00:25:40,720 >> AUDIENCE: besterik ez naiz nahastu. 520 00:25:40,720 --> 00:25:44,200 Balioa nodo hori baino handiagoa bada, ez du esan nahi joan nahi duzula 521 00:25:44,200 --> 00:25:45,320 hurrengo nodo? 522 00:25:45,320 --> 00:25:49,515 >> JASON Hirschhorn: Beraz, gure balioa bada nodo honen balioa baino handiagoa. 523 00:25:49,515 --> 00:25:52,130 >> AUDIENCE: Bai, gero zuk nahi duzuna nahi joan gehiago line behera, ezta? 524 00:25:52,130 --> 00:25:52,590 >> JASON Hirschhorn: Eskuin. 525 00:25:52,590 --> 00:25:53,840 Beraz, ez dugu sartu ezazu hemen. 526 00:25:53,840 --> 00:25:58,430 527 00:25:58,430 --> 00:26:03,240 Balioa nodo hau baino txikiagoa bada, orduan joan hurrengo nodo nahi dugu - edo orduan guk 528 00:26:03,240 --> 00:26:03,835 txertatu aurretik. 529 00:26:03,835 --> 00:26:05,966 >> AUDIENCE: Itxaron, hau da hau nodo eta dagokion balioa da? 530 00:26:05,966 --> 00:26:08,510 531 00:26:08,510 --> 00:26:09,280 >> JASON Hirschhorn: Ona galdera. 532 00:26:09,280 --> 00:26:13,260 Balioa funtzioaren definizio hau per da, zer ari zaren jakin dugu. 533 00:26:13,260 --> 00:26:16,910 Balioa beraz gaude emandako kopurua da. 534 00:26:16,910 --> 00:26:21,120 Beraz, balioa da hau baino gutxiago bada Nodo, txertatzeko denbora behar dugu. 535 00:26:21,120 --> 00:26:24,575 Balioa nodo hori baino handiagoa bada, joan hurrengo nodo nahi dugu. 536 00:26:24,575 --> 00:26:26,790 Eta jatorrizko galdera atzera, nahiz eta, non - 537 00:26:26,790 --> 00:26:29,060 >> AUDIENCE: balioa handiagoa bada Nodo hau baino. 538 00:26:29,060 --> 00:26:30,310 >> JASON Hirschhorn: Eta, beraz, zer egin, hemen egiten dugu? 539 00:26:30,310 --> 00:26:36,790 540 00:26:36,790 --> 00:26:38,160 Gozoa. 541 00:26:38,160 --> 00:26:38,860 Zuzena dela. 542 00:26:38,860 --> 00:26:41,370 Besterik ez dut idazten joan eguneratzea erakusleak. 543 00:26:41,370 --> 00:26:44,010 Baina bai, uneko bat-ekin eguneratu nahi duzu 544 00:26:44,010 --> 00:26:46,080 hurrengo bat seinalatu. 545 00:26:46,080 --> 00:26:47,330 Beste ezer falta ari gara? 546 00:26:47,330 --> 00:26:52,710 547 00:26:52,710 --> 00:26:54,940 Beraz, ez dut hori idazten joan gedit sartu kodea. 548 00:26:54,940 --> 00:26:58,375 Eta hau egin bitartean I, bat izan dezakezu minutu pare gehiago coding gainean lan 549 00:26:58,375 --> 00:28:19,240 hau C. 550 00:28:19,240 --> 00:28:20,940 >> Beraz, sarrera daukat pseudocode. 551 00:28:20,940 --> 00:28:22,940 Ohar azkar bat Hasteko dugu aurretik. 552 00:28:22,940 --> 00:28:25,560 Agian ez gara izango guztiz gai amaitzeko hau guztietan 553 00:28:25,560 --> 00:28:27,300 Funtzio horiek hiru. 554 00:28:27,300 --> 00:28:30,630 Haiei konponbide zuzena hor dago duten mezu elektroniko bat egingo dut you guys 555 00:28:30,630 --> 00:28:33,730 atalaren ondoren, eta, izango da CS50.net on da argitaratu. 556 00:28:33,730 --> 00:28:35,640 Beraz, ez dut animatzen duzu zoaz atal begiratu. 557 00:28:35,640 --> 00:28:40,550 Dituzun horiek saiatzeko buruzko animatzen dut zure jabea, eta, ondoren, praktikan erabili 558 00:28:40,550 --> 00:28:41,760 arazoak zure erantzunak egiaztatzeko. 559 00:28:41,760 --> 00:28:47,070 Diseinatu guztiak dira horiei estuki erlazionatzeko eta atxikitzen zer 560 00:28:47,070 --> 00:28:48,400 arazo multzo egin behar duzun. 561 00:28:48,400 --> 00:28:53,820 Beraz, hau praktikatzera animatzen dut zuri zeure eta, ondoren, kodea erabili 562 00:28:53,820 --> 00:28:54,660 euren erantzunak frogatzea. 563 00:28:54,660 --> 00:28:57,060 Nahi ez dut delako mugitu ahal hash atalean uneren mahaiak. 564 00:28:57,060 --> 00:28:58,150 Beraz, ez da agian guztiarekin negoziatzeko. 565 00:28:58,150 --> 00:28:59,960 Baina ahal dugu askoz egin dugu orain. 566 00:28:59,960 --> 00:29:00,370 >> Ados. 567 00:29:00,370 --> 00:29:01,960 Has gaitezen. 568 00:29:01,960 --> 00:29:04,770 Asam, nola ez, nodo berri bat sortzen dugu? 569 00:29:04,770 --> 00:29:06,810 >> AUDIENCE: egiturari duzu *. 570 00:29:06,810 --> 00:29:09,640 >> JASON Hirschhorn: Beraz dugu duten hemen sortu. 571 00:29:09,640 --> 00:29:10,040 Oh, barkatu. 572 00:29:10,040 --> 00:29:13,530 Egiturari esaten ari zinen *. 573 00:29:13,530 --> 00:29:17,260 >> AUDIENCE: Eta gero, [? mota?] Nodo edo c nodoa. 574 00:29:17,260 --> 00:29:17,780 >> JASON Hirschhorn: Ados. 575 00:29:17,780 --> 00:29:19,740 Deitu du new_node noa beraz, koherentea geratzeko aukera izango dugu. 576 00:29:19,740 --> 00:29:22,646 577 00:29:22,646 --> 00:29:33,180 >> AUDIENCE: Eta hori ezarri nahi diozun , buru lehen nodoa. 578 00:29:33,180 --> 00:29:33,580 >> JASON Hirschhorn: Ados. 579 00:29:33,580 --> 00:29:37,290 Beraz, gaur egun seinalatuz hau - beraz, hau ez du nodo berri sortu oraindik. 580 00:29:37,290 --> 00:29:41,380 Hau da, besterik gabe seinalatuz Zerrendako lehen nodoa. 581 00:29:41,380 --> 00:29:42,630 Nola ez, nodo berri bat? 582 00:29:42,630 --> 00:29:45,490 583 00:29:45,490 --> 00:29:48,070 Espazioa behar dut nodo berri bat sortu nahi bada. 584 00:29:48,070 --> 00:29:49,230 Malloc. 585 00:29:49,230 --> 00:29:51,710 Eta zein handia? 586 00:29:51,710 --> 00:30:00,390 >> AUDIENCE: struct handiagoak. 587 00:30:00,390 --> 00:30:01,150 >> JASON Hirschhorn: The struct tamaina. 588 00:30:01,150 --> 00:30:02,400 Eta zer deitzen struct? 589 00:30:02,400 --> 00:30:09,670 590 00:30:09,670 --> 00:30:09,840 >> AUDIENCE: Node? 591 00:30:09,840 --> 00:30:11,640 >> JASON Hirschhorn: Node. 592 00:30:11,640 --> 00:30:17,640 Beraz malloc (sizeof (nodo)); espazioan ematen digu. 593 00:30:17,640 --> 00:30:19,740 Eta lerro hau da - 594 00:30:19,740 --> 00:30:21,740 Gauza bat da zuzena linea honetan. 595 00:30:21,740 --> 00:30:24,430 New_node da eta egitura bat erakuslea? 596 00:30:24,430 --> 00:30:25,650 Duen izen generiko bat da. 597 00:30:25,650 --> 00:30:26,520 Zer da - 598 00:30:26,520 --> 00:30:27,450 Nodo, zehazki. 599 00:30:27,450 --> 00:30:29,340 Nodo bat da *. 600 00:30:29,340 --> 00:30:33,010 Eta zer eskuineko ondoren egiten dugu zerbait, Asan malloc dugu? 601 00:30:33,010 --> 00:30:34,476 Zer da lehen gauza egiten dugu? 602 00:30:34,476 --> 00:30:38,850 603 00:30:38,850 --> 00:30:40,320 Zer bada ez du funtzionatzen? 604 00:30:40,320 --> 00:30:42,430 >> AUDIENCE: Oh, begiratu bada nodo seinalatzen? 605 00:30:42,430 --> 00:30:43,310 >> JASON Hirschhorn: Zehazki. 606 00:30:43,310 --> 00:30:46,750 Beraz new_node badituzu berdin berdin nulua, zer egiten dugu? 607 00:30:46,750 --> 00:30:51,650 608 00:30:51,650 --> 00:30:54,820 Hau bool batean, funtzio hori itzultzen. 609 00:30:54,820 --> 00:30:57,760 Zehazki. 610 00:30:57,760 --> 00:30:58,450 Itxura ona. 611 00:30:58,450 --> 00:30:59,680 Ezer ez dago gehitzeko? 612 00:30:59,680 --> 00:31:00,670 Gauzak gehitu dugu amaieran. 613 00:31:00,670 --> 00:31:03,160 Baina hori orain arte itxura ona. 614 00:31:03,160 --> 00:31:06,170 Sortu egungo eta aurreko erakusleak. 615 00:31:06,170 --> 00:31:08,650 Michael, nola egin behar dut hau? 616 00:31:08,650 --> 00:31:12,810 >> AUDIENCE: beharko zenioke nodo bat egin *. 617 00:31:12,810 --> 00:31:21,800 618 00:31:21,800 --> 00:31:25,502 Bat egiteko ez izan zinela new_node baina eman du 619 00:31:25,502 --> 00:31:26,905 nodo dagoeneko badugu. 620 00:31:26,905 --> 00:31:27,230 >> JASON Hirschhorn: Ados. 621 00:31:27,230 --> 00:31:29,255 Beraz, uneko nodoaren on Oraindik dugu. 622 00:31:29,255 --> 00:31:30,505 Curr duten deitu dut. 623 00:31:30,505 --> 00:31:39,650 624 00:31:39,650 --> 00:31:39,770 Ondo da. 625 00:31:39,770 --> 00:31:41,620 Erabaki dugu gorde nahi dugu jakin behar dugu bi delako 626 00:31:41,620 --> 00:31:42,870 aurretik zer. 627 00:31:42,870 --> 00:31:45,770 628 00:31:45,770 --> 00:31:47,020 Zer ez dute ezagutu hasieratu? 629 00:31:47,020 --> 00:31:49,874 630 00:31:49,874 --> 00:31:54,180 >> AUDIENCE: Haien gure zerrendan balioa. 631 00:31:54,180 --> 00:31:58,090 >> JASON Hirschhorn: Beraz, zer da Gure zerrendan lehenengo gauza? 632 00:31:58,090 --> 00:32:04,050 Edo nola ez badakigu non da gure zerrendaren hasiera-hasieratik? 633 00:32:04,050 --> 00:32:08,015 >> AUDIENCE: Ez da igaro funtzioa sartu? 634 00:32:08,015 --> 00:32:08,466 >> JASON Hirschhorn: Eskuin. 635 00:32:08,466 --> 00:32:09,716 Hura hementxe gainditu zen. 636 00:32:09,716 --> 00:32:15,910 637 00:32:15,910 --> 00:32:18,980 Ari funtzioa pasa hala bada ere, zerrendaren hasteko, zer behar dugu 638 00:32:18,980 --> 00:32:21,270 ezarri egungo berdina? 639 00:32:21,270 --> 00:32:22,110 >> AUDIENCE: zerrenda. 640 00:32:22,110 --> 00:32:22,900 >> JASON Hirschhorn: zerrenda. 641 00:32:22,900 --> 00:32:24,090 Hori da zehazki eskubidea. 642 00:32:24,090 --> 00:32:26,290 Orain helbidearen ditu Gure zerrendaren hasieran. 643 00:32:26,290 --> 00:32:28,450 Eta zer aurreko buruz? 644 00:32:28,450 --> 00:32:31,920 >> AUDIENCE: Zerrenda ken bat? 645 00:32:31,920 --> 00:32:32,690 >> JASON Hirschhorn: da bertaratu aurretik ezer ez. 646 00:32:32,690 --> 00:32:34,580 Beraz, zer deus adierazteko egin dezakegu? 647 00:32:34,580 --> 00:32:35,050 >> AUDIENCE: Null. 648 00:32:35,050 --> 00:32:35,450 >> JASON Hirschhorn: Bai. 649 00:32:35,450 --> 00:32:37,950 Ideia on bat bezala soinuak. 650 00:32:37,950 --> 00:32:38,360 Perfektua. 651 00:32:38,360 --> 00:32:39,630 Eskerrik asko. 652 00:32:39,630 --> 00:32:42,850 Zerrendan zehar joan. 653 00:32:42,850 --> 00:32:45,490 Constantino, zenbat denboraz goaz zerrendan zehar joan? 654 00:32:45,490 --> 00:32:49,010 >> AUDIENCE: null iritsi arte. 655 00:32:49,010 --> 00:32:49,390 >> JASON Hirschhorn: Ados. 656 00:32:49,390 --> 00:32:50,430 Beraz, berriz, loop, bada. 657 00:32:50,430 --> 00:32:52,200 Zer ari gara egiten? 658 00:32:52,200 --> 00:32:53,320 >> AUDIENCE: Agian loop bat? 659 00:32:53,320 --> 00:32:53,910 >> JASON Hirschhorn: Egin loop dezagun. 660 00:32:53,910 --> 00:32:55,870 Ados. 661 00:32:55,870 --> 00:33:02,465 >> AUDIENCE: Eta esaten dugu - 662 00:33:02,465 --> 00:33:09,764 663 00:33:09,764 --> 00:33:13,390 egungo erakuslea arte ez da nulua berdina. 664 00:33:13,390 --> 00:33:19,160 >> JASON Hirschhorn: Beraz badakizu dugu Baldintza, nola begizta bat idatzi dugu 665 00:33:19,160 --> 00:33:21,740 baldintza duten off oinarritutako. 666 00:33:21,740 --> 00:33:24,380 Nolako begizta bat erabili behar dugu? 667 00:33:24,380 --> 00:33:25,260 >> AUDIENCE: bitartean. 668 00:33:25,260 --> 00:33:25,590 >> JASON Hirschhorn: Bai. 669 00:33:25,590 --> 00:33:27,130 Zentzu gehiago oinarritutako hace zer esan duzu off. 670 00:33:27,130 --> 00:33:29,430 Besterik ez dugu sartu nahi badugu litzateke Besterik ez dakit gauza hori, egin luke 671 00:33:29,430 --> 00:33:31,680 Zentzu berriz, begizta bat egin. 672 00:33:31,680 --> 00:33:39,880 Korrontea nulua ez berdina du, berriz, balioa nodo hau baino txikiagoa bada. 673 00:33:39,880 --> 00:33:41,650 Akshar, emaidazu lerro hau. 674 00:33:41,650 --> 00:33:48,810 675 00:33:48,810 --> 00:33:56,955 >> AUDIENCE: bada oraingoa-> n n balioa baino gutxiago. 676 00:33:56,955 --> 00:34:00,170 677 00:34:00,170 --> 00:34:03,260 Edo alderantzizko duten. 678 00:34:03,260 --> 00:34:06,140 Aldatzeko tarte horietako. 679 00:34:06,140 --> 00:34:06,620 >> JASON Hirschhorn: Barkatu. 680 00:34:06,620 --> 00:34:08,760 >> AUDIENCE: Aldatu parentesi. 681 00:34:08,760 --> 00:34:10,914 >> JASON Hirschhorn: Beraz, bada balioa baino handiagoa. 682 00:34:10,914 --> 00:34:18,719 683 00:34:18,719 --> 00:34:22,120 Hori da duten nahasgarria delako comment gainetik, nik hori egin dut. 684 00:34:22,120 --> 00:34:22,480 Baina bai. 685 00:34:22,480 --> 00:34:25,125 Gure balioa da hau baino txikiagoa bada Nodo, zer egiten dugu? 686 00:34:25,125 --> 00:34:25,540 Oh. 687 00:34:25,540 --> 00:34:26,710 Dut hemen. 688 00:34:26,710 --> 00:34:27,960 Txertatu aurretik. 689 00:34:27,960 --> 00:34:32,080 690 00:34:32,080 --> 00:34:32,370 Ados. 691 00:34:32,370 --> 00:34:33,933 Nola egin behar dugu? 692 00:34:33,933 --> 00:34:34,900 >> AUDIENCE: Da oraindik me? 693 00:34:34,900 --> 00:34:36,150 >> JASON Hirschhorn: Bai. 694 00:34:36,150 --> 00:34:38,520 695 00:34:38,520 --> 00:34:39,770 >> AUDIENCE: You - 696 00:34:39,770 --> 00:34:42,909 697 00:34:42,909 --> 00:34:44,159 new_node-> hurrengo. 698 00:34:44,159 --> 00:34:46,770 699 00:34:46,770 --> 00:34:50,163 >> JASON Hirschhorn: Beraz, zer da hori berdina da? 700 00:34:50,163 --> 00:34:52,070 >> AUDIENCE: Honez oraingoa berdinak izango. 701 00:34:52,070 --> 00:34:53,889 >> JASON Hirschhorn: Zehazki. 702 00:34:53,889 --> 00:34:55,730 Eta beraz, beste - 703 00:34:55,730 --> 00:34:56,730 Zer gehiago eguneratu behar dugu? 704 00:34:56,730 --> 00:34:59,982 >> AUDIENCE: Check iragana berdin nulua bada. 705 00:34:59,982 --> 00:35:01,870 >> JASON Hirschhorn: aurrekoak izanez gero - 706 00:35:01,870 --> 00:35:03,730 beraz azkena balitz null berdin. 707 00:35:03,730 --> 00:35:05,990 >> AUDIENCE: Horrek esan nahi du joan buru bihurtu. 708 00:35:05,990 --> 00:35:06,780 >> JASON Hirschhorn: bide Hori Honez buru bihurtu da. 709 00:35:06,780 --> 00:35:07,620 Orduan, zer egiten dugu? 710 00:35:07,620 --> 00:35:12,510 >> AUDIENCE: burua egiten dugu new_node berdin. 711 00:35:12,510 --> 00:35:16,690 >> JASON Hirschhorn: Head new_node berdin. 712 00:35:16,690 --> 00:35:20,540 Eta zergatik burua hemen, ez zerrendatu? 713 00:35:20,540 --> 00:35:24,940 >> AUDIENCE: burua da global bat delako aldakorra, eta horrek hasierako leku da. 714 00:35:24,940 --> 00:35:26,190 >> JASON Hirschhorn: Sweet. 715 00:35:26,190 --> 00:35:33,750 716 00:35:33,750 --> 00:35:34,170 Ados. 717 00:35:34,170 --> 00:35:36,150 Eta - 718 00:35:36,150 --> 00:35:53,796 >> AUDIENCE: Ondoren, bestela ez duzu kolpeen-> hurrengo new_node berdin. 719 00:35:53,796 --> 00:35:55,080 Eta gero, egia itzuliko duzu. 720 00:35:55,080 --> 00:35:59,560 721 00:35:59,560 --> 00:36:02,700 >> JASON Hirschhorn: Nora egin new_node bukaeran ezarri dugu? 722 00:36:02,700 --> 00:36:04,850 >> AUDIENCE: nuke - 723 00:36:04,850 --> 00:36:06,180 Ezarri dut hasieran. 724 00:36:06,180 --> 00:36:07,430 >> JASON Hirschhorn: Beraz, zer linea? 725 00:36:07,430 --> 00:36:10,000 726 00:36:10,000 --> 00:36:12,598 >> AUDIENCE: After the bada adierazpena bezala ezaguna bada egiaztatzen. 727 00:36:12,598 --> 00:36:13,057 >> JASON Hirschhorn: Eskuin hemen? 728 00:36:13,057 --> 00:36:18,335 >> AUDIENCE: litzaidake egiten dut new_node-> n balioa berdin. 729 00:36:18,335 --> 00:36:19,585 >> JASON Hirschhorn: Soinu ona. 730 00:36:19,585 --> 00:36:21,740 731 00:36:21,740 --> 00:36:25,090 Ziurrenik zentzuzkoa da - ez dugu zer zerrendan gaude on jakin behar 732 00:36:25,090 --> 00:36:26,280 bakarrik ari gara aurre delako zerrenda batekin. 733 00:36:26,280 --> 00:36:29,560 Beraz baten funtzioa adierazpen hobeto hau besterik ez da behar hau kentzeko 734 00:36:29,560 --> 00:36:34,360 osorik eta besterik txerta burua sartu balio bat. 735 00:36:34,360 --> 00:36:35,930 Ere ez dugu jakin behar zer zerrendan sartu Oraindik dugu 736 00:36:35,930 --> 00:36:39,140 Baina mantendu egingo dut oraingoz eta Orduz aldatu eguneratzeari gainean 737 00:36:39,140 --> 00:36:42,590 diapositibak eta kodea. 738 00:36:42,590 --> 00:36:44,980 Beraz, gaur egun itxura ona. 739 00:36:44,980 --> 00:36:46,560 Bada balioa - nor lerro hau egin dezakegu? 740 00:36:46,560 --> 00:36:47,810 Bada - 741 00:36:47,810 --> 00:36:52,240 742 00:36:52,240 --> 00:36:53,840 zer egin, hemen egiten dugu, Noah. 743 00:36:53,840 --> 00:36:57,890 744 00:36:57,890 --> 00:37:07,100 >> AUDIENCE: balioa handiagoa bada baino Curr-> n - 745 00:37:07,100 --> 00:37:16,830 746 00:37:16,830 --> 00:37:18,240 >> JASON Hirschhorn: nola egin joan hurrengo nodo nahi dugu? 747 00:37:18,240 --> 00:37:27,760 748 00:37:27,760 --> 00:37:30,530 >> AUDIENCE: Curr-> n da new_node berdina. 749 00:37:30,530 --> 00:37:37,630 750 00:37:37,630 --> 00:37:39,195 >> JASON Hirschhorn: Beraz, n da zer zati egiturari du? 751 00:37:39,195 --> 00:37:43,065 752 00:37:43,065 --> 00:37:46,020 Osokoa. 753 00:37:46,020 --> 00:37:50,420 Eta new_node nodo bat erakuslea da. 754 00:37:50,420 --> 00:37:51,880 Beraz, zer zati Curr of eguneratu behar dugu? 755 00:37:51,880 --> 00:38:03,900 756 00:38:03,900 --> 00:38:05,400 Ez n bada, orduan, zer da, beste zatia? 757 00:38:05,400 --> 00:38:21,680 758 00:38:21,680 --> 00:38:22,810 Noah, zer beste zati. 759 00:38:22,810 --> 00:38:23,570 >> AUDIENCE: Oh, hurrengoa. 760 00:38:23,570 --> 00:38:25,645 >> JASON Hirschhorn: Hurrengoa, zehatz-mehatz. 761 00:38:25,645 --> 00:38:26,410 Zehazki. 762 00:38:26,410 --> 00:38:28,770 Hurrengo eskubidea da. 763 00:38:28,770 --> 00:38:31,540 Eta zer gehiago behar dugu eguneratu, Noah? 764 00:38:31,540 --> 00:38:32,840 >> AUDIENCE: erakusleak dira. 765 00:38:32,840 --> 00:38:34,840 >> JASON Hirschhorn: Beraz, egungo eguneratu dugu. 766 00:38:34,840 --> 00:38:36,090 >> AUDIENCE: Aurrekoa-> hurrengo. 767 00:38:36,090 --> 00:38:48,160 768 00:38:48,160 --> 00:38:49,410 >> JASON Hirschhorn: Bai. 769 00:38:49,410 --> 00:38:57,465 770 00:38:57,465 --> 00:38:58,370 Ados, eten egingo dugu. 771 00:38:58,370 --> 00:39:02,200 Nork lagunduko digu hemendik dezaket? 772 00:39:02,200 --> 00:39:03,385 Manu, zer egin behar dugu? 773 00:39:03,385 --> 00:39:05,615 >> AUDIENCE: Lortu duzu ezarri hura Curr-> hurrengo berdina. 774 00:39:05,615 --> 00:39:09,110 775 00:39:09,110 --> 00:39:11,630 Baina hori egin aurreko lerroa aurretik. 776 00:39:11,630 --> 00:39:12,880 >> JASON Hirschhorn: Ados. 777 00:39:12,880 --> 00:39:16,590 778 00:39:16,590 --> 00:39:18,260 Beste ezer? 779 00:39:18,260 --> 00:39:19,170 Akshar. 780 00:39:19,170 --> 00:39:22,680 >> AUDIENCE: ez dut uste Oraindik ekarri Curr-> aldatu ondoan. 781 00:39:22,680 --> 00:39:29,270 Ari esan nahi zenuena Curr berdin egin behar dela uste dut Curr-> hurrengo hurrengo nodo joan. 782 00:39:29,270 --> 00:39:30,500 >> JASON Hirschhorn: Beraz, barkatu, non? 783 00:39:30,500 --> 00:39:32,680 Zer lerroan? 784 00:39:32,680 --> 00:39:33,420 Lerro hau? 785 00:39:33,420 --> 00:39:33,750 >> IKUSLEEN: Bai. 786 00:39:33,750 --> 00:39:35,745 Egin Curr berdinen Curr-> hurrengo. 787 00:39:35,745 --> 00:39:39,690 788 00:39:39,690 --> 00:39:43,360 >> JASON Hirschhorn: Beraz, hori da zuzena egungo delako bat 789 00:39:43,360 --> 00:39:45,220 nodo bat erakuslea. 790 00:39:45,220 --> 00:39:48,550 Eta hurrengo seinalatu nahi dugu zer ari den unean lortzeko nodo 791 00:39:48,550 --> 00:39:49,930 adierazi. 792 00:39:49,930 --> 00:39:54,410 Curr bera hurrengo dauka. 793 00:39:54,410 --> 00:39:58,620 Baina bagenitu curr.next eguneratzeko, dugu eguneratzeko litzateke benetako oharraren 794 00:39:58,620 --> 00:40:01,430 berez, ez da kode hau erakuslea apuntatzen zen. 795 00:40:01,430 --> 00:40:02,680 Zer line honi buruz, baina. 796 00:40:02,680 --> 00:40:05,160 797 00:40:05,160 --> 00:40:07,330 Avi? 798 00:40:07,330 --> 00:40:09,590 >> AUDIENCE: Aurrekoa-> hurrengo Curr berdin. 799 00:40:09,590 --> 00:40:12,500 800 00:40:12,500 --> 00:40:19,440 >> JASON Hirschhorn: Beraz, berriro ere, azkena bada bat nodo bat erakuslea, aur-> hurrengoa da 801 00:40:19,440 --> 00:40:23,020 benetako nodo en erakuslea. 802 00:40:23,020 --> 00:40:27,190 Beraz, hau eguneratzeko litzateke bat Curr den nodo bat erakuslea. 803 00:40:27,190 --> 00:40:28,570 Ez dugu nahi eguneratzeko Nodo batean erakuslea. 804 00:40:28,570 --> 00:40:30,570 Aurreko eguneratu nahi dugu. 805 00:40:30,570 --> 00:40:31,850 Beraz, zer egin dugu? 806 00:40:31,850 --> 00:40:34,250 >> AUDIENCE: besterik ez litzateke izango kolpeen. 807 00:40:34,250 --> 00:40:34,565 >> JASON Hirschhorn: Eskuin. 808 00:40:34,565 --> 00:40:35,560 Aurrekoa nodo bat erakuslea da. 809 00:40:35,560 --> 00:40:38,750 Orain, ordea, aldatzen ari gara batera nodo bat erakuslea berria. 810 00:40:38,750 --> 00:40:40,830 Ados dezagun behera mugitu digu. 811 00:40:40,830 --> 00:40:41,940 Azkenik, azken baldintza hori. 812 00:40:41,940 --> 00:40:44,896 Jeff, zer egin, hemen egiten dugu? 813 00:40:44,896 --> 00:40:47,515 >> AUDIENCE: balioa bada ra Curr-> n berdina. 814 00:40:47,515 --> 00:40:51,030 815 00:40:51,030 --> 00:40:51,300 >> JASON Hirschhorn: Barkatu. 816 00:40:51,300 --> 00:40:52,372 Oh my bondad. 817 00:40:52,372 --> 00:40:54,330 Zer? 818 00:40:54,330 --> 00:40:55,580 Balioa == Curr-> n. 819 00:40:55,580 --> 00:41:01,050 820 00:41:01,050 --> 00:41:02,300 Zer egiten dugu? 821 00:41:02,300 --> 00:41:04,760 822 00:41:04,760 --> 00:41:10,950 >> AUDIENCE: gure new_node askatzea duzu litzaidake, eta, ondoren, faltsua itzuliko zinela. 823 00:41:10,950 --> 00:41:21,410 824 00:41:21,410 --> 00:41:23,460 >> JASON Hirschhorn: Hau da, zer beraz, orain arte idatzi dugu. 825 00:41:23,460 --> 00:41:25,710 Ez du inor ezer egin dugu aurretik gehitzeko? 826 00:41:25,710 --> 00:41:35,460 827 00:41:35,460 --> 00:41:35,710 Ados. 828 00:41:35,710 --> 00:41:36,960 Dezagun saiatuko da. 829 00:41:36,960 --> 00:41:44,180 830 00:41:44,180 --> 00:41:46,110 Kontrol amaiera iritsi daiteke hutsa ez den funtzio bat. 831 00:41:46,110 --> 00:41:48,310 Avi, zer gertatzen da? 832 00:41:48,310 --> 00:41:51,380 >> AUDIENCE: Are bueltan jarri ustezko duzu bitartean Begizta kanpo egia? 833 00:41:51,380 --> 00:41:53,900 834 00:41:53,900 --> 00:41:54,400 >> JASON Hirschhorn: Ez dakit. 835 00:41:54,400 --> 00:41:54,780 Ez niri nahi duzu? 836 00:41:54,780 --> 00:41:55,520 >> AUDIENCE: Never mind. 837 00:41:55,520 --> 00:41:56,350 N º 838 00:41:56,350 --> 00:41:57,180 >> JASON Hirschhorn: Akshar? 839 00:41:57,180 --> 00:41:59,460 >> AUDIENCE: uste dut esan nahi duzu bueltan faltsua jarri amaieran 840 00:41:59,460 --> 00:42:02,230 berriz, begizta du. 841 00:42:02,230 --> 00:42:03,270 >> JASON Hirschhorn: Beraz, non do joan nahi duzu? 842 00:42:03,270 --> 00:42:05,270 >> AUDIENCE: berriz, begizta kanpo bezala. 843 00:42:05,270 --> 00:42:08,800 Beraz, berriz, begizta irteteko duten bide bada ditudan bukaerara iritsi zara eta 844 00:42:08,800 --> 00:42:09,980 ezer ez gertatu. 845 00:42:09,980 --> 00:42:10,410 >> JASON Hirschhorn: Ados. 846 00:42:10,410 --> 00:42:12,340 Beraz, zer egiten dugu hemen? 847 00:42:12,340 --> 00:42:13,702 >> AUDIENCE: faltsua itzuliko zara han baita. 848 00:42:13,702 --> 00:42:15,040 >> JASON Hirschhorn: Oh, dugu egin ezazu bi lekuetan? 849 00:42:15,040 --> 00:42:15,650 >> IKUSLEEN: Bai. 850 00:42:15,650 --> 00:42:16,900 >> JASON Hirschhorn: Ados. 851 00:42:16,900 --> 00:42:24,840 852 00:42:24,840 --> 00:42:26,160 Joan behar dugu? 853 00:42:26,160 --> 00:42:26,980 Oh my bondad. 854 00:42:26,980 --> 00:42:27,290 Sentitzen dut. 855 00:42:27,290 --> 00:42:28,480 Pantailan Barkatu. 856 00:42:28,480 --> 00:42:30,530 Honez motatako freaking gaituzu. 857 00:42:30,530 --> 00:42:31,520 Beraz, aukeratu aukera bat. 858 00:42:31,520 --> 00:42:35,260 Zero, kodea per, programatik irten. 859 00:42:35,260 --> 00:42:36,700 Zerbait txertatzen bat. 860 00:42:36,700 --> 00:42:37,990 Dezagun txertatzeko hiru. 861 00:42:37,990 --> 00:42:42,900 862 00:42:42,900 --> 00:42:45,380 Txertatze ez zen arrakastatsua. 863 00:42:45,380 --> 00:42:46,500 Inprimatu noa. 864 00:42:46,500 --> 00:42:48,050 Ez dut ezer izan. 865 00:42:48,050 --> 00:42:48,450 Ados. 866 00:42:48,450 --> 00:42:50,250 Agian hori kasualitate bat besterik ez zen. 867 00:42:50,250 --> 00:42:52,810 Sartu disko bat. 868 00:42:52,810 --> 00:42:55,770 Ez arrakastatsua. 869 00:42:55,770 --> 00:42:57,470 Ados. 870 00:42:57,470 --> 00:43:02,400 Dezagun exekutatu GDB bidez benetan azkar ikusteko zer ari den gertatzen. 871 00:43:02,400 --> 00:43:06,055 >> Gogoratzen gdb. / Izen zure programa lortzen gurekin GDB sartu. 872 00:43:06,055 --> 00:43:07,610 Hori kudeatzeko asko da? 873 00:43:07,610 --> 00:43:08,560 Keinuka? 874 00:43:08,560 --> 00:43:10,400 Seguruenik. 875 00:43:10,400 --> 00:43:12,760 Itxi begiak eta sakon batzuk hartu arnasa nekatuta lortu baduzu 876 00:43:12,760 --> 00:43:13,580 du hari so. 877 00:43:13,580 --> 00:43:14,200 Naiz GDB dut. 878 00:43:14,200 --> 00:43:15,830 Zer da lehen gauza egin dut GDB? 879 00:43:15,830 --> 00:43:17,050 Lortu dugu irudikatu zer gertatzen da hemen. 880 00:43:17,050 --> 00:43:17,310 Ikus dezagun. 881 00:43:17,310 --> 00:43:21,650 Sei minutu figura behar dugu zer gertatzen ari zen. 882 00:43:21,650 --> 00:43:22,900 Apurtu nagusia. 883 00:43:22,900 --> 00:43:25,950 884 00:43:25,950 --> 00:43:28,130 Eta gero, zer egin dezaket? 885 00:43:28,130 --> 00:43:29,180 Carlos? 886 00:43:29,180 --> 00:43:31,060 Exekutatu. 887 00:43:31,060 --> 00:43:32,250 Ados. 888 00:43:32,250 --> 00:43:34,160 Dezagun aukeratu aukera bat. 889 00:43:34,160 --> 00:43:36,330 Eta zer N egiten? 890 00:43:36,330 --> 00:43:38,480 Hurrengoa. 891 00:43:38,480 --> 00:43:38,950 Bai. 892 00:43:38,950 --> 00:43:39,740 >> AUDIENCE: Ez al duzu aipatu - 893 00:43:39,740 --> 00:43:45,230 ez zuen esan duzu burua zela, izan zen Internet hasieratu hasieran. 894 00:43:45,230 --> 00:43:47,140 Baina hori izan zen OK esan duzun pentsatu nuen. 895 00:43:47,140 --> 00:43:50,040 896 00:43:50,040 --> 00:43:52,640 >> JASON Hirschhorn: Goazen - dezagun GDB, eta, ondoren, atzera egin dugu. 897 00:43:52,640 --> 00:43:54,910 Baina jadanik piztuta bezala soinuak zer gertatzen ari buruzko ideia batzuk. 898 00:43:54,910 --> 00:43:58,340 Beraz, zerbait txertatu nahi dugu. 899 00:43:58,340 --> 00:43:59,390 Ados. 900 00:43:59,390 --> 00:44:00,150 Txertatu dugu. 901 00:44:00,150 --> 00:44:00,770 Mesedez sartu int. 902 00:44:00,770 --> 00:44:01,990 Sartu dugu hiru. 903 00:44:01,990 --> 00:44:03,000 Eta orduan naiz lerro hau dut. 904 00:44:03,000 --> 00:44:07,030 Nola ez banoa arazketa hasteko txertatze ezaguna funtzioa? 905 00:44:07,030 --> 00:44:08,280 Oh my bondad. 906 00:44:08,280 --> 00:44:10,990 907 00:44:10,990 --> 00:44:12,240 Hori asko da. 908 00:44:12,240 --> 00:44:14,372 909 00:44:14,372 --> 00:44:16,445 Da asko freaking hori? 910 00:44:16,445 --> 00:44:19,696 911 00:44:19,696 --> 00:44:21,680 >> AUDIENCE: Oh, hura hil zen. 912 00:44:21,680 --> 00:44:22,930 >> JASON Hirschhorn: besterik ez dut Bota ezazu. 913 00:44:22,930 --> 00:44:27,364 914 00:44:27,364 --> 00:44:28,310 Ados. 915 00:44:28,310 --> 00:44:29,560 >> AUDIENCE: Agian da beste harian amaieran. 916 00:44:29,560 --> 00:44:37,000 917 00:44:37,000 --> 00:44:39,470 >> JASON Hirschhorn: Wow. 918 00:44:39,470 --> 00:44:42,330 Beraz, beheko lerroa - 919 00:44:42,330 --> 00:44:43,470 zer esan duzu? 920 00:44:43,470 --> 00:44:46,040 >> AUDIENCE: esan dut tekniko ironia klase honetan zailtasunak. 921 00:44:46,040 --> 00:44:46,410 >> JASON Hirschhorn: Badakit. 922 00:44:46,410 --> 00:44:48,660 Bakarra bada zati horren gaineko kontrola izan nuen. 923 00:44:48,660 --> 00:44:49,910 [INAUDIBLE] 924 00:44:49,910 --> 00:44:54,430 925 00:44:54,430 --> 00:44:55,400 Duten soinuak handia. 926 00:44:55,400 --> 00:44:58,680 Zergatik ez duzu guys hasteko pentsatzen zer egin genezake, oker, 927 00:44:58,680 --> 00:45:01,140 eta 90 segundotan itzuliko gara. 928 00:45:01,140 --> 00:46:18,160 929 00:46:18,160 --> 00:46:23,010 >> Avica, naiz zuri galdetzeko nola joan nintzen da arazteko barruan insert_node. 930 00:46:23,010 --> 00:46:28,940 931 00:46:28,940 --> 00:46:31,460 Beraz, hau da, non azken utzi dugu. 932 00:46:31,460 --> 00:46:35,110 Nola ez insert_node barruan joan nintzen, Avica, zer gertatzen den aztertzeko? 933 00:46:35,110 --> 00:46:36,360 Zer GDB komando? 934 00:46:36,360 --> 00:46:41,050 935 00:46:41,050 --> 00:46:42,390 Break ez litzateke hartu me barruan. 936 00:46:42,390 --> 00:46:46,200 937 00:46:46,200 --> 00:46:47,130 Marquise du ezagutzen? 938 00:46:47,130 --> 00:46:48,240 >> AUDIENCE: Zer? 939 00:46:48,240 --> 00:46:51,780 >> JASON Hirschhorn: Zer GDB komando Funtzio honen barruan sartuz erabili dut? 940 00:46:51,780 --> 00:46:52,070 >> AUDIENCE: Urratsera? 941 00:46:52,070 --> 00:46:55,140 >> JASON Hirschhorn: Urratsera bidez S. Horrek barruan hartzen me. 942 00:46:55,140 --> 00:46:55,476 Ados. 943 00:46:55,476 --> 00:46:58,040 New_node espazio batzuk mallocing. 944 00:46:58,040 --> 00:46:59,120 Guztiak bere egingo itxura. 945 00:46:59,120 --> 00:47:00,370 Dezagun aztertu new_node. 946 00:47:00,370 --> 00:47:03,270 947 00:47:03,270 --> 00:47:05,410 Memoria-helbide batzuk lortu. 948 00:47:05,410 --> 00:47:07,440 Dezagun begiratu - 949 00:47:07,440 --> 00:47:08,500 hori da, guztiak zuzenak. 950 00:47:08,500 --> 00:47:12,220 Beraz, dena hemen badirudi behar bezala funtzionatzen. 951 00:47:12,220 --> 00:47:14,530 >> AUDIENCE: Zein da diferentzia P eta pantailaren artean? 952 00:47:14,530 --> 00:47:16,160 >> JASON Hirschhorn: P inprimatu dago. 953 00:47:16,160 --> 00:47:19,310 Eta beraz, zer da eskatzen ari zaren duten eta honen arteko desberdintasuna? 954 00:47:19,310 --> 00:47:22,330 Kasu honetan, ez da ezer. 955 00:47:22,330 --> 00:47:26,960 Baina, oro har, ez dira ezberdintasun batzuk. 956 00:47:26,960 --> 00:47:28,220 Eta GDB eskuliburua begiratu behar duzu. 957 00:47:28,220 --> 00:47:29,560 Baina kasu honetan, ez da ezer. 958 00:47:29,560 --> 00:47:31,460 Inprimatu erabili ohi dugu, nahiz eta, delako ez dugu behar baino askoz gehiago egin 959 00:47:31,460 --> 00:47:33,960 balio bakar bat inprimatzeko. 960 00:47:33,960 --> 00:47:34,640 >> Ados. 961 00:47:34,640 --> 00:47:40,300 Beraz on line 80 gure kode gara, nodo * zerrenda berdina Curr ezarriz. 962 00:47:40,300 --> 00:47:42,500 Utzi Curr inprimatu digu. 963 00:47:42,500 --> 00:47:45,260 964 00:47:45,260 --> 00:47:46,840 Zerrenda berdin da. 965 00:47:46,840 --> 00:47:48,850 Gozoa. 966 00:47:48,850 --> 00:47:49,340 Itxaron. 967 00:47:49,340 --> 00:47:50,590 Zerbait hobetu da. 968 00:47:50,590 --> 00:47:53,680 969 00:47:53,680 --> 00:47:56,190 Horrek ez dirudi eskubidea. 970 00:47:56,190 --> 00:47:56,840 Hor dugu. 971 00:47:56,840 --> 00:47:59,470 Delako GDB, eskuinera, bada lerroan Oraindik bertan da 972 00:47:59,470 --> 00:48:00,330 oraindik ez exekutatu. 973 00:48:00,330 --> 00:48:03,100 Beraz, benetan idatzi behar duzu hurrengo lerroan exekutatu 974 00:48:03,100 --> 00:48:05,230 bere emaitzak ikusi aurretik. 975 00:48:05,230 --> 00:48:06,680 Beraz, hemen gaude. 976 00:48:06,680 --> 00:48:09,490 Exekutatu besterik ez dugu lerro hau, aurreko berdinen nulua. 977 00:48:09,490 --> 00:48:13,590 Beraz, berriro ere, aurreko inprimatu badugu ez dugu ezer arraro ikusten. 978 00:48:13,590 --> 00:48:18,680 Baina benetan exekutatu dugu bada lerroan, eta gero ikusiko dugu 979 00:48:18,680 --> 00:48:20,380 lerro hori, eta lan egin du. 980 00:48:20,380 --> 00:48:21,060 >> Beraz Curr dugu. 981 00:48:21,060 --> 00:48:23,180 Horiek dira bai onak. 982 00:48:23,180 --> 00:48:24,010 Ezta? 983 00:48:24,010 --> 00:48:28,130 Oraindik orain, lerro hau dugu hemen. 984 00:48:28,130 --> 00:48:29,310 Curr ez berdinak NULL bitartean. 985 00:48:29,310 --> 00:48:31,110 Beno, zer ez Curr berdinak? 986 00:48:31,110 --> 00:48:32,450 Besterik ez dugu ikusi null berdindu arren. 987 00:48:32,450 --> 00:48:33,210 Bertan inprimatuta dugu daudelarik. 988 00:48:33,210 --> 00:48:35,110 Inprimatu dut berriro. 989 00:48:35,110 --> 00:48:36,720 Beraz, da, berriz, begizta exekutatu behar? 990 00:48:36,720 --> 00:48:37,270 >> AUDIENCE: N º 991 00:48:37,270 --> 00:48:39,790 >> JASON Hirschhorn: Beraz, noiz idatzi dut lerroa, modu guztiak salto egin dugu ikusten duzuna 992 00:48:39,790 --> 00:48:41,390 behean egin eta gero, itzultzeko faltsua. 993 00:48:41,390 --> 00:48:44,520 Eta gero ari gara faltsua itzuli egingo da eta eta itzuli gure programara 994 00:48:44,520 --> 00:48:48,020 azkenean, inprimatu, ikusi dugun bezala, txertatze ez zen arrakastatsua. 995 00:48:48,020 --> 00:48:51,010 Beraz, inor zer ideiak edozein hau konpontzeko egin behar dugu? 996 00:48:51,010 --> 00:48:54,200 997 00:48:54,200 --> 00:48:57,570 Itxaron dut ikusi arte noa eskuak pare bat igo. 998 00:48:57,570 --> 00:48:58,830 Ez genuen exekutatu hau. 999 00:48:58,830 --> 00:49:01,660 Gogoan izan, hau zen lehen gauza egiten ari ginen. 1000 00:49:01,660 --> 00:49:02,430 Ez dut pare bat egin. 1001 00:49:02,430 --> 00:49:03,670 Batzuk bat egin nahi dut. 1002 00:49:03,670 --> 00:49:04,830 Pare bat bi esan nahi duelako. 1003 00:49:04,830 --> 00:49:07,620 Dut itxaron bi urte baino gehiagorako. 1004 00:49:07,620 --> 00:49:10,690 >> Lehenengo txertatzeko, Curr, arabera lehenetsi null berdin. 1005 00:49:10,690 --> 00:49:14,050 Eta begizta hau bakarrik exekutatzen Curr ez da nulua bada. 1006 00:49:14,050 --> 00:49:18,740 Beraz, nola egin dezaket honen inguruan lortu dut? 1007 00:49:18,740 --> 00:49:19,990 Hiru eskuak ikusten dut. 1008 00:49:19,990 --> 00:49:28,490 1009 00:49:28,490 --> 00:49:29,780 Dut itxaron hiru baino gehiago. 1010 00:49:29,780 --> 00:49:33,460 1011 00:49:33,460 --> 00:49:35,940 Marcus, zer uste duzu? 1012 00:49:35,940 --> 00:49:37,730 >> AUDIENCE: Beno, behar izanez gero behin baino gehiago exekutatu, besterik ez duzu 1013 00:49:37,730 --> 00:49:39,948 aldatu egin bitartean-begizta bat. 1014 00:49:39,948 --> 00:49:41,250 >> JASON Hirschhorn: Ados. 1015 00:49:41,250 --> 00:49:44,240 Dela konponduko gure arazoa, nahiz eta? 1016 00:49:44,240 --> 00:49:47,750 >> AUDIENCE: Kasu honetan ez delako Izan ere, zerrenda hutsik dagoela. 1017 00:49:47,750 --> 00:49:52,150 Beraz, orduan seguraski besterik gehitu behar adierazpen hori bada begizta irteerak 1018 00:49:52,150 --> 00:49:55,312 ondoren, amaieran izango duzu zerrendan, eta amaitzen duzu 1019 00:49:55,312 --> 00:49:56,562 besterik txerta daiteke. 1020 00:49:56,562 --> 00:49:58,920 1021 00:49:58,920 --> 00:49:59,680 >> JASON Hirschhorn: hori gustatzen zait. 1022 00:49:59,680 --> 00:50:00,500 Zentzua. 1023 00:50:00,500 --> 00:50:03,390 Begizta irteten bada - 1024 00:50:03,390 --> 00:50:04,800 faltsuak hemen itzuli egingo delako. 1025 00:50:04,800 --> 00:50:08,220 Beraz, begizta esistitzen bada, orduan egiten ari garen Zerrendaren amaieran, edo, agian, 1026 00:50:08,220 --> 00:50:10,690 zerrenda bat hasteko ez dago ezer in da, eta horrek amaieran bera da. 1027 00:50:10,690 --> 00:50:12,770 Beraz, gaur egun txertatzea nahi dugu zerbait hemen. 1028 00:50:12,770 --> 00:50:17,380 Beraz, nola kodea duten begiratzen du, Marcus? 1029 00:50:17,380 --> 00:50:21,600 >> AUDIENCE: dagoeneko lortu nodoaren bada malloced, ezin besterik esan duzu 1030 00:50:21,600 --> 00:50:25,400 new_node-> hurrengo berdinen nulua delako amaieran izango du. 1031 00:50:25,400 --> 00:50:27,510 Edo new_node-> hurrengo null berdin. 1032 00:50:27,510 --> 00:50:27,765 >> JASON Hirschhorn: Ados. 1033 00:50:27,765 --> 00:50:28,190 Barkatu. 1034 00:50:28,190 --> 00:50:35,760 New_node-> hurrengo berdinen null Oraindik dugu amaieran delako. 1035 00:50:35,760 --> 00:50:36,460 Horrek ez du jarri oraindik sartu 1036 00:50:36,460 --> 00:50:37,710 Nola jarri dugu zerrendan? 1037 00:50:37,710 --> 00:50:46,130 1038 00:50:46,130 --> 00:50:46,460 Eskuinera. 1039 00:50:46,460 --> 00:50:47,750 Hori besterik ez da ezarpena berdina. 1040 00:50:47,750 --> 00:50:50,940 Ez nola egiten dugun benetan jarri zerrendan? 1041 00:50:50,940 --> 00:50:54,170 Zer seinalatuz zerrendaren bukaeran? 1042 00:50:54,170 --> 00:50:56,090 >> AUDIENCE: Head. 1043 00:50:56,090 --> 00:50:57,566 >> JASON Hirschhorn: Barkatu? 1044 00:50:57,566 --> 00:50:59,440 >> AUDIENCE: Head seinalatuz zerrendaren amaieran. 1045 00:50:59,440 --> 00:51:01,480 >> JASON Hirschhorn: Ez bada ezer in zerrendan, buru da seinalatuz 1046 00:51:01,480 --> 00:51:04,170 zerrendaren bukaeran. 1047 00:51:04,170 --> 00:51:06,920 Beraz, hori izango da lan Lehenengo txertatzeko. 1048 00:51:06,920 --> 00:51:09,810 Han pare bat zer bada buruz zerrendan gauzak? 1049 00:51:09,810 --> 00:51:12,470 Ez dugu baino, ezarri nahi buru new_node berdina. 1050 00:51:12,470 --> 00:51:13,790 Zer ez egin nahi dugu? 1051 00:51:13,790 --> 00:51:15,610 Bai? 1052 00:51:15,610 --> 00:51:16,860 Badirudi aurreko. 1053 00:51:16,860 --> 00:51:23,560 1054 00:51:23,560 --> 00:51:24,810 Lan hori egingo? 1055 00:51:24,810 --> 00:51:28,950 1056 00:51:28,950 --> 00:51:33,050 Gogoratu aurreko besterik ez da nodo bat erakuslea. 1057 00:51:33,050 --> 00:51:34,770 Eta aurreko tokiko aldagai bat da. 1058 00:51:34,770 --> 00:51:38,080 Beraz, lerro hau tokiko aldagai bat ezarriko da, aurreko, berdina edo 1059 00:51:38,080 --> 00:51:39,380 nodo berri hau seinalatuz. 1060 00:51:39,380 --> 00:51:41,500 Ez dela benetan jarri gure zerrendan, nahiz eta. 1061 00:51:41,500 --> 00:51:44,330 Nola jarri genituen gure zerrendan? 1062 00:51:44,330 --> 00:51:45,620 Akchar? 1063 00:51:45,620 --> 00:51:46,870 >> AUDIENCE: uste dut Egin uneko-> hurrengo. 1064 00:51:46,870 --> 00:51:50,186 1065 00:51:50,186 --> 00:51:52,550 >> JASON Hirschhorn: Ados. 1066 00:51:52,550 --> 00:51:54,010 Curr-> hurrengo. 1067 00:51:54,010 --> 00:51:58,768 Beraz, berriro ere, arrazoi bakarra jaitsiko gara hemen da, zer egiten duen egungo berdinak? 1068 00:51:58,768 --> 00:51:59,760 >> AUDIENCE: null berdin. 1069 00:51:59,760 --> 00:52:01,790 >> JASON Hirschhorn: Eta beraz, zer Gertatzen egiten dugu nulua-> bada hurrengoa? 1070 00:52:01,790 --> 00:52:02,810 Zer lortu dugu? 1071 00:52:02,810 --> 00:52:04,060 Segmentaziuo hutsegitea lortu dugu. 1072 00:52:04,060 --> 00:52:06,600 1073 00:52:06,600 --> 00:52:08,880 >> AUDIENCE: Do Curr berdinen nulua. 1074 00:52:08,880 --> 00:52:10,760 >> JASON Hirschhorn: Hori gauza bera da azkena bezala, ordea, ez da delako 1075 00:52:10,760 --> 00:52:12,820 tokiko aldagai bat ezartzeko ari gara nodo berri honen berdina. 1076 00:52:12,820 --> 00:52:16,680 1077 00:52:16,680 --> 00:52:20,920 Goazen berriro gure argazkia egiteko zerbait tartekatuz. 1078 00:52:20,920 --> 00:52:25,500 Esaten dugu amaieran txertatzen ari zerrendaren, beraz hemen. 1079 00:52:25,500 --> 00:52:30,010 Egungo erakuslea hori dugu Aurreko puntuaren a null seinalatuz eta 1080 00:52:30,010 --> 00:52:32,800 hori 8 seinalatuz. 1081 00:52:32,800 --> 00:52:35,330 Beraz, zer da eguneratu behar dugu, Avi? 1082 00:52:35,330 --> 00:52:36,680 >> AUDIENCE: Aurreko-> hurrengo? 1083 00:52:36,680 --> 00:52:41,980 >> JASON Hirschhorn: Aurreko-> hurrengo zer da eguneratu nahi dugulako dela 1084 00:52:41,980 --> 00:52:44,960 benetan egingo txertatu at zerrendaren amaieran. 1085 00:52:44,960 --> 00:52:47,220 Oraindik ere, akatsen bat izan dugu, nahiz eta, ari gara sartu exekutatu egingo. 1086 00:52:47,220 --> 00:52:50,090 Zein da akatsa? 1087 00:52:50,090 --> 00:52:50,790 Bai? 1088 00:52:50,790 --> 00:52:53,860 >> AUDIENCE: It, itzuli egingo kasu honetan faltsuak? 1089 00:52:53,860 --> 00:52:56,380 >> JASON Hirschhorn: Oh, da faltsua itzuli egingo da. 1090 00:52:56,380 --> 00:52:57,430 Baina badira beste intsektu bat da. 1091 00:52:57,430 --> 00:52:58,930 Beraz itzuli egia jarri behar dugu. 1092 00:52:58,930 --> 00:53:01,370 >> IKUSLEEN: aurreko oraindik ere berdinak zerrendaren goialdean nulua? 1093 00:53:01,370 --> 00:53:03,645 >> JASON Hirschhorn: Beraz, aurreko oraindik berdinen null oso hasiera-hasieratik. 1094 00:53:03,645 --> 00:53:07,480 1095 00:53:07,480 --> 00:53:10,440 Beraz, nola egin dezaket hori baino gehiago lortuko dugu? 1096 00:53:10,440 --> 00:53:10,950 Bai? 1097 00:53:10,950 --> 00:53:15,280 >> AUDIENCE: uste dut txeke bat egin dezakezu lehenago, berriz, loop da bada ikusteko 1098 00:53:15,280 --> 00:53:16,610 zerrenda huts bat. 1099 00:53:16,610 --> 00:53:17,000 >> JASON Hirschhorn: Ados. 1100 00:53:17,000 --> 00:53:17,710 Beraz, goazen hemendik. 1101 00:53:17,710 --> 00:53:18,530 Egin txeke bat. 1102 00:53:18,530 --> 00:53:19,380 Bada - 1103 00:53:19,380 --> 00:53:20,770 >> AUDIENCE: Beraz, gero burua berdin berdin nulua. 1104 00:53:20,770 --> 00:53:24,300 1105 00:53:24,300 --> 00:53:26,320 >> JASON Hirschhorn: bada burua berdin berdin nulua - 1106 00:53:26,320 --> 00:53:27,790 duten esango digu zerrenda huts bat bada. 1107 00:53:27,790 --> 00:53:31,090 >> AUDIENCE: Eta gero zuk Egin burua berdinen berria. 1108 00:53:31,090 --> 00:53:34,740 >> JASON Hirschhorn: Head berdinen new_node? 1109 00:53:34,740 --> 00:53:35,730 Eta zer gehiago egin behar dugu? 1110 00:53:35,730 --> 00:53:37,020 >> AUDIENCE: Eta gero, egia itzuliko duzu. 1111 00:53:37,020 --> 00:53:37,535 >> JASON Hirschhorn: Ez nahiko. 1112 00:53:37,535 --> 00:53:38,785 Urrats bat falta ari gara. 1113 00:53:38,785 --> 00:53:41,590 1114 00:53:41,590 --> 00:53:43,710 >> AUDIENCE: new_node hurrengo null seinalatu ditu. 1115 00:53:43,710 --> 00:53:44,570 >> JASON Hirschhorn: Zehazki, Alden. 1116 00:53:44,570 --> 00:53:46,600 Eta gero, egia itzuli ahal izango dugu. 1117 00:53:46,600 --> 00:53:47,560 Ados. 1118 00:53:47,560 --> 00:53:51,630 Baina oraindik ideia ona da gauzak egiteko zerrendako amaieran, ezta? 1119 00:53:51,630 --> 00:53:51,950 Ondo da. 1120 00:53:51,950 --> 00:53:54,450 Oraindik ere, baliteke benetan lortuko dugu zerrendaren amaieran. 1121 00:53:54,450 --> 00:53:57,870 Beraz kodea fin hau da gara at bada zerrendaren amaitzeko eta batzuk daude 1122 00:53:57,870 --> 00:53:59,120 zerrendan gauzak? 1123 00:53:59,120 --> 00:54:01,830 1124 00:54:01,830 --> 00:54:02,040 Ezta? 1125 00:54:02,040 --> 00:54:03,540 Jarraitzen dugu Marcus en ideia delako. 1126 00:54:03,540 --> 00:54:06,870 Agian begizta hau irteteko dugulako Oraindik zerrendaren amaieran dugu. 1127 00:54:06,870 --> 00:54:09,308 Beraz, oraindik ere nahi dugu hau hemen kode-behera? 1128 00:54:09,308 --> 00:54:10,520 >> AUDIENCE: Bai. 1129 00:54:10,520 --> 00:54:11,000 >> JASON Hirschhorn: Bai. 1130 00:54:11,000 --> 00:54:14,190 Eta zer egin hau aldatzeko behar dugu? 1131 00:54:14,190 --> 00:54:15,440 Egia. 1132 00:54:15,440 --> 00:54:19,580 1133 00:54:19,580 --> 00:54:21,640 Ez dela soinu ona guztiontzat hain urruti? 1134 00:54:21,640 --> 00:54:22,420 Inor izan baldin - 1135 00:54:22,420 --> 00:54:23,480 Avi, ez zerbait gehitu nahi duzu? 1136 00:54:23,480 --> 00:54:23,920 >> AUDIENCE: N º 1137 00:54:23,920 --> 00:54:25,276 >> JASON Hirschhorn: Ados. 1138 00:54:25,276 --> 00:54:27,010 Beraz, aldaketa pare bat egin dugu. 1139 00:54:27,010 --> 00:54:29,540 Egiaztapen hau egin dugu aurretik dugu joan zerrenda huts bat da. 1140 00:54:29,540 --> 00:54:31,790 Beraz, hartu dugu arreta zerrenda huts bat du. 1141 00:54:31,790 --> 00:54:35,500 Eta hemen arreta hartu genuen txertatzeak duen zerrendako amaieran zerbait. 1142 00:54:35,500 --> 00:54:38,930 Beraz, badirudi, berriz, begizta hartzea hau atsegin du gauzak zaintzen artean, 1143 00:54:38,930 --> 00:54:41,920 zerrendan nonbait han bada zerrendan gauzak dira. 1144 00:54:41,920 --> 00:54:42,280 >> Ados. 1145 00:54:42,280 --> 00:54:44,310 Let programa hau berriro exekutatu digu. 1146 00:54:44,310 --> 00:54:50,170 1147 00:54:50,170 --> 00:54:50,755 Ez arrakastatsua. 1148 00:54:50,755 --> 00:54:52,190 >> AUDIENCE: ez da zuk egina. 1149 00:54:52,190 --> 00:54:53,940 >> JASON Hirschhorn: Oh, Ez nuen egin da. 1150 00:54:53,940 --> 00:54:56,250 Puntu ona, Michael. 1151 00:54:56,250 --> 00:54:57,500 Dezagun gehitu loturiko marka bat. 1152 00:54:57,500 --> 00:55:01,590 1153 00:55:01,590 --> 00:55:04,830 87 lerro batean akatsen bat. 1154 00:55:04,830 --> 00:55:05,420 87 lerro. 1155 00:55:05,420 --> 00:55:06,600 Alden, hau lerroan ni eman zen. 1156 00:55:06,600 --> 00:55:08,962 Zer gertatzen da? 1157 00:55:08,962 --> 00:55:10,710 >> AUDIENCE: null izan behar du. 1158 00:55:10,710 --> 00:55:11,000 >> JASON Hirschhorn: Bikain. 1159 00:55:11,000 --> 00:55:11,630 Zehazki eskubidea. 1160 00:55:11,630 --> 00:55:13,290 Nulua izan behar da. 1161 00:55:13,290 --> 00:55:15,210 Egin dezagun berriz. 1162 00:55:15,210 --> 00:55:17,220 Konpilatu. 1163 00:55:17,220 --> 00:55:17,890 Ados. 1164 00:55:17,890 --> 00:55:19,400 Dezagun txertatzeko hiru. 1165 00:55:19,400 --> 00:55:20,570 Txertatze arrakastatsua izan zen. 1166 00:55:20,570 --> 00:55:21,660 Dezagun inprimatu. 1167 00:55:21,660 --> 00:55:23,590 Oh, bakarrik begiratu ahal izango bagenu. 1168 00:55:23,590 --> 00:55:25,500 Baina ez dugu egin du inprimatu funtzioa oraindik. 1169 00:55:25,500 --> 00:55:27,840 Dezagun sartu beste zerbait. 1170 00:55:27,840 --> 00:55:29,090 Zer sartu behar dugu? 1171 00:55:29,090 --> 00:55:31,120 1172 00:55:31,120 --> 00:55:31,940 >> AUDIENCE: Zazpi. 1173 00:55:31,940 --> 00:55:33,340 >> JASON Hirschhorn: Zazpi? 1174 00:55:33,340 --> 00:55:34,590 >> AUDIENCE: Bai. 1175 00:55:34,590 --> 00:55:38,680 1176 00:55:38,680 --> 00:55:39,780 >> JASON Hirschhorn: seg matxura bat daukagu. 1177 00:55:39,780 --> 00:55:43,760 Beraz, inork lortu dugu, baina argi eta garbi dugu ezin bi lortzeko. 1178 00:55:43,760 --> 00:55:45,690 5:07 da. 1179 00:55:45,690 --> 00:55:48,370 Beraz, hau arazteko genezake hiru minutuz. 1180 00:55:48,370 --> 00:55:51,240 Baina naiz digu utzi hemen noa eta aurrera egiteko mahaiak egiaztatu. 1181 00:55:51,240 --> 00:55:54,290 Baina, berriro ere, kode honen erantzunak Posta elektronikoaren bidez bidaliko dizut pixka batean. 1182 00:55:54,290 --> 00:55:55,440 Oso hurbil gaude. 1183 00:55:55,440 --> 00:55:58,300 Oso irudikatu animatzen zaitut zer gertatzen da hemen eta konpondu. 1184 00:55:58,300 --> 00:56:02,400 Beraz email dizut kode hau bezalako baita plus konponbidea - 1185 00:56:02,400 --> 00:56:03,670 Ziurrenik konponbidea geroago. 1186 00:56:03,670 --> 00:56:05,110 Lehen kode hau. 1187 00:56:05,110 --> 00:56:08,290 >> Beste gauza dugu aurretik egin nahi dut akabera da, ez dugu ezer libratuko. 1188 00:56:08,290 --> 00:56:10,370 Beraz, zuk erakutsi nahi dut zer valgrind itxura. 1189 00:56:10,370 --> 00:56:14,310 Valgrind mugak exekutatzen badugu gure programa,. / lotua. 1190 00:56:14,310 --> 00:56:22,540 Berriz ere, diapositiba honen arabera, dugu valgrind exekutatu behar mota batzuekin 1191 00:56:22,540 --> 00:56:26,410 aukera, kasu honetan - Leak-check = betea. 1192 00:56:26,410 --> 00:56:27,660 Hargatik idatzi valgrind - Leak-check = betea. 1193 00:56:27,660 --> 00:56:31,910 1194 00:56:31,910 --> 00:56:35,080 Beraz, hau valgrind exekutatu egingo gure programa da. 1195 00:56:35,080 --> 00:56:37,000 Eta, orain, programa benetan doa. 1196 00:56:37,000 --> 00:56:40,190 Beraz, exekutatu behar bezala joan aurretik, zerbait sartu jarri 1197 00:56:40,190 --> 00:56:40,830 Hiru jarri noa. 1198 00:56:40,830 --> 00:56:41,790 Duten lanak. 1199 00:56:41,790 --> 00:56:43,202 Ez dut zerbait jarri saiatzeko joan goaz, bestela, delako 1200 00:56:43,202 --> 00:56:44,710 seg kasu horretan faltsu bat lortzeko. 1201 00:56:44,710 --> 00:56:46,700 Naiz, beraz, irten egingo da. 1202 00:56:46,700 --> 00:56:50,160 >> Eta orain behera ikusiko duzu hemen Leak eta zeure laburpena. 1203 00:56:50,160 --> 00:56:52,310 Hauek dira gauza onak direla Joan nahi duzun. 1204 00:56:52,310 --> 00:56:56,780 Beraz zeure laburpena - dio, erabileran irtetean - zortzi byte bloke batean. 1205 00:56:56,780 --> 00:56:58,370 Alde blokea dela nodo dugu malloced. 1206 00:56:58,370 --> 00:57:02,230 Michael, esan duzu nodo bat zortzi da aurretik osokoa ditu ziztadak delako 1207 00:57:02,230 --> 00:57:02,680 eta erakuslea. 1208 00:57:02,680 --> 00:57:04,550 Beraz, gure nodoa da. 1209 00:57:04,550 --> 00:57:08,170 Eta gero malloc erabiltzen dugun dio zazpi aldiz eta libratuko dugu 1210 00:57:08,170 --> 00:57:08,940 zerbait sei aldiz. 1211 00:57:08,940 --> 00:57:13,680 Baina inoiz free deitzen dugu, beraz, I have no Ideia zeri buruz hitz egiten da hau. 1212 00:57:13,680 --> 00:57:18,490 >> Baina nahikoa esan nahi du horrek, zure programaren bidez, malloc deitzen ari da 1213 00:57:18,490 --> 00:57:20,330 beste leku batzuetan dugun behar ez kezkatu. 1214 00:57:20,330 --> 00:57:22,460 Beraz malloc ziurrenik deitzen zen leku batzuetan. 1215 00:57:22,460 --> 00:57:24,480 Ez dugu behar kezkatu nora. 1216 00:57:24,480 --> 00:57:26,240 Baina hau da benetan guretzat. 1217 00:57:26,240 --> 00:57:27,380 Lehen lerro hau da gurekin. 1218 00:57:27,380 --> 00:57:28,320 Bloke horretan utzi dugu. 1219 00:57:28,320 --> 00:57:30,330 Eta hori hemen ikusi ahal izango duzu leak laburpen batean. 1220 00:57:30,330 --> 00:57:31,950 Oraindik ere eskuratu - 1221 00:57:31,950 --> 00:57:32,930 Zortzi byte bloke batean. 1222 00:57:32,930 --> 00:57:34,100 Memoria horrek esan nahi du - 1223 00:57:34,100 --> 00:57:35,730 memoria duten leaked ditugu. 1224 00:57:35,730 --> 00:57:37,570 Behin betiko galdu - 1225 00:57:37,570 --> 00:57:38,770 zerbait da ona galdu. 1226 00:57:38,770 --> 00:57:40,590 Oro har, ez duzu Ikusten ezer han. 1227 00:57:40,590 --> 00:57:44,780 Oraindik ere eskuratu da, oro har, non gauzak ikusiko duzu, non nahi duzu 1228 00:57:44,780 --> 00:57:48,900 ikusteko zer kodea behar duzu begiratu libratuko dute baina askatzea ahazten duzu. 1229 00:57:48,900 --> 00:57:53,170 >> Eta ondoren, hau ez zen horrelakorik egin bada, libre guztia egin dugu bada, 1230 00:57:53,170 --> 00:57:54,360 duten egiaztatu ahal izango dugu. 1231 00:57:54,360 --> 00:57:57,330 Let programa exekutatu besterik en Ez du ezer jartzen. 1232 00:57:57,330 --> 00:57:59,800 Hemen ikusiko duzu behera erabileran irtetean - 1233 00:57:59,800 --> 00:58:01,310 zero byte zero blokeetan. 1234 00:58:01,310 --> 00:58:06,310 Horrek esan nahi du ezer utzi behar izan genuen Programa hau irten da. 1235 00:58:06,310 --> 00:58:12,090 Pset6 inflexio aurretik beraz, exekutatu valgrind eta ziurtatu ez duzu 1236 00:58:12,090 --> 00:58:15,310 edozein memoria zure programan filtrazioak. 1237 00:58:15,310 --> 00:58:17,910 Valgrind dituzten edozein zalantza baduzu, free iristeko sentitzen. 1238 00:58:17,910 --> 00:58:18,700 Baina hori da, nola erabiltzen duzun. 1239 00:58:18,700 --> 00:58:20,890 Oso erraza - ikusten baduzu erabileran izan irtetean - 1240 00:58:20,890 --> 00:58:22,270 edozein bloketan byte edozein. 1241 00:58:22,270 --> 00:58:27,890 1242 00:58:27,890 --> 00:58:29,580 >> Beraz txertatze nodo on ginen lanean. 1243 00:58:29,580 --> 00:58:33,840 Beste bi funtzio izan dut hemen - nodo eta nodo free inprimatu. 1244 00:58:33,840 --> 00:58:37,780 Berriz ere, hauek dira funtzio ona izango landu zuretzat joan 1245 00:58:37,780 --> 00:58:40,990 dutelako lagunduko dizu, ez bakarrik ekin ariketak lagin horiek baina, halaber, 1246 00:58:40,990 --> 00:58:42,180 arazoa multzoa. 1247 00:58:42,180 --> 00:58:44,230 Mapan dute nahiko hurbiletik gauzak hemen egin behar joan zaren 1248 00:58:44,230 --> 00:58:45,010 Arazo multzo. 1249 00:58:45,010 --> 00:58:47,640 Baina nahi ez dut ziur guztia ukitu dugu. 1250 00:58:47,640 --> 00:58:50,400 Eta hash taulak erabakigarria ere daude zer atal honetan ari gara egiten 1251 00:58:50,400 --> 00:58:51,980 astea - edo arazo multzoan. 1252 00:58:51,980 --> 00:58:55,200 >> Beraz, atal lekua hartzera joan hash taulak buruz hitz egiten. 1253 00:58:55,200 --> 00:58:58,140 Antzematen baduzu I made a Hash taula txiki. 1254 00:58:58,140 --> 00:59:00,020 Hori ez da, zer ari gara hitz buruz, ordea. 1255 00:59:00,020 --> 00:59:03,540 Ezberdin bat hitz egiten ari gara hash taulak mota. 1256 00:59:03,540 --> 00:59:07,300 Eta bere core, hash taula batean bat baino gehiago ez da 1257 00:59:07,300 --> 00:59:08,860 array plus hash funtzio bat. 1258 00:59:08,860 --> 00:59:11,150 Apur bat hitz egin besterik ez goaz ziurtatu denek zer ulertzen 1259 00:59:11,150 --> 00:59:12,110 hash funtzioa da. 1260 00:59:12,110 --> 00:59:15,420 Eta zuk kontatzen dut orain dela ezer ez, bi gauza baino gehiago - 1261 00:59:15,420 --> 00:59:18,590 array eta hash funtzio bat. 1262 00:59:18,590 --> 00:59:20,716 Eta hona hemen urratsak egiten horietatik honek funtzionatzen. 1263 00:59:20,716 --> 00:59:31,560 1264 00:59:31,560 --> 00:59:32,810 >> Badira gure array da. 1265 00:59:32,810 --> 00:59:38,460 1266 00:59:38,460 --> 00:59:39,460 Badira gure funtzioa da. 1267 00:59:39,460 --> 00:59:43,180 Bereziki, hash funtzioak behar gauza pare bat egin honekin. 1268 00:59:43,180 --> 00:59:45,040 Zehazki hitz egin nahi dut buruzko arazo hau ezarri. 1269 00:59:45,040 --> 00:59:46,450 Ziurrenik joan kate batean hartu. 1270 00:59:46,450 --> 00:59:50,570 1271 00:59:50,570 --> 00:59:51,770 Eta zer, itzuli egingo da? 1272 00:59:51,770 --> 00:59:52,640 Zer datu-mota? 1273 00:59:52,640 --> 00:59:54,260 Alden? 1274 00:59:54,260 --> 00:59:55,760 Hash funtzioa itzultzeko? 1275 00:59:55,760 --> 00:59:58,760 Zenbaki oso bat. 1276 00:59:58,760 --> 01:00:01,700 Beraz, hau da, zer hash balioa mahaia osatzen dute - 1277 01:00:01,700 --> 01:00:05,430 array formularioa mahai baten eta hash funtzio bat. 1278 01:00:05,430 --> 01:00:06,010 Nola funtzionatzen duen? 1279 01:00:06,010 --> 01:00:07,300 Lan egiten du, hiru urratsetan egiten. 1280 01:00:07,300 --> 01:00:08,740 Gako bat ematen diogu. 1281 01:00:08,740 --> 01:00:11,470 Kasu honetan, emango dugu kate bat. 1282 01:00:11,470 --> 01:00:18,140 Hash funtzioa deitzen dugun urrats bakoitzeko gakoa eta balore bat lortuko dugu. 1283 01:00:18,140 --> 01:00:20,310 >> Hain zuzen ere, esan dugu zenbaki oso bat lortuko dugu. 1284 01:00:20,310 --> 01:00:25,630 Osokoa dela, ez dira oso zehatzak zer osokoa dela izan daiteke mugak. 1285 01:00:25,630 --> 01:00:28,880 Adibide honetan, gure array tamaina hiruko da. 1286 01:00:28,880 --> 01:00:32,330 Beraz, zer zenbakiak daiteke osokoa dela izan. 1287 01:00:32,330 --> 01:00:35,970 Zer da baliozko balioen barrutia da osokoa dela, itzulera hau motaren 1288 01:00:35,970 --> 01:00:37,220 hash funtzioa? 1289 01:00:37,220 --> 01:00:40,440 1290 01:00:40,440 --> 01:00:42,110 Zero, bat eta bi. 1291 01:00:42,110 --> 01:00:46,060 Hash funtzioa puntua da irudikatu array lekua 1292 01:00:46,060 --> 01:00:47,790 non gure funtsezko doa. 1293 01:00:47,790 --> 01:00:51,290 Badira hiru bakarrik posible lekuak hemen - 1294 01:00:51,290 --> 01:00:52,130 zero, bat, edo bi. 1295 01:00:52,130 --> 01:00:55,360 Beraz, funtzio hau hobeto bueltan zero, bat, edo bi. 1296 01:00:55,360 --> 01:00:58,740 Array honetan zenbait baliozko indice. 1297 01:00:58,740 --> 01:01:02,770 >> Eta, ondoren, bertan itzultzen arabera, irekita ikusi dezakezu han array 1298 01:01:02,770 --> 01:01:03,730 balioa parentesi. 1299 01:01:03,730 --> 01:01:05,800 Hori da, non gakoa jarri genituen. 1300 01:01:05,800 --> 01:01:11,280 Beraz, bota kalabaza dugu, atera dugu zero. 1301 01:01:11,280 --> 01:01:15,540 Array bracket 0 etan, kalabaza jarri genituen. 1302 01:01:15,540 --> 01:01:21,070 Bota katuak dugu, atera dugu bat. 1303 01:01:21,070 --> 01:01:24,110 Katu jarri dugu batean. 1304 01:01:24,110 --> 01:01:25,480 Jarri armiarma dugu. 1305 01:01:25,480 --> 01:01:26,710 Atera dugu bi. 1306 01:01:26,710 --> 01:01:30,200 Armiarma jarri dugu array bracket bi at. 1307 01:01:30,200 --> 01:01:32,300 Hain polita izango litzateke bada horrelako lan egin da. 1308 01:01:32,300 --> 01:01:35,570 Baina, zoritxarrez, baita dugu ikusten, pixka bat zailagoa da. 1309 01:01:35,570 --> 01:01:37,570 >> Iritsi aurretik, galderaren bat buruzko oinarrizko honetan 1310 01:01:37,570 --> 01:01:38,820 hash taula bat ezarri-? 1311 01:01:38,820 --> 01:01:49,050 1312 01:01:49,050 --> 01:01:51,940 Hau zehazki irudi bat da zer marraztu zuen taula gainean dugu. 1313 01:01:51,940 --> 01:01:55,420 Baina genuen taula gainean geroztik, I Nago ez da sartu aurrerago joango gara. 1314 01:01:55,420 --> 01:02:00,430 Funtsean, giltzak, kutxa beltzak magia - edo kasu honetan, zertzeta kutxa - baten 1315 01:02:00,430 --> 01:02:02,410 hash funtzioa jartzen kuboak. 1316 01:02:02,410 --> 01:02:04,690 Eta adibide honetan gaude Ez izena jarriz. 1317 01:02:04,690 --> 01:02:07,880 Lotutako telefonoz ari gara! ontzi, izenaren kopurua. 1318 01:02:07,880 --> 01:02:10,430 Baina oso ondo ezin izan duzu besterik izena jarri ontzi batean. 1319 01:02:10,430 --> 01:02:12,950 >> Hau zer argazki bat besterik ez da Drew taula gainean dugu. 1320 01:02:12,950 --> 01:02:14,460 Pitfalls potentziala dugu, baina. 1321 01:02:14,460 --> 01:02:17,470 Eta egun, bi dira bereziki diapositibak baino gehiago joan nahi dut. 1322 01:02:17,470 --> 01:02:20,230 Lehenengoa buruz da hash funtzio bat. 1323 01:02:20,230 --> 01:02:22,620 Beraz, galdera galdetu nion, zer hash funtzioa ona egiten? 1324 01:02:22,620 --> 01:02:24,220 Bi erantzun ematen dut. 1325 01:02:24,220 --> 01:02:26,630 Lehenengoa da determinista dela. 1326 01:02:26,630 --> 01:02:29,660 Hash funtzioen testuinguruan, zer esan nahi du horrek? 1327 01:02:29,660 --> 01:02:37,840 1328 01:02:37,840 --> 01:02:39,282 Bai? 1329 01:02:39,282 --> 01:02:42,850 >> AUDIENCE: aurki daiteke konstante denboran indizea? 1330 01:02:42,850 --> 01:02:43,810 >> JASON Hirschhorn: Hori ez da zer esan nahi duen. 1331 01:02:43,810 --> 01:02:44,725 Baina hori asmatzeko ona da. 1332 01:02:44,725 --> 01:02:46,100 Inork da etxebizitza bat honek zer esan nahi du? 1333 01:02:46,100 --> 01:02:47,780 Hash funtzioa ona da determinista? 1334 01:02:47,780 --> 01:02:48,280 Annie? 1335 01:02:48,280 --> 01:02:51,680 >> AUDIENCE: Hori gako bat soilik kartografiatu ahal hash taula honetan leku bat. 1336 01:02:51,680 --> 01:02:53,070 >> JASON Hirschhorn: Hori zehazki eskubidea. 1337 01:02:53,070 --> 01:02:57,430 Aldi bakoitzean kalabaza jarri duzu, beti zero itzultzen du. 1338 01:02:57,430 --> 01:03:01,660 Kalabaza eta zure hash jarri baduzu funtzioa zero itzultzen ditu baina bat 1339 01:03:01,660 --> 01:03:06,060 zerbait itzultzeko probabilitatea bestela, zero baino handiagoa - 1340 01:03:06,060 --> 01:03:09,280 beraz, agian, itzuli ahal izango da, batzuetan edo beste bi aldiz - 1341 01:03:09,280 --> 01:03:11,100 hori ez da hash funtzio on bat. 1342 01:03:11,100 --> 01:03:11,800 Zehazki Arrazoi duzu. 1343 01:03:11,800 --> 01:03:15,680 Hash funtzioa itzuli behar du bera da zenbaki oso zehatza, kasu honetan, aldeko 1344 01:03:15,680 --> 01:03:17,780 kate berean zehatza. 1345 01:03:17,780 --> 01:03:22,210 >> Agian osokoarekin zehatza berean itzuliko ditu kate berean zehatza egiteko 1346 01:03:22,210 --> 01:03:24,430 kapitalizazioa kontuan hartu gabe. 1347 01:03:24,430 --> 01:03:27,980 Baina kasu horretan ez da oraindik deterministak delako gauza anitz 1348 01:03:27,980 --> 01:03:29,350 dira balio bereko perpaus luzeagoak. 1349 01:03:29,350 --> 01:03:30,170 Hori da isuna. 1350 01:03:30,170 --> 01:03:32,615 Betiere, ez da gisa bakarra sarrera jakin bat irteera. 1351 01:03:32,615 --> 01:03:35,630 1352 01:03:35,630 --> 01:03:36,350 >> Ados. 1353 01:03:36,350 --> 01:03:38,340 Bigarren gauza dela baliozko indizeak itzultzen. 1354 01:03:38,340 --> 01:03:40,220 Gora ekarri dugu lehenago. 1355 01:03:40,220 --> 01:03:41,860 Hash funtzio hau - 1356 01:03:41,860 --> 01:03:43,710 oh boy - 1357 01:03:43,710 --> 01:03:46,840 hash funtzio bat egin beharko lukete baliozko indizeek itzultzeko. 1358 01:03:46,840 --> 01:03:47,740 Beraz, esan - 1359 01:03:47,740 --> 01:03:48,990 goazen adibide honetan itzuli. 1360 01:03:48,990 --> 01:03:52,580 1361 01:03:52,580 --> 01:03:57,540 Nire hash funtzioa zenbatzen sortu hitzaren letrak. 1362 01:03:57,540 --> 01:03:58,380 Hash funtzioa da. 1363 01:03:58,380 --> 01:03:59,740 Eta osokoa dela itzultzen. 1364 01:03:59,740 --> 01:04:04,280 Beraz daukat hitza bada, ez da bat itzuli du. 1365 01:04:04,280 --> 01:04:06,900 Eta hori bat jarri hementxe doa. 1366 01:04:06,900 --> 01:04:09,430 Zer jarri dut Hitz bat bada? 1367 01:04:09,430 --> 01:04:11,310 Honez hiru itzuli egingo da. 1368 01:04:11,310 --> 01:04:12,560 Non dugu bat? 1369 01:04:12,560 --> 01:04:18,730 1370 01:04:18,730 --> 01:04:19,750 >> Ez da egokitzen. 1371 01:04:19,750 --> 01:04:21,000 Baina nonbait joan behar da. 1372 01:04:21,000 --> 01:04:23,340 Hau nire hash taula finean da, eta guztia behar du, nonbait, joan. 1373 01:04:23,340 --> 01:04:24,590 Beraz, non joan behar du bat? 1374 01:04:24,590 --> 01:04:28,020 1375 01:04:28,020 --> 01:04:28,710 Edozein pentsamenduak? 1376 01:04:28,710 --> 01:04:29,450 Asmatzen? 1377 01:04:29,450 --> 01:04:30,280 Onak asmatzen? 1378 01:04:30,280 --> 01:04:31,220 >> AUDIENCE: Zero. 1379 01:04:31,220 --> 01:04:32,120 >> JASON Hirschhorn: Zergatik zero? 1380 01:04:32,120 --> 01:04:35,990 >> AUDIENCE: Zeren eta hiru modulo hiru zero da? 1381 01:04:35,990 --> 01:04:38,620 >> JASON Hirschhorn: Hiru modulo hiru zero da. 1382 01:04:38,620 --> 01:04:40,810 Duten etxebizitza handi bat da, eta hori zuzena da. 1383 01:04:40,810 --> 01:04:43,870 Beraz, kasu honetan izan behar lukeen Ziurrenik zero at joateko. 1384 01:04:43,870 --> 01:04:51,080 Beraz, bermatzeko modu ona duen hash honetan funtzioa baliozko indizeak bakarrik itzultzen da 1385 01:04:51,080 --> 01:04:54,580 ezazu modulo mahai tamainaren arabera. 1386 01:04:54,580 --> 01:04:57,360 Edozein dela ere itzultzen honi modulo zuk bada hiru, beti ari zaren iritsi 1387 01:04:57,360 --> 01:05:00,930 zero, bat, eta bi arteko zerbait. 1388 01:05:00,930 --> 01:05:05,160 Eta hau beti zazpi itzultzen bada, eta Beti hiru modulo duzu, zauden 1389 01:05:05,160 --> 01:05:06,030 Beti gauza bera lortu nahi du. 1390 01:05:06,030 --> 01:05:09,270 >> Beraz, oraindik ere determinista da modulo bada. 1391 01:05:09,270 --> 01:05:11,420 Baina hori bermatu egingo duzula zerbait inoiz lortu - 1392 01:05:11,420 --> 01:05:12,940 industria baliogabe bat. 1393 01:05:12,940 --> 01:05:16,840 Oro har, modulo horretan gertatu beharko Hash funtzioa barruan. 1394 01:05:16,840 --> 01:05:18,240 Beraz, ez duzu honekin kezkatu. 1395 01:05:18,240 --> 01:05:20,555 Hori besterik ez duzu bermatu ahal hau baliozko indice bat da. 1396 01:05:20,555 --> 01:05:23,700 1397 01:05:23,700 --> 01:05:26,700 Honi buruzko zalantzaren potentzial pitfall? 1398 01:05:26,700 --> 01:05:36,590 1399 01:05:36,590 --> 01:05:39,060 >> Ados. 1400 01:05:39,060 --> 01:05:40,290 Eta hor dugu. 1401 01:05:40,290 --> 01:05:42,890 Hurrengo balizko oztopoak dituzten, eta hau handi bat da. 1402 01:05:42,890 --> 01:05:46,880 Zer bada bi gako mapa balio bera egiteko? 1403 01:05:46,880 --> 01:05:49,350 Beraz, ez dago bi modu hau kudeatzeko. 1404 01:05:49,350 --> 01:05:53,140 1405 01:05:53,140 --> 01:05:56,020 Lehena da lineala deitzen , probak eta horrek nago 1406 01:05:56,020 --> 01:05:57,300 ez baino gehiago joan behar. 1407 01:05:57,300 --> 01:06:01,120 Baina ezagutzea izan behar du nola lan egiten duen eta zer dela. 1408 01:06:01,120 --> 01:06:05,610 >> Segundo bat baino gehiago joan naiz joan duten asko dena delako 1409 01:06:05,610 --> 01:06:08,290 Jende seguruenik amaituko da erabakitzeko beren arazo multzo batzuetan erabiltzeko. 1410 01:06:08,290 --> 01:06:09,820 Jakina, ez duzu behar. 1411 01:06:09,820 --> 01:06:15,280 Baina arazo multzo, jende askorentzat joera hash taula bat sortzeko aukeratzeko 1412 01:06:15,280 --> 01:06:17,950 kateatzea bereiziak ezartzea batera haien hiztegia. 1413 01:06:17,950 --> 01:06:21,390 Beraz, zer esan nahi duen baino gehiago joan hash taula bat sortzeko 1414 01:06:21,390 --> 01:06:23,890 aparteko kateatzea. 1415 01:06:23,890 --> 01:06:26,260 >> Beraz, jarri kalabaza dut. 1416 01:06:26,260 --> 01:06:29,560 Zero itzultzen du. 1417 01:06:29,560 --> 01:06:31,410 Eta kalabaza jarri dut hemen. 1418 01:06:31,410 --> 01:06:35,880 1419 01:06:35,880 --> 01:06:37,930 Gero jarri dut - 1420 01:06:37,930 --> 01:06:39,922 Zer da beste Halloween-gaikako gauza? 1421 01:06:39,922 --> 01:06:42,200 >> AUDIENCE: Candy. 1422 01:06:42,200 --> 01:06:42,770 >> JASON Hirschhorn: Candy! 1423 01:06:42,770 --> 01:06:43,910 Hori handi bat da. 1424 01:06:43,910 --> 01:06:47,760 Jarri dut gozokiak eta gozokiak halaber, zero ematen dit. 1425 01:06:47,760 --> 01:06:49,350 Zer egin dezaket? 1426 01:06:49,350 --> 01:06:51,940 Ideia bat? 1427 01:06:51,940 --> 01:06:53,940 Guztiak ordenatzeko badakizu delako zer aparteko kateatzea da. 1428 01:06:53,940 --> 01:06:55,190 Beraz, edozein ideia zer egin? 1429 01:06:55,190 --> 01:06:58,170 1430 01:06:58,170 --> 01:06:59,110 Bai. 1431 01:06:59,110 --> 01:07:03,810 >> AUDIENCE: katea part benetan hash taula. 1432 01:07:03,810 --> 01:07:08,910 >> JASON Hirschhorn: Beraz, joan marrazteko ideia ona hemen baino gehiago. 1433 01:07:08,910 --> 01:07:09,340 Ados. 1434 01:07:09,340 --> 01:07:12,290 >> AUDIENCE: Have hash du [INAUDIBLE] 1435 01:07:12,290 --> 01:07:16,640 duten puntu erakuslea zerrenda baten hasieran. 1436 01:07:16,640 --> 01:07:20,930 Eta ondoren izan kalabaza lehen balioa izango lotzen zerrenda eta gozokiak egon 1437 01:07:20,930 --> 01:07:22,800 lotutako zerrenda horretan bigarren balioa. 1438 01:07:22,800 --> 01:07:23,420 >> JASON Hirschhorn: Ados. 1439 01:07:23,420 --> 01:07:24,670 Marcus, hori izan zen nabarmena. 1440 01:07:24,670 --> 01:07:26,160 Duten deskonposatzen noa. 1441 01:07:26,160 --> 01:07:28,890 Marcus da egin esaten ez gainidatzi kalabaza. 1442 01:07:28,890 --> 01:07:30,660 Txarra izango litzateke. 1443 01:07:30,660 --> 01:07:33,640 Ez jarri gozokiak nonbait. 1444 01:07:33,640 --> 01:07:35,390 Jartzea bai zero goaz. 1445 01:07:35,390 --> 01:07:37,770 Baina ari gara landu joan ipintzeko zero by 1446 01:07:37,770 --> 01:07:39,395 zerrenda bat sortzeko zero at. 1447 01:07:39,395 --> 01:07:42,430 Eta ari gara zerrenda bat sortzen joan duten zero mapatzen guztia. 1448 01:07:42,430 --> 01:07:47,960 Eta modurik onena sortu ikasi dugu hazten eta txikitu dezake zerrenda bat 1449 01:07:47,960 --> 01:07:49,840 dinamikoki ez da barruan array beste. 1450 01:07:49,840 --> 01:07:51,510 Beraz, ez da multi-dimentsioko array bat. 1451 01:07:51,510 --> 01:07:54,080 Baina besterik lotutako zerrenda bat sortzeko. 1452 01:07:54,080 --> 01:07:55,330 >> Beraz, zer proposatu zuen - 1453 01:07:55,330 --> 01:07:57,950 1454 01:07:57,950 --> 01:07:59,200 Noa berri bat lortzeko - 1455 01:07:59,200 --> 01:08:15,380 1456 01:08:15,380 --> 01:08:19,689 da erakusleak array bat sortzeko, erakusleak array bat. 1457 01:08:19,689 --> 01:08:20,580 Ados. 1458 01:08:20,580 --> 01:08:24,180 Edozein ideia edo iradokizun zer mota Arrasto hori izan beharko luke? 1459 01:08:24,180 --> 01:08:26,290 Marcus? 1460 01:08:26,290 --> 01:08:27,250 >> AUDIENCE: erakusleak - 1461 01:08:27,250 --> 01:08:28,609 >> JASON Hirschhorn: duzulako esan lotutako zerrenda bat, beraz - 1462 01:08:28,609 --> 01:08:29,520 >> AUDIENCE: Node erakusleak? 1463 01:08:29,520 --> 01:08:30,670 >> JASON Hirschhorn: Node erakusleak. 1464 01:08:30,670 --> 01:08:32,830 Bada gure lotuta dauden gauzak zerrendaren nodoak dira gero 1465 01:08:32,830 --> 01:08:34,370 nodo erakusle izan beharko luke. 1466 01:08:34,370 --> 01:08:35,939 Eta zer, hasieran berdinak dira? 1467 01:08:35,939 --> 01:08:36,990 >> AUDIENCE: Null. 1468 01:08:36,990 --> 01:08:38,240 >> JASON Hirschhorn: Null. 1469 01:08:38,240 --> 01:08:44,540 1470 01:08:44,540 --> 01:08:46,080 Beraz, ez da gure gauza, hutsik da. 1471 01:08:46,080 --> 01:08:47,170 Kalabaza itzultzen zero. 1472 01:08:47,170 --> 01:08:48,569 Zer egiten dugu? 1473 01:08:48,569 --> 01:08:49,609 Oinez me horren bidez? 1474 01:08:49,609 --> 01:08:50,810 Egia esan, Marcus dagoeneko eman zidan. 1475 01:08:50,810 --> 01:08:52,439 Norbaitek oinez me bidez. 1476 01:08:52,439 --> 01:08:54,760 Zer egiten dugu guk - 1477 01:08:54,760 --> 01:08:56,609 hau oso antzekoa zer besterik egiten ari ginen. 1478 01:08:56,609 --> 01:08:57,396 Avi. 1479 01:08:57,396 --> 01:08:59,090 >> AUDIENCE: etxebizitza bat hartu nahi dut. 1480 01:08:59,090 --> 01:09:01,250 Beraz, gozokiak lortzen duzu. 1481 01:09:01,250 --> 01:09:01,640 >> JASON Hirschhorn: Bai. 1482 01:09:01,640 --> 01:09:03,120 Beno, kalabaza lortu dugu. 1483 01:09:03,120 --> 01:09:03,870 Dezagun gure lehenengoa. 1484 01:09:03,870 --> 01:09:04,324 Kalabaza lortu dugu. 1485 01:09:04,324 --> 01:09:04,779 >> AUDIENCE: Ados. 1486 01:09:04,779 --> 01:09:05,880 Kalabaza itzultzen zero. 1487 01:09:05,880 --> 01:09:08,770 Beraz, jarri duzula. 1488 01:09:08,770 --> 01:09:10,810 Edo benetan, jarri duzu lotuta zerrendan. 1489 01:09:10,810 --> 01:09:13,550 >> JASON Hirschhorn: nola egiten dugun jarri lotuta zerrendan? 1490 01:09:13,550 --> 01:09:15,479 >> AUDIENCE: Oh, benetako sintaxia? 1491 01:09:15,479 --> 01:09:16,240 >> JASON Hirschhorn: Just oinez - 1492 01:09:16,240 --> 01:09:16,740 gehiago esateko. 1493 01:09:16,740 --> 01:09:19,310 Zer egiten dugu? 1494 01:09:19,310 --> 01:09:22,100 >> AUDIENCE: sartu besterik ez duzu lehen nodo gisa. 1495 01:09:22,100 --> 01:09:22,675 >> JASON Hirschhorn: Ados. 1496 01:09:22,675 --> 01:09:29,069 Beraz, gure nodo, kalabaza dugu. 1497 01:09:29,069 --> 01:09:31,560 Eta orain, nola ez dut sartu? 1498 01:09:31,560 --> 01:09:34,590 1499 01:09:34,590 --> 01:09:37,090 >> AUDIENCE: You esleitzeko erakuslea da. 1500 01:09:37,090 --> 01:09:37,970 >> JASON Hirschhorn: Zein erakuslea? 1501 01:09:37,970 --> 01:09:39,620 >> AUDIENCE: zero erakuslea. 1502 01:09:39,620 --> 01:09:41,420 >> JASON Hirschhorn: Beraz, non Puntu honek? 1503 01:09:41,420 --> 01:09:42,810 >> AUDIENCE: oraintxe nuluak. 1504 01:09:42,810 --> 01:09:43,529 >> JASON Hirschhorn: Beno, Honez null seinalatuz. 1505 01:09:43,529 --> 01:09:44,499 Baina kalabaza jartzen naiz. 1506 01:09:44,499 --> 01:09:46,053 Beraz, bertan seinalatu behar? 1507 01:09:46,053 --> 01:09:46,880 >> AUDIENCE: kalabaza. 1508 01:09:46,880 --> 01:09:47,399 >> JASON Hirschhorn: kalabaza To. 1509 01:09:47,399 --> 01:09:48,760 Zehazki. 1510 01:09:48,760 --> 01:09:50,010 Beraz, hau kalabaza seinalatzen. 1511 01:09:50,010 --> 01:09:52,500 1512 01:09:52,500 --> 01:09:54,250 Eta non erakuslea du kalabaza puntuan? 1513 01:09:54,250 --> 01:09:57,986 1514 01:09:57,986 --> 01:09:58,340 Egiteko 1515 01:09:58,340 --> 01:09:58,590 >> AUDIENCE: Null. 1516 01:09:58,590 --> 01:09:59,210 >> JASON Hirschhorn: NULL. 1517 01:09:59,210 --> 01:10:00,460 Zehazki. 1518 01:10:00,460 --> 01:10:03,570 1519 01:10:03,570 --> 01:10:05,140 Beraz, besterik gabe, zerbait txertatuko dugu lotuta zerrendan sartu. 1520 01:10:05,140 --> 01:10:07,210 Besterik kode hau idatzi dugu hau egiteko. 1521 01:10:07,210 --> 01:10:09,520 Ia ia lortu dugu guztiz pitzatuta. 1522 01:10:09,520 --> 01:10:10,790 Orain gozokiak txertatu dugu. 1523 01:10:10,790 --> 01:10:13,480 Gure gozokiak ere zero doa. 1524 01:10:13,480 --> 01:10:16,100 Beraz, zer egiten dugu gozokiak? 1525 01:10:16,100 --> 01:10:18,790 >> AUDIENCE: araberakoa ala It Ez da ordenatzeko saiatzen ari gara. 1526 01:10:18,790 --> 01:10:19,640 >> JASON Hirschhorn: Hori zehazki eskubidea. 1527 01:10:19,640 --> 01:10:21,070 Araberakoa da ala ez ordenatzeko saiatzen ari gara. 1528 01:10:21,070 --> 01:10:22,660 Demagun ez gara ordenatzeko joan. 1529 01:10:22,660 --> 01:10:24,880 >> AUDIENCE: Beno ondoren, eztabaidatu dugun bezala aurretik, zer errazena da besterik jarri 1530 01:10:24,880 --> 01:10:28,590 eskubidea hasieran beraz erakuslea zero puntu gozokiak etara. 1531 01:10:28,590 --> 01:10:29,020 >> JASON Hirschhorn: Ados. 1532 01:10:29,020 --> 01:10:29,380 Hold on. 1533 01:10:29,380 --> 01:10:30,630 Utzi gozokiak sortzen dit hemen. 1534 01:10:30,630 --> 01:10:34,030 1535 01:10:34,030 --> 01:10:35,150 Beraz erakuslea hau - 1536 01:10:35,150 --> 01:10:37,590 >> AUDIENCE: Bai, egin beharko lukete orain be gozokiak seinalatuz. 1537 01:10:37,590 --> 01:10:40,580 Orduan izan da erakuslea gozoki kalabaza puntu. 1538 01:10:40,580 --> 01:10:43,140 1539 01:10:43,140 --> 01:10:44,560 >> JASON Hirschhorn: duten bezala? 1540 01:10:44,560 --> 01:10:47,380 Eta esan beste bat lortu dugu gauza zero mapa? 1541 01:10:47,380 --> 01:10:48,660 >> AUDIENCE: Beno, besterik ez duzu gauza bera egiten? 1542 01:10:48,660 --> 01:10:50,290 >> JASON Hirschhorn: Egin gauza bera. 1543 01:10:50,290 --> 01:10:53,700 Beraz, kasu honetan, ez bada egiten dugu ordenatuko da harekin jarraitu nahi baduzu 1544 01:10:53,700 --> 01:10:55,270 sinple samarra soinuak. 1545 01:10:55,270 --> 01:10:59,920 Erakuslea hartu dugu indice batean gure hash funtzioa ematen. 1546 01:10:59,920 --> 01:11:03,830 Puntu horretan ez dugu gure nodo berria. 1547 01:11:03,830 --> 01:11:07,830 Eta gero, edozein dela seinalatuz zen Aurretik izateko - 1548 01:11:07,830 --> 01:11:10,620 Kasu null honetan, in Bigarren kasuan kalabaza - 1549 01:11:10,620 --> 01:11:15,310 , hori dena delakoa da seinalatuz Aurretik, gehitu du hurrengo sartu dugu 1550 01:11:15,310 --> 01:11:17,810 gure nodo berria. 1551 01:11:17,810 --> 01:11:19,650 Zerbait txertatzen ari gara hasieran. 1552 01:11:19,650 --> 01:11:22,900 Izan ere, hori da, baino askoz errazagoa ordenatuko zerrendan mantentzen saiatzen. 1553 01:11:22,900 --> 01:11:25,340 Baina, berriro ere, bilaketa izango da gehiago konplikatu hemen. 1554 01:11:25,340 --> 01:11:28,300 Egingo den bukaeran joan behar dugu beti. 1555 01:11:28,300 --> 01:11:29,650 >> Ados. 1556 01:11:29,650 --> 01:11:32,750 Aparteko kateatzea buruzko zalantzaren bat? 1557 01:11:32,750 --> 01:11:34,690 Nola lan egiten duen? 1558 01:11:34,690 --> 01:11:35,820 Mesedez eskatu orain. 1559 01:11:35,820 --> 01:11:39,260 Benetan ziur duzun guztia nahi dut hau ulertzeko buru dugu aurretik. 1560 01:11:39,260 --> 01:11:48,410 1561 01:11:48,410 --> 01:11:52,060 >> AUDIENCE: Zergatik kalabaza jarri duzu eta bera sartu gozokiak 1562 01:11:52,060 --> 01:11:54,108 Hash taula zati? 1563 01:11:54,108 --> 01:11:55,860 >> JASON Hirschhorn: Ona galdera. 1564 01:11:55,860 --> 01:11:59,140 Zergatik horiek jarri ditugu berean Hash taula zati? 1565 01:11:59,140 --> 01:12:03,200 Beno, kasu honetan gure hash funtzioa itzultzen biak zero. 1566 01:12:03,200 --> 01:12:05,310 Beraz, indice zero at joan behar dute hori delako nora goaz 1567 01:12:05,310 --> 01:12:07,420 haien bila badugu inoiz nahi haiek bila dezan. 1568 01:12:07,420 --> 01:12:11,750 Berriz ere, lineal artesiak planteamendu batekin ez genuke jarri biak zero at. 1569 01:12:11,750 --> 01:12:13,900 Baina aparteko kate hurbiltzean, jartzea bai zero goaz 1570 01:12:13,900 --> 01:12:16,620 eta, ondoren, zerrenda bat sortzeko zero off. 1571 01:12:16,620 --> 01:12:20,140 >> Eta ez dugu kalabaza Gainidatzi nahi besterik gabe, hori delako, ondoren zaitugu 1572 01:12:20,140 --> 01:12:21,860 suposatuko kalabaza zela inoiz txertatuko. 1573 01:12:21,860 --> 01:12:25,230 Besterik gauza bat mantendu dugu bada hemen kokapen hori txarra izango litzateke. 1574 01:12:25,230 --> 01:12:28,590 Orduan ez litzateke ez gurekin inoiz aukera - 1575 01:12:28,590 --> 01:12:31,660 inoiz bikoiztuak izan bagenu, orduan dugu besterik ezabatuko litzateke gure hasierako balioa. 1576 01:12:31,660 --> 01:12:34,090 Beraz, zergatik planteamendu hau egiten dugu. 1577 01:12:34,090 --> 01:12:36,580 Edo horregatik dugu aukeratu zuen -, baina berriro ere, dugu aparteko kateatzea hurbilketa aukeratu zuen, 1578 01:12:36,580 --> 01:12:39,670 bertan dagoen beste ikuspegi asko daude aukeratu zitekeen. 1579 01:12:39,670 --> 01:12:41,185 Du horrek zure galderari erantzuteko? 1580 01:12:41,185 --> 01:12:41,660 >> Ados. 1581 01:12:41,660 --> 01:12:42,910 Carlos. 1582 01:12:42,910 --> 01:12:46,130 1583 01:12:46,130 --> 01:12:47,720 Artesiak lineala inplikatzeko litzateke - 1584 01:12:47,720 --> 01:12:51,913 talka bat aurkitu dugu zero bada, dugu litzateke hurrengo spot in begiratu ikusten baduzu 1585 01:12:51,913 --> 01:12:54,310 irekia izan zen, eta han jarri. 1586 01:12:54,310 --> 01:12:57,320 Eta, ondoren, begiratu hurrengo kirolean dugu eta ikusten zela irekia bada eta jarri han. 1587 01:12:57,320 --> 01:12:59,780 Beraz, hurrengo eskuragarri aurkituko dugu Leku ireki eta jarri han. 1588 01:12:59,780 --> 01:13:02,580 1589 01:13:02,580 --> 01:13:03,890 Beste edozein galdera? 1590 01:13:03,890 --> 01:13:05,370 Bai, Avi. 1591 01:13:05,370 --> 01:13:07,490 >> AUDIENCE: jarraipena Gisa horretan, zer esan nahi hurrengo spot by duzu? 1592 01:13:07,490 --> 01:13:10,250 Hash taulan edo lotutako zerrenda batean. 1593 01:13:10,250 --> 01:13:12,100 >> JASON Hirschhorn: lineala For programazio, ez lotutako zerrendak. 1594 01:13:12,100 --> 01:13:13,400 Hash mahai gainean hurrengo puntura. 1595 01:13:13,400 --> 01:13:13,820 >> AUDIENCE: Ados. 1596 01:13:13,820 --> 01:13:17,570 Beraz hash taulan litzateke tamaina hasieratu - 1597 01:13:17,570 --> 01:13:19,560 kateak kopuruaren bezalako txertatu zinen? 1598 01:13:19,560 --> 01:13:22,170 >> JASON Hirschhorn: You litzateke nahi benetan handia izan da. 1599 01:13:22,170 --> 01:13:23,910 Bai. 1600 01:13:23,910 --> 01:13:27,900 Hemen zer egiten dugun argazki bat da besterik taula gainean marraztu. 1601 01:13:27,900 --> 01:13:29,470 Berriz ere, talka bat dugu hemen. 1602 01:13:29,470 --> 01:13:30,710 152 at. 1603 01:13:30,710 --> 01:13:33,570 Ikusi eta sortu genuen dituzu lotuta zerrenda off da. 1604 01:13:33,570 --> 01:13:38,200 1605 01:13:38,200 --> 01:13:41,850 Berriz ere, hash taula aparteko kateatze hurbilketa ez da duzuna 1606 01:13:41,850 --> 01:13:45,590 arazoak ezartzeko hartu behar Sei baina bat dela asko 1607 01:13:45,590 --> 01:13:47,100 ikasleek hartu ohi. 1608 01:13:47,100 --> 01:13:51,140 Beraz, Ohar horretan, labur-labur hitz egin dezagun buru dugu aurretik arazoa sei, 1609 01:13:51,140 --> 01:13:52,160 eta, ondoren, istorio bat partekatu dut zurekin. 1610 01:13:52,160 --> 01:13:55,120 Hiru minutu ditugu. 1611 01:13:55,120 --> 01:13:55,750 >> Arazo multzo sei. 1612 01:13:55,750 --> 01:13:57,790 Lau funtzio duzu - 1613 01:13:57,790 --> 01:14:02,430 karga, begiratu, tamaina, eta hustuketa. 1614 01:14:02,430 --> 01:14:03,380 Karga - 1615 01:14:03,380 --> 01:14:07,120 bai, izan dugu joan karga gehiagoko oraintxe. 1616 01:14:07,120 --> 01:14:09,330 Karga genuen taula gainean. 1617 01:14:09,330 --> 01:14:13,230 Eta nahiz eta hasi ginen asko coding lotutako zerrenda batean txertatu. 1618 01:14:13,230 --> 01:14:18,020 Beraz, karga ez da baino askoz gehiago duguna besterik ez dira egiten. 1619 01:14:18,020 --> 01:14:21,070 >> Txeke da behin duzu zerbait kargatu. 1620 01:14:21,070 --> 01:14:22,580 Prozesu honen berdina da. 1621 01:14:22,580 --> 01:14:26,845 Halaber lehen bi zatiak non bota duzu hash funtzioa sartu zerbait 1622 01:14:26,845 --> 01:14:29,190 eta bere balioa lortzeko. 1623 01:14:29,190 --> 01:14:30,700 Baina orain ez gara bertan txertatu. 1624 01:14:30,700 --> 01:14:33,350 Orain, ordea, bilatzen ari gara. 1625 01:14:33,350 --> 01:14:37,130 Dut lagin kodea aurkitzeko idatzizko lotutako zerrenda batean zerbait. 1626 01:14:37,130 --> 01:14:38,250 Duten praktikatzera animatzen dut. 1627 01:14:38,250 --> 01:14:43,000 Baina senez zerbait aurkitzeko nahiko zerbait txertatu antzekoa. 1628 01:14:43,000 --> 01:14:46,540 Izan ere, aurkitzeko irudi bat marraztu dugu lotutako zerrenda batean zerbait, mugitzen 1629 01:14:46,540 --> 01:14:48,910 duzun got amaierara arte bidez. 1630 01:14:48,910 --> 01:14:52,430 Eta lortu bada amaierara eta ezin izan aurkitu, orduan ez da han. 1631 01:14:52,430 --> 01:14:55,400 Beraz, txeke da, funtsean. 1632 01:14:55,400 --> 01:14:57,030 >> Hurrengo tamaina da. 1633 01:14:57,030 --> 01:14:57,910 Egin dezagun tamaina. 1634 01:14:57,910 --> 01:15:00,040 Azkenik deskargatzen duzunean. 1635 01:15:00,040 --> 01:15:02,890 Hustuketa inork ez dugu marraztuko da taula gainean edo kodetuak oraindik. 1636 01:15:02,890 --> 01:15:05,990 Baina coding saiatzeko animatzen dut Gure lagina lotutako zerrenda adibidean. 1637 01:15:05,990 --> 01:15:11,440 Baina hustuketa senez free antzekoa da - 1638 01:15:11,440 --> 01:15:14,010 edo esan nahi dut berriro egiaztatu antzekoa da. 1639 01:15:14,010 --> 01:15:17,350 Orain bazoazela aldi bakoitzean izan ezik bidez, ez duzu besterik behar egiaztapena 1640 01:15:17,350 --> 01:15:19,090 ikus zure balioa duzu bada ez. 1641 01:15:19,090 --> 01:15:22,490 Baina nodo hori hartu eta zu libre uzten, funtsean. 1642 01:15:22,490 --> 01:15:23,610 Hori da hustuketa zer egin galdetzen du. 1643 01:15:23,610 --> 01:15:24,670 Free guztia malloced duzun. 1644 01:15:24,670 --> 01:15:27,480 Beraz, zerrenda osoa zeharkatzen ari zaren berriro, hash osoa igaro 1645 01:15:27,480 --> 01:15:27,760 taula berriro. 1646 01:15:27,760 --> 01:15:29,240 Oraingo honetan ez markatu zer ez dago ikusteko. 1647 01:15:29,240 --> 01:15:31,080 Just libratzeko zer han. 1648 01:15:31,080 --> 01:15:33,260 >> Eta, azkenik, tamaina. 1649 01:15:33,260 --> 01:15:34,350 Tamaina ezarri behar da. 1650 01:15:34,350 --> 01:15:35,590 Ez baduzu tamaina ezartzea - 1651 01:15:35,590 --> 01:15:36,250 Ere esan dut hau bezalako. 1652 01:15:36,250 --> 01:15:39,740 Ez baduzu tamaina ezartzeko zehazki in kode-lerro bat barne 1653 01:15:39,740 --> 01:15:43,760 itzultzeko comunicado, zauden tamaina gaizki egiten. 1654 01:15:43,760 --> 01:15:47,170 Beraz, ziurtatu tamaina, diseinua osoa puntuak, egiten ari zarenean zehazki batean 1655 01:15:47,170 --> 01:15:49,970 kode-lerro, barne bueltan adierazpena. 1656 01:15:49,970 --> 01:15:52,450 >> Eta ez pack sortu oraindik, Akchar. 1657 01:15:52,450 --> 01:15:53,700 Irrikaz Beaver. 1658 01:15:53,700 --> 01:15:55,820 1659 01:15:55,820 --> 01:16:01,300 Eskerrik asko guys esan nahi nuen atalean etortzeko. 1660 01:16:01,300 --> 01:16:02,550 Izan Happy Halloween bat. 1661 01:16:02,550 --> 01:16:05,300 1662 01:16:05,300 --> 01:16:05,960 Hau nire mozorroa da. 1663 01:16:05,960 --> 01:16:08,850 Dut egingo hau jantzita ikusiko ostegunean bulegoko ordu duzu ikusten badut. 1664 01:16:08,850 --> 01:16:14,640 Eta zauden batzuk gehiago buruzko bitxia bada hondo mozorro honetan bezala, sentitzen 1665 01:16:14,640 --> 01:16:19,135 free ikusteko 2011 atalean zergatik naiz buruzko istorio bat 1666 01:16:19,135 --> 01:16:20,900 kalabaza mozorroa jantzita. 1667 01:16:20,900 --> 01:16:23,680 Eta istorio triste bat da. 1668 01:16:23,680 --> 01:16:27,050 Beraz, ziurtatu duzula ehunen batzuk hurbil. 1669 01:16:27,050 --> 01:16:28,680 Baina horretan, edozein zalantza izanez gero galderen inguruan makila dut 1670 01:16:28,680 --> 01:16:29,960 atala ondoren lurrera. 1671 01:16:29,960 --> 01:16:31,510 Zorte on arazoa ezarri sei. 1672 01:16:31,510 --> 01:16:33,540 Eta beti bezala, edozein zalantza izanez gero galderak, let me know. 1673 01:16:33,540 --> 01:16:35,584