1 00:00:00,000 --> 00:00:11,860 2 00:00:11,860 --> 00:00:13,120 >> HIZLARIA 1: Guztiak eskubidea eta, beraz, itzuli gara. 3 00:00:13,120 --> 00:00:14,480 Ongi etorri CS50. 4 00:00:14,480 --> 00:00:16,510 Honek zazpi aste bukaera da. 5 00:00:16,510 --> 00:00:20,200 Beraz, azken aldiz gogoratzen duten, hasi ginen pixka bat sofistikatuagoa begira 6 00:00:20,200 --> 00:00:21,100 Datu egiturak. 7 00:00:21,100 --> 00:00:25,110 Orain arte, guztiak benetan izan dugu gure esku izan da hau, array bat. 8 00:00:25,110 --> 00:00:29,340 >> Baina baztertu dugu array baino lehen ez bezala interesgarria, eta hori da, hain zuzen ere, 9 00:00:29,340 --> 00:00:33,570 benetan da, zein dira batzuk sinple honek datu pluses 10 00:00:33,570 --> 00:00:34,560 egitura, beraz, orain arte? 11 00:00:34,560 --> 00:00:36,110 Zer da ona? 12 00:00:36,110 --> 00:00:39,450 Nik, orain arte ikusi dugun bezala? 13 00:00:39,450 --> 00:00:42,540 Zer nahi duzu? 14 00:00:42,540 --> 00:00:44,028 Ezer ez. 15 00:00:44,028 --> 00:00:45,020 >> Ikaslea: [INAUDIBLE]. 16 00:00:45,020 --> 00:00:45,395 >> HIZLARIA 1: Zer da hori? 17 00:00:45,395 --> 00:00:46,410 >> Ikaslea: [INAUDIBLE]. 18 00:00:46,410 --> 00:00:47,000 >> HIZLARIA: 1 Tamaina finkoa. 19 00:00:47,000 --> 00:00:51,260 Ados, beraz, zergatik finkoen tamaina ona da, nahiz eta? 20 00:00:51,260 --> 00:00:53,180 >> Ikaslea: [INAUDIBLE]. 21 00:00:53,180 --> 00:00:56,240 >> HIZLARIA: 1 OK, beraz, eraginkorra da bertan zentzu bat duzula esleitu ahal 22 00:00:56,240 --> 00:01:00,070 finkoa espazioaren zenbatekoa, beraz, espero da, hain zuzen, askoz 23 00:01:00,070 --> 00:01:01,180 espazio nahi duzun bezala. 24 00:01:01,180 --> 00:01:02,720 Beraz, erabat plus bat izan daiteke. 25 00:01:02,720 --> 00:01:06,530 >> Zer array baten aldean, sortu bat da? 26 00:01:06,530 --> 00:01:07,610 Bai? 27 00:01:07,610 --> 00:01:08,750 >> Ikaslea: [INAUDIBLE]. 28 00:01:08,750 --> 00:01:09,550 >> HIZLARIA: 1 guztiak - Barkatu? 29 00:01:09,550 --> 00:01:11,270 >> Ikaslea: [INAUDIBLE]. 30 00:01:11,270 --> 00:01:13,620 >> HIZLARIA: 1 memorian kaxak guztiak edo bata bestearen ondoan. 31 00:01:13,620 --> 00:01:15,220 Eta hori lagungarria - Zergatik? 32 00:01:15,220 --> 00:01:15,970 Hori da egia. 33 00:01:15,970 --> 00:01:18,611 Baina nola egia hori ustiatuko dugu? 34 00:01:18,611 --> 00:01:21,500 >> Ikaslea: [INAUDIBLE]. 35 00:01:21,500 --> 00:01:24,490 >> HIZLARIA: 1 Zehazki, pista gorde ahal izango dugun non dena jakitea besterik ez da 36 00:01:24,490 --> 00:01:28,560 helbide bat, hau da helbidea memoria duten zatiaren byte lehen. 37 00:01:28,560 --> 00:01:30,420 Edo katearen kasuan, lehenengoa helbidea 38 00:01:30,420 --> 00:01:31,460 kate horretan char. 39 00:01:31,460 --> 00:01:33,330 Eta hortik aurrera, aurkituko dugu katearen amaieran. 40 00:01:33,330 --> 00:01:35,710 Bigarren elementu bat, aurkituko dugu Hirugarren elementua, eta abar. 41 00:01:35,710 --> 00:01:38,740 >> Eta, beraz, deskribatzeko modua Fancy duen luzea array ematen digu 42 00:01:38,740 --> 00:01:40,020 ausazko sarbidea. 43 00:01:40,020 --> 00:01:44,330 Just kortxetea erabiliz idazkera eta zenbaki bat da, ezin duzu salto egin 44 00:01:44,330 --> 00:01:48,070 array elementu jakin bat denbora konstante, big O en 45 00:01:48,070 --> 00:01:49,810 bat, nolabait esateko. 46 00:01:49,810 --> 00:01:51,080 >> Baina ez da downsides batzuk izan dira. 47 00:01:51,080 --> 00:01:53,110 Zer array bat ez oso erraz? 48 00:01:53,110 --> 00:01:55,810 49 00:01:55,810 --> 00:01:57,170 Zer da ona, ezta? 50 00:01:57,170 --> 00:01:58,810 >> Ikaslea: [INAUDIBLE]. 51 00:01:58,810 --> 00:01:59,860 >> HIZLARIA 1: Zer da hori? 52 00:01:59,860 --> 00:02:00,530 >> Ikaslea: [INAUDIBLE]. 53 00:02:00,530 --> 00:02:01,460 >> HIZLARIA: 1 tamaina zabalduz. 54 00:02:01,460 --> 00:02:04,800 Array downsides, beraz, ez dira Zer esan nahi du, hain zuzen, kontrakoa 55 00:02:04,800 --> 00:02:05,540 upsides dira. 56 00:02:05,540 --> 00:02:07,610 Beraz downsides bat da dela finkoa tamaina bat. 57 00:02:07,610 --> 00:02:09,400 Beraz, ezin duzu benetan hazten da. 58 00:02:09,400 --> 00:02:13,510 Handiagoa zatika reallocate dezakezu memoria, eta, ondoren, mugitu zaharrak elementuak 59 00:02:13,510 --> 00:02:14,460 berriak array batean. 60 00:02:14,460 --> 00:02:18,060 Eta, ondoren, free zaharra array, for Adibidez, malloc edo antzeko bat erabiliz 61 00:02:18,060 --> 00:02:21,180 funtzioa deitzen idazketa, eta horrek reallocates memoria. 62 00:02:21,180 --> 00:02:25,490 >> Idazketa, bat alde batera bezala, saiatzen emateko memoria hori array hurrengo 63 00:02:25,490 --> 00:02:26,610 dagoeneko duzula. 64 00:02:26,610 --> 00:02:28,740 Baina gauzak mugitu zitekeen guztiz inguruan. 65 00:02:28,740 --> 00:02:30,710 Baina, azken finean, hori da garestia, ezta? 66 00:02:30,710 --> 00:02:33,440 Izan duzu memoria pusketa bat galtzen delako Tamaina hori, baina benetan nahi duzun 67 00:02:33,440 --> 00:02:36,710 tamaina hori, eta, gorde nahi duzu jatorrizko elementuak, duzu 68 00:02:36,710 --> 00:02:40,510 gutxi gorabehera lineala denbora Kopiatzen behar dela gertatuko tik 69 00:02:40,510 --> 00:02:41,900 zaharrak berri array. 70 00:02:41,900 --> 00:02:44,630 Errealitatea eta eragilea da eskatuz sistema behin eta berriz, eta 71 00:02:44,630 --> 00:02:48,340 berriro memoria zatiak handi daiteke hasteko kostatuko nahi duzu, denbora pixka bat ere bai. 72 00:02:48,340 --> 00:02:52,250 Beraz, bai bedeinkazioa eta madarikazio bat da mozorrotzeko ere, multzo horiek 73 00:02:52,250 --> 00:02:53,860 tamaina finkoa dira. 74 00:02:53,860 --> 00:02:56,790 Baina horren ordez, aurkezten dugun zerbait horrela, lotzen deitzen dugu 75 00:02:56,790 --> 00:03:00,580 zerrenda, gutxi upsides bat lortu dugu, eta gutxi batzuk downsides hemen ere. 76 00:03:00,580 --> 00:03:05,780 >> Lotuta zerrenda bat besterik ez da, beraz, datu- egitura osatzen du C structs honetan 77 00:03:05,780 --> 00:03:09,850 kasuan, non egitura bat, oroitzapen, besterik ez da zehatz bat edo gehiago edukiontzi bat 78 00:03:09,850 --> 00:03:11,100 aldagai motak. 79 00:03:11,100 --> 00:03:16,110 Kasu honetan, zer datu motak agertzen egitura baten barruan egon behar duten 80 00:03:16,110 --> 00:03:17,600 azken denbora nodo bat deitu dugu? 81 00:03:17,600 --> 00:03:19,380 Laukizuzenak horietako bakoitza nodo bat da. 82 00:03:19,380 --> 00:03:22,660 Eta txikiagoa laukizuzenak bakoitzean horren barruan datu mota bat da. 83 00:03:22,660 --> 00:03:25,300 Zer motatako genuen esan ziren astelehenean dute? 84 00:03:25,300 --> 00:03:26,478 Bai? 85 00:03:26,478 --> 00:03:27,870 >> Ikaslea: [INAUDIBLE]. 86 00:03:27,870 --> 00:03:30,721 >> HIZLARIA: 1 A eta aldagai erakuslea, edo zehazki, int bat, n, 87 00:03:30,721 --> 00:03:32,180 eta behealdean erakuslea. 88 00:03:32,180 --> 00:03:35,360 Horiek biak gertatuko 32 bit izango da, goizeko CS50 hau atsegin ordenagailu batean gutxienez 89 00:03:35,360 --> 00:03:37,980 Tresna, eta, beraz, dute Oraindik marraztuta berdin tamaina. 90 00:03:37,980 --> 00:03:42,260 >> Beraz, zer dira erakuslea erabiliz itxuraz egiteko, nahiz eta? 91 00:03:42,260 --> 00:03:47,690 Zergatik gehitu gezi hau orain denean array ziren beraz, atsegina eta garbia eta erraza? 92 00:03:47,690 --> 00:03:50,460 Zer erakuslea da egiten Gurekin nodo horietako bakoitzean? 93 00:03:50,460 --> 00:03:52,160 >> Ikaslea: [INAUDIBLE]. 94 00:03:52,160 --> 00:03:52,465 >> HIZLARIA: 1 Horixe. 95 00:03:52,465 --> 00:03:54,120 Duzu kontatzea da, non hurrengoa da. 96 00:03:54,120 --> 00:03:57,350 Beraz, erabili ordenazio dut analogia du hari bat erabiliz ordenatzeko nahi 97 00:03:57,350 --> 00:03:59,180 haria nodo horiek elkarrekin. 98 00:03:59,180 --> 00:04:01,760 Eta hori zehazki zer ari gara egiten erakusleak horietako bakoitzak delako 99 00:04:01,760 --> 00:04:06,360 memoria zatiak daiteke edo ez izan Alboko, atzera itzuli itzuli nahi 100 00:04:06,360 --> 00:04:09,500 RAM barruan, aldi bakoitzean duzulako deitu malloc esaten, ematen dit nahikoa 101 00:04:09,500 --> 00:04:12,510 berri bat nodo byte, Agian hemen edo hemen egongo da agian. 102 00:04:12,510 --> 00:04:13,120 Hemen izan liteke. 103 00:04:13,120 --> 00:04:13,730 Hemen izan liteke. 104 00:04:13,730 --> 00:04:14,640 Besterik ez duzu, ez dakit. 105 00:04:14,640 --> 00:04:17,880 >> Baina erakusleak erabiliz helbideak de nodo horiek, stitch ditzakezu 106 00:04:17,880 --> 00:04:22,370 elkarrekin modu bat bisualki itxura batean zerrenda bat, nahiz eta gauza horiek bezalako 107 00:04:22,370 --> 00:04:26,770 guztietara hedatu zure bat edo zehar zure bi edo lau, zure RAM gigabyte 108 00:04:26,770 --> 00:04:28,760 zeure ordenagailuan barruan. 109 00:04:28,760 --> 00:04:33,230 >> Arazotxo da, beraz, eta, ondoren, eta lotuta zerrenda bat zer da? 110 00:04:33,230 --> 00:04:34,670 Zer prezio bat gara da itxuraz ordainduz? 111 00:04:34,670 --> 00:04:36,010 >> Ikaslea: [INAUDIBLE]. 112 00:04:36,010 --> 00:04:36,920 >> HIZLARIA: 1 leku gehiago, ezta? 113 00:04:36,920 --> 00:04:39,340 , Dugu, kasu honetan, bikoiztu zenbatekoa espazioa dugu desagertu delako 114 00:04:39,340 --> 00:04:43,500 32 nodo bakoitzeko bit bakoitzeko tik int, beraz, gaur egun 64 bit dugu delako 115 00:04:43,500 --> 00:04:45,050 mantentzeko inguruan erakuslea baita. 116 00:04:45,050 --> 00:04:48,860 Eraginkortasun gehiago lortuko duzu zure egiturari bada hau da, gauza sinple baino handiagoa da. 117 00:04:48,860 --> 00:04:52,020 Benetan baduzu ikaslea baten barruan horietatik kateak pare bat da 118 00:04:52,020 --> 00:04:55,430 izena eta etxea, agian ID zenbakia, agian, beste arlo batzuetan elkarrekin. 119 00:04:55,430 --> 00:04:59,000 >> Beraz, bada nahikoa egitura duzu, agian erakuslea kostua da 120 00:04:59,000 --> 00:05:00,010 ez aurre handi bat, besteak beste. 121 00:05:00,010 --> 00:05:03,570 Hau txoko kasu bat pixka hori da simple primitibo bat, hala nola ari gara gordetzeko 122 00:05:03,570 --> 00:05:04,760 lotuta zerrenda barruan. 123 00:05:04,760 --> 00:05:05,790 Baina puntua bera da. 124 00:05:05,790 --> 00:05:08,230 Behin betiko zaren gehiago gastatzea memoria, baina lortzean ari zaren 125 00:05:08,230 --> 00:05:08,990 malgutasuna. 126 00:05:08,990 --> 00:05:12,280 Orain, bada elementu bat gehitu behar delako nahi dut zerrenda honen hasieran, 127 00:05:12,280 --> 00:05:14,340 Nodo berri bat esleitu behar dut. 128 00:05:14,340 --> 00:05:17,180 Eta besterik gabe, horiek eguneratu behar dut geziak nolabait besterik mugituz 129 00:05:17,180 --> 00:05:17,980 Arrasto batzuk inguruan. 130 00:05:17,980 --> 00:05:20,580 >> Nahi dut zerbait sartu behar izanez gero sartu zerrenda erdian, ez dut nahi 131 00:05:20,580 --> 00:05:24,410 bultzatu denek alde batera utzi genuen bezala asteetan 'gure boluntario iraganeko nor 132 00:05:24,410 --> 00:05:25,700 irudikatzen array bat. 133 00:05:25,700 --> 00:05:29,470 Besterik ezin dut berria esleitu nodo eta gero, besterik gabe, geziak seinalatu batean 134 00:05:29,470 --> 00:05:32,290 norabide desberdinak ez duelako dute benetako jarraituko 135 00:05:32,290 --> 00:05:35,670 memoria benetako line Nik atsegin dut marraztuko hemen pantailan. 136 00:05:35,670 --> 00:05:38,400 >> Eta gero, azkenik, nahi izanez gero, sartu zerrendaren amaieran zerbait, bere 137 00:05:38,400 --> 00:05:39,210 are errazagoa. 138 00:05:39,210 --> 00:05:43,320 Hau idazkera arbitrarioa moduko bat da, baina 34-ren erakuslea hartu, etxebizitza bat. 139 00:05:43,320 --> 00:05:46,710 Zein da bere erakuslea gehienen balioa da litekeena marraztuta Ordena zahar bat bezala 140 00:05:46,710 --> 00:05:47,700 eskola antena ez? 141 00:05:47,700 --> 00:05:48,920 >> Ikaslea: [INAUDIBLE]. 142 00:05:48,920 --> 00:05:49,900 >> HIZLARIA: 1 ziurrenik nulua da. 143 00:05:49,900 --> 00:05:52,710 Eta hain zuzen ere hori da egilearen null ordezkaritza. 144 00:05:52,710 --> 00:05:56,310 Eta nulua da delako, erabat jakin behar non lotutako baten amaiera 145 00:05:56,310 --> 00:06:00,050 zerrenda, mantendu duzu ondorengo lest eta eta geziak jarraituz eta hurrengo hauek 146 00:06:00,050 --> 00:06:01,170 nahi zabor balio batzuk. 147 00:06:01,170 --> 00:06:06,230 Beraz null ez dagoela adierazten ez da izango gehiago 34 eskuinera, nodo, 148 00:06:06,230 --> 00:06:07,200 kasu honetan. 149 00:06:07,200 --> 00:06:10,270 >> Beraz, ahal dugun ezartzea proposatzen dugu kodea nodo hau. 150 00:06:10,270 --> 00:06:12,130 Eta ikusi dugu mota honetako sintaxia baino lehenago. 151 00:06:12,130 --> 00:06:15,090 Typedef besterik mota berri bat definitzen ematen, gurekin sinonimo bezala 152 00:06:15,090 --> 00:06:17,100 * karaktere kate bat izan da. 153 00:06:17,100 --> 00:06:21,030 Kasu honetan, eman behar da joan takigrafia idazkera, beraz, egitura nodo 154 00:06:21,030 --> 00:06:24,010 beharrean besterik ez da idatzi gisa nodoa, eta horrek asko garbiagoa da. 155 00:06:24,010 --> 00:06:25,360 Gutxiago xeheak asko da. 156 00:06:25,360 --> 00:06:30,080 >> Nodo baten barruan itxuraz int bat izeneko n, eta ondoren egitura nodo bat * 157 00:06:30,080 --> 00:06:34,670 horrek esan nahi du zehatz-mehatz zer nahi dugu geziak, esan nahi da erakuslea bestera 158 00:06:34,670 --> 00:06:36,940 berean datu zehatzak mota nodo. 159 00:06:36,940 --> 00:06:40,300 Eta hori ezin dugu ezartzea proposatzen dut bilaketa hau atsegin funtzioa, zein 160 00:06:40,300 --> 00:06:41,890 Lehenengo begirada batean, agian badirudi konplexua pixka bat. 161 00:06:41,890 --> 00:06:43,330 Baina ikus dezagun da testuinguruan. 162 00:06:43,330 --> 00:06:45,480 >> Let me baino gehiago joan tresnara hemen. 163 00:06:45,480 --> 00:06:48,460 Let me ireki izeneko fitxategia zerrenda zero dot h. 164 00:06:48,460 --> 00:06:53,950 Eta hori bakarrik definizioa dauka dugu ikusi besterik ez duela une honetan datuak 165 00:06:53,950 --> 00:06:55,390 mota izeneko nodo bat. 166 00:06:55,390 --> 00:06:57,350 Beraz, sartu dela dot h fitxategia jarri dugu. 167 00:06:57,350 --> 00:07:01,430 >> Eta alde batera utzi, nahiz eta hau, nahiz gisa programa zarela ikusi da, gutxi gorabehera 168 00:07:01,430 --> 00:07:05,410 konplexua ez duten guztiak, hain zuzen ere, da konbentzio programa bat idazteko 169 00:07:05,410 --> 00:07:10,270 jarri gauzak datuak motak bezala, tira batzuetan, barrutik zure konstanteak 170 00:07:10,270 --> 00:07:13,210 goiburua fitxategia eta ez dute zertan hasi C Zure fitxategia, eta, zalantzarik gabe, zure 171 00:07:13,210 --> 00:07:17,370 programak eskuratu handiagoa eta handiagoa da, beraz, non bi begiratu for badakizu 172 00:07:17,370 --> 00:07:20,840 Kasu batzuetan dokumentazioa, edo hau bezalako oinarriak, egiteko 173 00:07:20,840 --> 00:07:22,360 mota batzuen definizioa. 174 00:07:22,360 --> 00:07:25,680 >> Dut ireki bada zerrenda zero dot c, nabarituko gauza batzuk. 175 00:07:25,680 --> 00:07:29,090 Gutxi batzuk goiburu fitxategiak, gehienak barne hartzen ditu horietatik ikusi dugu aurretik. 176 00:07:29,090 --> 00:07:31,980 Bere goiburu fitxategi ditu. 177 00:07:31,980 --> 00:07:35,200 >> Eta alde batera bezala, zergatik hori bikoitza komatxo hemen, baita angelu aurka 178 00:07:35,200 --> 00:07:38,340 on lerroan parentesi duten Nabarmendu dut, ez? 179 00:07:38,340 --> 00:07:39,180 >> Ikaslea: [INAUDIBLE]. 180 00:07:39,180 --> 00:07:40,460 >> HIZLARIA 1: Bai, beraz, fitxategi lokal bat da. 181 00:07:40,460 --> 00:07:44,300 Hala bada, zure fitxategi lokal bat da, hemen linea 15, adibidez, erabiltzen dituzun 182 00:07:44,300 --> 00:07:46,570 komatxo bikoitzaren ordez du angeluarekin parentesien. 183 00:07:46,570 --> 00:07:48,270 >> Orain interesgarri hau antzeko zerbait da. 184 00:07:48,270 --> 00:07:51,830 Iragarki ditudan deklaratu global bat Programa honetan aldagai line 18 185 00:07:51,830 --> 00:07:55,910 izeneko lehen, ideia hau da: lehenengo erakuslea izango 186 00:07:55,910 --> 00:07:59,190 nire zerrenda lotutako nodoa, eta ez dut null hasieratu da, zeren dudan dut 187 00:07:59,190 --> 00:08:02,310 ez egotzitako benetako edozein nodo besterik gabe. 188 00:08:02,310 --> 00:08:07,570 >> Beraz, honek adierazten du, pictorially, zer egiten dugu ikusi momentu bat duela irudian bezala 189 00:08:07,570 --> 00:08:10,090 urrun erakuslea duten ezkerraldean. 190 00:08:10,090 --> 00:08:12,260 Beraz, oraintxe, erakusle dela ez du gezi bat. 191 00:08:12,260 --> 00:08:14,590 Da horren ordez, besterik gabe null. 192 00:08:14,590 --> 00:08:17,880 Baina zer izango den adierazten du lehenengo benetako helbide 193 00:08:17,880 --> 00:08:19,480 Zerrenda honetan nodo. 194 00:08:19,480 --> 00:08:22,120 Beraz inplementatu dut global bat da , Ikusiko duzun bezala ikusteko, izan ere, hori guztia 195 00:08:22,120 --> 00:08:25,310 programa ez da bizitzan ezartzeko niretzat zerrenda bat lotuta. 196 00:08:25,310 --> 00:08:27,050 >> Orain lortu dut gutxi batzuk prototipo hemen. 197 00:08:27,050 --> 00:08:31,190 Ezaugarri bezala ezartzea erabaki nuen ezabatzeko, txertatzeko bilatzen, eta, 198 00:08:31,190 --> 00:08:31,740 eskuratzea - 199 00:08:31,740 --> 00:08:35,210 du osoan besterik ez izatearen a pie zerrenda, eta bere elementuak inprimatzeko. 200 00:08:35,210 --> 00:08:36,750 Eta orain hemen nire nagusia errutina da. 201 00:08:36,750 --> 00:08:39,890 Eta ez dugu gehiegi pasatzeko denbora baita horiek ordenatu, eta espero dugu 202 00:08:39,890 --> 00:08:41,780 orain kapela zaharrak. 203 00:08:41,780 --> 00:08:45,370 >> Honako hau egiten dut, Erabiltzaileak, berriz, elkarlanean. 204 00:08:45,370 --> 00:08:47,300 Ko, beraz, inprimatu dut menu hori. 205 00:08:47,300 --> 00:08:49,420 Eta formateatuta dut gisa garbi nuen bezala. 206 00:08:49,420 --> 00:08:52,240 Erabiltzaile bat motak, esan nahi bada zerbait ezabatu nahi dute. 207 00:08:52,240 --> 00:08:54,560 Erabiltzaileak bi motak, esan nahi bada zerbait sartu nahi dute. 208 00:08:54,560 --> 00:08:55,930 Eta abar. 209 00:08:55,930 --> 00:08:58,270 Gero galdetuko dut eta komando bat. 210 00:08:58,270 --> 00:08:59,300 Eta, ondoren, GetInt erabili dut. 211 00:08:59,300 --> 00:09:02,790 >> Beraz, hau oso sinplea da menuing interfazea besterik ez duzu idatzi 212 00:09:02,790 --> 00:09:05,270 bat mapping zenbaki bat komandoak du. 213 00:09:05,270 --> 00:09:08,730 Eta, gaur egun polit bat garbi aldatu behar dut deklarazio hori aldatzeko gertatzen 214 00:09:08,730 --> 00:09:10,090 edozein izanik ere, erabiltzaileak idatzitako sartu 215 00:09:10,090 --> 00:09:12,180 Eta ondo idatzi dute bat bada, dut deitu ezabatu eta apurtu. 216 00:09:12,180 --> 00:09:14,380 Idatzitako bi izanez gero, dut deitu sartu eta hautsi. 217 00:09:14,380 --> 00:09:16,490 >> Eta orain, nabarituko jarri dut bakoitza berean horiek. 218 00:09:16,490 --> 00:09:18,360 Hau da, besterik gabe, estiloari erabaki bat. 219 00:09:18,360 --> 00:09:20,210 Normalean ikusi dugu zerbait hau atsegin du. 220 00:09:20,210 --> 00:09:23,260 Baina erabaki dut, sinceramente, nire programa begiratu irakurgarriagoa delako 221 00:09:23,260 --> 00:09:25,980 bakarrik lau kasu izan zen besterik zerrendatu da hau. 222 00:09:25,980 --> 00:09:28,360 Guztiz zilegia estilo. 223 00:09:28,360 --> 00:09:31,480 Eta hau, beraz, betiere egin nahi dut Erabiltzaileak ez du idatzitako zero, eta horrek I 224 00:09:31,480 --> 00:09:33,910 erabaki irten nahi dutela esan nahi izango du. 225 00:09:33,910 --> 00:09:36,630 >> Beraz, orain konturatu naiz zer hemen egingo. 226 00:09:36,630 --> 00:09:38,650 Zerrenda askatzeko itxuraz noa. 227 00:09:38,650 --> 00:09:40,230 Baina hori on gehiago une batean. 228 00:09:40,230 --> 00:09:41,640 Dezagun lehenengo programa honetan. 229 00:09:41,640 --> 00:09:45,250 Hargatik handiagoa terminal bat egin zidan leiho, dot barra zerrenda 0. 230 00:09:45,250 --> 00:09:49,510 Aurrera joan eta txertatu by noa Idazteko bi, 50 bezalako zenbaki, eta, orain, 231 00:09:49,510 --> 00:09:51,590 ikus zerrenda da orain 50 duzu. 232 00:09:51,590 --> 00:09:53,380 Eta nire testua besterik ez korritutako gora pixka bat. 233 00:09:53,380 --> 00:09:55,940 Beraz, orain konturatu zerrenda du zenbakia 50. 234 00:09:55,940 --> 00:09:58,220 >> Egin dezagun txertatze beste bi hartuz. 235 00:09:58,220 --> 00:10:01,630 Dezagun zenbaki bat bezala idatzi. 236 00:10:01,630 --> 00:10:03,940 Zerrenda bat da, gaur egun, 50 eta jarraian. 237 00:10:03,940 --> 00:10:06,020 Hau besterik ez da, beraz, testu-ordezkaritza zerrenda. 238 00:10:06,020 --> 00:10:10,550 Eta dezagun sartu zenbaki bat gehiago bezala kopurua 42 da, hau espero 239 00:10:10,550 --> 00:10:14,620 amaituko du erditik doa, izan ere, era honetan, bereziki, programa da 240 00:10:14,620 --> 00:10:16,320 Horietako txertatzen bezala elementuak. 241 00:10:16,320 --> 00:10:17,220 Beraz, ez da egin behar dugu. 242 00:10:17,220 --> 00:10:20,730 Super programa erraza izan erabat erabili array bat, baina ez dut 243 00:10:20,730 --> 00:10:23,280 gerta daiteke erabiliz lotuta zerrenda bat besterik ez da, beraz, dinamikoki dut 244 00:10:23,280 --> 00:10:24,610 hazten eta txikitu. 245 00:10:24,610 --> 00:10:28,470 >> Hargatik hartu bilaketa begirada bat, badut exekutatu komando hiru, bilatu nahi dut 246 00:10:28,470 --> 00:10:31,040 , esan, zenbakia 43. 247 00:10:31,040 --> 00:10:34,190 Eta ez da ezer aurkitu zen, itxuraz, dut itzuli delako erantzunik ez. 248 00:10:34,190 --> 00:10:35,010 Beraz, egin dezagun berriro. 249 00:10:35,010 --> 00:10:35,690 Bilaketa. 250 00:10:35,690 --> 00:10:39,520 Dezagun 50, edo, hobeto bilatzeko bilaketa 42, eta horrek atsegina 251 00:10:39,520 --> 00:10:40,850 apur sotila esanahia. 252 00:10:40,850 --> 00:10:42,610 Eta bizitzaren zentzua aurkitu nuen han. 253 00:10:42,610 --> 00:10:44,990 42 zenbakia, ez baduzu ezagutzen erreferentzia, Google da. 254 00:10:44,990 --> 00:10:45,350 Guztiak eskubidea. 255 00:10:45,350 --> 00:10:47,130 Beraz, zer programa hau niretzat da? 256 00:10:47,130 --> 00:10:50,660 Ari sartu besterik ez da onartzen, beraz, me urrun eta elementuak bilatzeko. 257 00:10:50,660 --> 00:10:53,650 >> Dezagun Aurreratu, eta, ondoren, nahi duten funtzioa at begiratu dugu 258 00:10:53,650 --> 00:10:55,360 astelehenean aurkezpenik gisa. 259 00:10:55,360 --> 00:10:59,620 Funtzio hau, beraz, aldarrikatzen dut bilaketak batek zerrendako elementu lehenengo 260 00:10:59,620 --> 00:11:03,830 ko, erabiltzaileari galdetu, eta ondoren deituz GetInt benetako int bat lortzeko 261 00:11:03,830 --> 00:11:05,060 nahi duzun bila. 262 00:11:05,060 --> 00:11:06,460 >> Ondoren, iragarki hau. 263 00:11:06,460 --> 00:11:10,690 Aldi baterako aldagai bat sortu nahi dut line 188 izeneko erakuslea - 264 00:11:10,690 --> 00:11:11,270 PTR - 265 00:11:11,270 --> 00:11:12,440 izeneko aukera izan du ezer egin. 266 00:11:12,440 --> 00:11:16,140 Eta nodo bat erakuslea da esan dudalako * nodoa ez dago. 267 00:11:16,140 --> 00:11:19,900 Eta berdina izango da, naiz hasieratzean Lehenengo, beraz, eraginkortasunez hori daukat nire 268 00:11:19,900 --> 00:11:22,860 hatz, eta, beraz, hitz egiteko oso on zerrendaren lehenengo elementua. 269 00:11:22,860 --> 00:11:27,460 Hala bada, nire eskuineko Hemen nago PTR gauza bera seinalatuz lehen 270 00:11:27,460 --> 00:11:28,670 da seinalatuz. 271 00:11:28,670 --> 00:11:31,430 >> Beraz, orain atzera kodean, zer gertatzen den hurrengo - 272 00:11:31,430 --> 00:11:35,070 hau komuna paradigma bat da errepikatzean bat bezalako egitura baten gainetik 273 00:11:35,070 --> 00:11:35,970 lotuta zerrenda. 274 00:11:35,970 --> 00:11:40,410 Honako hauek egiteko aukera, berriz, banoa erakuslea ez da berdina Beraz null bitartean 275 00:11:40,410 --> 00:11:47,530 nire hatz ez da nulua batzuk seinalatuz balioa, erakuslea gezi-n berdin n. 276 00:11:47,530 --> 00:11:52,290 Nabarituko lehen dizugu n horixe da Erabiltzaile GetInts per idatzitako deitu hemen. 277 00:11:52,290 --> 00:11:54,280 >> Eta erakuslea gezi-n zer esan nahi du? 278 00:11:54,280 --> 00:11:59,020 Beno, bada, atzera egingo dugu Argazkia hemen, izan nuen hatz bat seinalatuz bada 279 00:11:59,020 --> 00:12:02,960 bederatzi, dauzkan lehen nodo duten gezi funtsean esan nahi duten joan 280 00:12:02,960 --> 00:12:08,860 nodo eta kokapena n balioa har, kasu horretan, datuak eremuan izeneko n. 281 00:12:08,860 --> 00:12:14,120 >> Bat alde batera bezala - eta pare bat honetan ikusi dugu Duela aste norbaitek galdetu - 282 00:12:14,120 --> 00:12:18,840 sintaxia hau ez da berria, baina ez du eskumenak ematen dugu 283 00:12:18,840 --> 00:12:20,040 ez zen jadanik. 284 00:12:20,040 --> 00:12:25,325 Zein izan zen esaldi hau erabiliz baliokideak dot idazkera eta izar pare bat 285 00:12:25,325 --> 00:12:29,490 Duela aste bueltan zuritu dugu geruza honek apur bat behar baino lehenago? 286 00:12:29,490 --> 00:12:31,780 >> Ikaslea: [INAUDIBLE]. 287 00:12:31,780 --> 00:12:38,880 >> HIZLARIA: 1 Zehazki, izarra izan zen, eta ondoren, izar dot n izan zen, eta 288 00:12:38,880 --> 00:12:41,930 Parentesi hemen, itxura, sinceramente, asko uste dut 289 00:12:41,930 --> 00:12:43,320 críptica gehiago irakurtzeko. 290 00:12:43,320 --> 00:12:46,270 Baina izar erakuslea, beti bezala, bitartekoak joaten. 291 00:12:46,270 --> 00:12:49,090 Eta behin ez bazara, zer datuak Eremu ez da sartu nahi al duzu? 292 00:12:49,090 --> 00:12:52,730 Beno dot idazkera erabili behar dituzu sartzeko bat structs datuak eremuan, eta nik 293 00:12:52,730 --> 00:12:54,140 zehazki nahi n. 294 00:12:54,140 --> 00:12:56,240 >> Egia, hau argudiatu nahi nuke da, besterik gabe, zailagoa da irakurri. 295 00:12:56,240 --> 00:12:58,080 Zailagoa da non gogoratzeko ez parentesi joateko, 296 00:12:58,080 --> 00:12:59,030 izarra, eta hori guztia. 297 00:12:59,030 --> 00:13:02,150 Beraz, munduko hartutako sintaktiko batzuk azukrea, nolabait esateko. 298 00:13:02,150 --> 00:13:04,740 Just esaten modu sexy bat, hau da, baliokideak dira, eta 299 00:13:04,740 --> 00:13:05,970 agian intuitiboagoa. 300 00:13:05,970 --> 00:13:09,600 Erakuslea da, hain zuzen ere bada erakuslea da, gezi notazio bidez joan eta han aurkituko 301 00:13:09,600 --> 00:13:11,890 kasu honetan eremuan izeneko n. 302 00:13:11,890 --> 00:13:13,660 >> Beraz, bada, iruditzen zait, nabarituko dudana. 303 00:13:13,660 --> 00:13:17,430 Inprimatu besterik ez dut, ehuneko i aurkitu dut, int horren balioa plugging. 304 00:13:17,430 --> 00:13:20,730 Ko bigarren lo besterik mota deitu dut eteteko pantailan gauzak 305 00:13:20,730 --> 00:13:22,900 ematen du erabiltzaileak, bigarren bat xurgatzen zer gertatu da. 306 00:13:22,900 --> 00:13:24,290 Eta, ondoren, hautsi nuen. 307 00:13:24,290 --> 00:13:26,330 Bestela, zer egin dezaket? 308 00:13:26,330 --> 00:13:30,960 Erakuslea eguneratu dut berdina erakuslea gezi ondoan. 309 00:13:30,960 --> 00:13:35,840 >> Beraz, argi izan behar du, horrek esan nahi du joan ez, nire zahar-eskola idazkera erabiliz. 310 00:13:35,840 --> 00:13:39,580 Hori esan nahi du, beraz, edozein joan , zein zaren oso seinalatuz 311 00:13:39,580 --> 00:13:43,660 Lehenengo kasua at dut seinalatuz bertan bederatzi dituzten egitura du. 312 00:13:43,660 --> 00:13:44,510 Beraz, joan nintzen. 313 00:13:44,510 --> 00:13:47,880 Eta, ondoren, puntu idazkera esan nahi du, lortzeko balio hurrengo at. 314 00:13:47,880 --> 00:13:50,470 >> Baina balioa, nahiz eta marrazten da estu bat, zenbaki bat besterik ez da. 315 00:13:50,470 --> 00:13:51,720 Zenbaki bat da. 316 00:13:51,720 --> 00:13:55,670 Kode-lerro hau, beraz, ala ez horrela idatzita, gehiago críptica 317 00:13:55,670 --> 00:14:00,190 modu, edo hau bezala, pixka bat gehiago intuizioz, besterik gabe esan nahi du, nire eskua mugitu 318 00:14:00,190 --> 00:14:03,460 hurrengo bat nodo lehen, eta, ondoren, hurrengo batean, eta, ondoren, 319 00:14:03,460 --> 00:14:05,320 ren ondoan, eta abar. 320 00:14:05,320 --> 00:14:09,920 >> Beraz, ez dugu bestetik dwell txertatu eta ezabatu inplementazioak 321 00:14:09,920 --> 00:14:14,030 eta eskuratzea, lehenengo bi dira, nahiko parte hartzen. 322 00:14:14,030 --> 00:14:17,010 Eta nahiko erraz iritsi dela uste dut galdu egiten ahoz. 323 00:14:17,010 --> 00:14:19,890 Baina, zer egin dugu hemen ahal da saiatu zehaztu nola 324 00:14:19,890 --> 00:14:21,640 onenak hori egiteko ikusmen. 325 00:14:21,640 --> 00:14:24,800 Proposatuko nuke, zeren galtzen dugun nahi elementuak txertatu honetara 326 00:14:24,800 --> 00:14:26,680 dagoen zerrenda, eta horrek bost elementuak - 327 00:14:26,680 --> 00:14:29,530 9, 17, 22, 26, eta 33 - 328 00:14:29,530 --> 00:14:33,300 ziren dut hau ezartzeko bada, joan kodea, nola joan kontuan hartu behar dut 329 00:14:33,300 --> 00:14:34,160 hau egiten. 330 00:14:34,160 --> 00:14:37,720 >> Proposatu eta haurra urratsak nuke Horren bidez, kasu honetan, esan nahi dut, zer dira 331 00:14:37,720 --> 00:14:41,090 ahalik eta eszenatoki dugu oro har, agian topo? 332 00:14:41,090 --> 00:14:44,120 Noiz Txertatu ezartzeko lotutako bat zerrenda, eta hori gertatzen da, izan nahi 333 00:14:44,120 --> 00:14:46,090 tamaina bost adibide zehatzak. 334 00:14:46,090 --> 00:14:50,420 Beno, bada, zenbaki bat sartu nahi baduzu, gustatzen esan zenbaki bat, eta 335 00:14:50,420 --> 00:14:53,380 ordenatuko ordena mantenduz, non jakina kopurua, behar bat ez 336 00:14:53,380 --> 00:14:55,686 honen adibide zehatz batean joan? 337 00:14:55,686 --> 00:14:56,840 Hasieran bezala. 338 00:14:56,840 --> 00:15:00,030 >> Baina zer da interesgarria, ez da hori nahi duzun bat sartu nahi izanez gero hau sartu 339 00:15:00,030 --> 00:15:04,100 zerrenda, zer behar bereziak erakuslea eguneratu egin behar da, itxuraz? 340 00:15:04,100 --> 00:15:04,610 Lehenengoa. 341 00:15:04,610 --> 00:15:07,830 Beraz, argudiatu, nuke lehen kasua da uste dugu, agian, bat 342 00:15:07,830 --> 00:15:11,140 eszenatoki batean sartu eta parte hartu zerrendaren hasiera-hasieratik. 343 00:15:11,140 --> 00:15:15,400 >> Dezagun pluck off agian beti bezain erraza, edo are errazagoa kasuan, nahiko hitz egin. 344 00:15:15,400 --> 00:15:18,110 Demagun sartu nahi dut 35 ordenan ordenatuko dira. 345 00:15:18,110 --> 00:15:20,600 Han, jakina, dagokion tokian. 346 00:15:20,600 --> 00:15:25,320 Beraz, zer erakuslea jakina da joan dute, eszenatoki horretan beharreko eguneratzen? 347 00:15:25,320 --> 00:15:30,060 34-ren erakuslea ez nulua bihurtuz baina egitura duen helbidea 348 00:15:30,060 --> 00:15:31,800 35 zenbakia duten. 349 00:15:31,800 --> 00:15:32,750 Beraz, hori da, bi kasu. 350 00:15:32,750 --> 00:15:36,190 Beraz, dagoeneko, quantizing moduko naiz zenbat hemen lan egin behar dut. 351 00:15:36,190 --> 00:15:39,880 >> Eta, azkenik, begi-bistakoa da, erdiko kasua hain zuzen ere, erdi-erdian, nahi izanez dut 352 00:15:39,880 --> 00:15:45,870 sartu say 23 doan antzeko zerbait 23 eta 26 artean, baina 353 00:15:45,870 --> 00:15:48,680 Orain, gauzak apur bat gehiago parte hartzen duelako zer 354 00:15:48,680 --> 00:15:52,800 erakusleak aldatu behar? 355 00:15:52,800 --> 00:15:56,680 22 jakina behar du, beraz, aldatu egin behar da ahal izan ez delako, 26 seinalatu jada. 356 00:15:56,680 --> 00:16:00,320 Berrietara nodo seinalatu behar du: Dute esleitu dut deituz 357 00:16:00,320 --> 00:16:01,770 malloc edo baliokidea batzuk. 358 00:16:01,770 --> 00:16:05,990 >> Baina orduan ere behar dut berria nodoa, 23 kasu honetan, bere erakuslea dute 359 00:16:05,990 --> 00:16:07,870 nori begira? 360 00:16:07,870 --> 00:16:08,560 26. 361 00:16:08,560 --> 00:16:10,380 Eta ez da beti izango da operazioen ordena hemen. 362 00:16:10,380 --> 00:16:13,410 Egiten dut, hau bada foolishly, eta nik delako Adibidez hasieran Irteeran for 363 00:16:13,410 --> 00:16:16,040 zerrendan, eta nire helburua, 23 txertatzeko. 364 00:16:16,040 --> 00:16:18,610 Ikusteko, eta, I ez da sartzen Hemen, bederatzi gertu? 365 00:16:18,610 --> 00:16:18,950 N º 366 00:16:18,950 --> 00:16:20,670 Ba al da hemen sartzen da, hurrengo 17? 367 00:16:20,670 --> 00:16:20,940 N º 368 00:16:20,940 --> 00:16:22,530 Ba al du hemen pertenece da hurrengo 22? 369 00:16:22,530 --> 00:16:23,300 Bai. 370 00:16:23,300 --> 00:16:26,400 >> Orain banago ero hemen, eta ez honen bitartez pentsatzen dut, agian 371 00:16:26,400 --> 00:16:28,320 esleitu nire 23 nodo berria. 372 00:16:28,320 --> 00:16:32,080 Erakuslea eguneratzeko liteke I nodo izeneko 22, seinalatuz 373 00:16:32,080 --> 00:16:33,080 it berria nodo at. 374 00:16:33,080 --> 00:16:36,140 Eta gero, zer egin behar dut eguneratu berriak nodo en erakuslea izan daiteke? 375 00:16:36,140 --> 00:16:38,120 >> Ikaslea: [INAUDIBLE]. 376 00:16:38,120 --> 00:16:38,385 >> HIZLARIA: 1 Horixe. 377 00:16:38,385 --> 00:16:39,710 26 seinalatuz. 378 00:16:39,710 --> 00:16:45,590 Baina dammit nuen ez badago eguneratu 22-ren erakuslea lasaia honetan seinalatu, eta 379 00:16:45,590 --> 00:16:48,260 orain, umezurtz, gainerako daukat zerrenda, nolabait esateko. 380 00:16:48,260 --> 00:16:52,140 Beraz, eragiketa ordena hemen garrantzitsuak izango. 381 00:16:52,140 --> 00:16:55,100 >> Hau egin nahi izan dut lapurtu, esan, sei boluntario. 382 00:16:55,100 --> 00:16:57,650 Eta ikus dezagun ezin bada egin, ikusmen beharrean, kode-jakintsua. 383 00:16:57,650 --> 00:16:59,330 Eta eder batzuk estresa dugu duzu gaur pilotak. 384 00:16:59,330 --> 00:17:02,510 Ados, nola buruz, bi, en itzuli - amaieran daude. 385 00:17:02,510 --> 00:17:04,530 hiru, lau, bai, zuk on amaieran guys. 386 00:17:04,530 --> 00:17:05,579 Eta bost, sei. 387 00:17:05,579 --> 00:17:05,839 Ziur. 388 00:17:05,839 --> 00:17:06,450 Bost eta sei. 389 00:17:06,450 --> 00:17:08,390 Guztiak eskubidea eta zatoz dugu to you guys hurrengoan. 390 00:17:08,390 --> 00:17:09,640 Ondo da, gora etorri. 391 00:17:09,640 --> 00:17:12,010 392 00:17:12,010 --> 00:17:14,819 >> Ondo da, zauden geroztik hemen, litzateke baldarki bat izan nahi duzu 393 00:17:14,819 --> 00:17:16,119 Google Glass hemen? 394 00:17:16,119 --> 00:17:19,075 Eskubidea, eta, beraz, OK, beira, bideo bat grabatu. 395 00:17:19,075 --> 00:17:22,720 396 00:17:22,720 --> 00:17:24,589 Ados, ona joan zaren. 397 00:17:24,589 --> 00:17:27,950 >> Ondo da, beraz, mutilak baino gehiago etortzen bada Hemen, aldez aurretik prestatu dut 398 00:17:27,950 --> 00:17:30,110 zenbakiak batzuk. 399 00:17:30,110 --> 00:17:31,240 Ongi, zatoz hona. 400 00:17:31,240 --> 00:17:33,440 Eta zergatik ez, pixka bat joan gehiago horrela. 401 00:17:33,440 --> 00:17:35,520 Eta ikus dezagun, zein da zure izena, Google Glass batera? 402 00:17:35,520 --> 00:17:35,910 >> Ikaslea: Ben. 403 00:17:35,910 --> 00:17:36,230 >> HIZLARIA 1: Ben? 404 00:17:36,230 --> 00:17:38,380 Ados, Ben, lehenengo izango duzu, literalki. 405 00:17:38,380 --> 00:17:40,580 Beraz bidaliko dizugu etapa amaieran. 406 00:17:40,580 --> 00:17:41,670 Guztiak eskubidea, eta zure izena? 407 00:17:41,670 --> 00:17:41,990 >> Ikaslea: Jason. 408 00:17:41,990 --> 00:17:44,530 >> HIZLARIA: 1 Jason, OK izango duzu zenbakia bederatzi izango dira. 409 00:17:44,530 --> 00:17:46,700 Beraz, bada, Ben horrela jarraitu nahi duzula. 410 00:17:46,700 --> 00:17:47,010 >> Ikaslea: Jill. 411 00:17:47,010 --> 00:17:49,630 >> HIZLARIA: 1 Jill, ahal izango duzu 17, eta hori egin nuen, bada gehiago 412 00:17:49,630 --> 00:17:51,260 intelligently, izan nahi nuke beste muturrean hasi zen. 413 00:17:51,260 --> 00:17:52,370 Horrela joan. 414 00:17:52,370 --> 00:17:53,030 22. 415 00:17:53,030 --> 00:17:53,670 Eta eres? 416 00:17:53,670 --> 00:17:53,980 >> Ikaslea: Mary. 417 00:17:53,980 --> 00:17:56,130 >> HIZLARIA 1: Maria, 22 izan behar duzu. 418 00:17:56,130 --> 00:17:58,420 Eta zure izena? 419 00:17:58,420 --> 00:17:58,810 >> Ikaslea: Chris. 420 00:17:58,810 --> 00:18:00,100 >> HIZLARIA 1: Chris, 26 izan behar duzu. 421 00:18:00,100 --> 00:18:00,740 Eta gero, azkenik. 422 00:18:00,740 --> 00:18:01,400 >> Ikaslea: Diana. 423 00:18:01,400 --> 00:18:02,670 >> HIZLARIA 1: Diana, 34 izan behar duzu. 424 00:18:02,670 --> 00:18:03,920 Abar, zatoz hona. 425 00:18:03,920 --> 00:18:06,360 >> Guztiak eskubidea, beraz, hobetzeko ordenatuko aginduko du dagoeneko. 426 00:18:06,360 --> 00:18:09,600 Eta egin dezagun aurrera, eta hori egin beraz, ezin dugu benetan - 427 00:18:09,600 --> 00:18:11,720 Ben zaren besterik bilatzen mota ezerezetik ez da. 428 00:18:11,720 --> 00:18:15,670 Ados, beraz, goazen aurrera eta honek erakusten armak erabiliz, asko atsegin dut, izan zen, hain zuzen ere, 429 00:18:15,670 --> 00:18:16,250 zer ari den gertatzen. 430 00:18:16,250 --> 00:18:19,540 Anima zaitezte eta eman bat oinez edo yourselves artean bi. 431 00:18:19,540 --> 00:18:22,900 Eta aurrera eta seinalatu Batetik batekin duenarentzat izango duzu behar seinalatuz 432 00:18:22,900 --> 00:18:23,470 honetan oinarritzen da. 433 00:18:23,470 --> 00:18:25,890 Eta zauden null bada, besterik gabe, seinalatu Zuzen behera solairuan. 434 00:18:25,890 --> 00:18:27,690 Ados, beraz, ona da. 435 00:18:27,690 --> 00:18:32,290 >> Beraz, orain lotuta zerrenda bat dugu, eta niri utzi proposatu rol hori jokatu egingo dut 436 00:18:32,290 --> 00:18:35,110 PTR, beraz, ez dut kezkatu honen inguruan hornitutakoa. 437 00:18:35,110 --> 00:18:37,830 Eta gero, - norbaitek ergelak konbentzio - ezer honetan nahi duzun dei dezakezu - 438 00:18:37,830 --> 00:18:39,800 aurrekoak erakuslea, pred erakuslea - 439 00:18:39,800 --> 00:18:43,930 besterik ez da goitizena eman dugu Gure lagina nire ezkerreko kodea. 440 00:18:43,930 --> 00:18:47,240 Bestalde duten joan daiteke Conservación Nor dago jarraipena 441 00:18:47,240 --> 00:18:48,400 eszenatoki ondoren. 442 00:18:48,400 --> 00:18:52,390 >> Beraz, eman dezagun, lehenik eta behin, off pluck nahi dut txertatzeak lehen adibidea dela, esan 443 00:18:52,390 --> 00:18:54,330 20, zerrendan sartzeko. 444 00:18:54,330 --> 00:18:57,160 Beraz, norbait behar dut embody kopurua 20 guretzat. 445 00:18:57,160 --> 00:18:58,950 Beraz, behar dut norbait malloc ikusleek. 446 00:18:58,950 --> 00:18:59,380 Goazen gora. 447 00:18:59,380 --> 00:19:00,340 Zein da zure izena? 448 00:19:00,340 --> 00:19:01,300 >> Ikaslea: Brian. 449 00:19:01,300 --> 00:19:05,270 >> HIZLARIA: 1 Brian, eskubidea guztiak, beraz, Nodoaren duten 20 izango da. 450 00:19:05,270 --> 00:19:06,810 Ongi, zatoz hona. 451 00:19:06,810 --> 00:19:10,025 Eta jakina, non Brian sartzen ez? 452 00:19:10,025 --> 00:19:12,190 Beraz, erdian - benetan, Itxaron minutu bat. 453 00:19:12,190 --> 00:19:13,420 Honetan ari gara kanpo. 454 00:19:13,420 --> 00:19:17,170 Hau egiten ari gara asko gogorragoa behar baino lehen behar izango da. 455 00:19:17,170 --> 00:19:21,210 Ados, libre Brian goaz eta idazketa Brian bost gisa. 456 00:19:21,210 --> 00:19:23,680 >> Ados, eta, beraz, orain sartu nahi dugu Bost Brian. 457 00:19:23,680 --> 00:19:25,960 Beraz, zatoz hona ondoan Besterik gabe, une batez Ben. 458 00:19:25,960 --> 00:19:28,250 Eta zentzuzkoa dezakezu kontatu non istorio hau da joan. 459 00:19:28,250 --> 00:19:30,500 Baina dezagun uste arretaz buruz eragiketak ordena. 460 00:19:30,500 --> 00:19:32,880 Eta, hain zuzen da ikusmen honetan hori sortu line joan 461 00:19:32,880 --> 00:19:34,080 lagin kodea duten. 462 00:19:34,080 --> 00:19:40,120 Beraz, hemen PTR dut, hasieran, seinalatuz Ben ez da, berez, baina edozein dela ere at 463 00:19:40,120 --> 00:19:43,245 balioa, baditu zuen eta kasu honetan da - Zein da zure izena berriro? 464 00:19:43,245 --> 00:19:43,670 >> Ikaslea: Jason. 465 00:19:43,670 --> 00:19:47,350 >> HIZLARIA: 1 Jason, bai Ben eta ni dira, beraz, Jason at une honetan seinalatuz. 466 00:19:47,350 --> 00:19:49,700 Beraz, orain zehaztu nahi izan dut, non ez Brian sartzen zara? 467 00:19:49,700 --> 00:19:53,500 Gauza bakarra, beraz, sarbide daukat oraintxe bere n datuak elementua da. 468 00:19:53,500 --> 00:19:58,280 Beraz, begiratu dut, da Brian Jason baino gutxiago? 469 00:19:58,280 --> 00:19:59,770 Erantzuna ez da egia. 470 00:19:59,770 --> 00:20:03,680 >> Beraz, zer egin behar da orain gertatuko, zuzena izateko? 471 00:20:03,680 --> 00:20:07,120 Zenbat erakusleak eguneratu behar dut istorio honetan, guztira? 472 00:20:07,120 --> 00:20:10,720 Non dago nire eskua dago oraindik seinalatuz Jason, eta zure esku - nahi izanez gero 473 00:20:10,720 --> 00:20:12,930 jarri zure eskua bezala ordenatu, eta I ez dakit, galdera-marka bat. 474 00:20:12,930 --> 00:20:14,070 Ados, ona. 475 00:20:14,070 --> 00:20:15,670 >> Guztiak eskubidea, beraz, ez duzu gutxi hautagai bat. 476 00:20:15,670 --> 00:20:20,500 Bai Ben edo I edo Brian edo Jason edo, bestela, pertsona guztiei, eta horrek 477 00:20:20,500 --> 00:20:21,370 erakusleak behar aldatzeko? 478 00:20:21,370 --> 00:20:23,260 Nola guztira, asko? 479 00:20:23,260 --> 00:20:24,080 >> OK, beraz, bi. 480 00:20:24,080 --> 00:20:27,090 Nire erakuslea ez da benetan axola jada naiz dudalako aldi baterako. 481 00:20:27,090 --> 00:20:31,370 Beraz, bi mutil hauek da, ustez, Ben bai eta Brian. 482 00:20:31,370 --> 00:20:34,410 Hargatik niri proposatu eguneratu dugu Ben, geroztik izan zuen lehenengo. 483 00:20:34,410 --> 00:20:36,350 Zerrenda honen lehenengo elementua dago orain, Brian izango. 484 00:20:36,350 --> 00:20:38,070 Beraz, Ben Brian puntua. 485 00:20:38,070 --> 00:20:39,320 Ongi da, orain zer? 486 00:20:39,320 --> 00:20:41,950 487 00:20:41,950 --> 00:20:43,460 >> Nork nori at adierazi? 488 00:20:43,460 --> 00:20:44,710 >> Ikaslea: [INAUDIBLE]. 489 00:20:44,710 --> 00:20:46,180 >> HIZLARIA: 1 OK, beraz, Brian ditu to Jason puntua. 490 00:20:46,180 --> 00:20:48,360 Baina horren erakuslea pista galdu dut? 491 00:20:48,360 --> 00:20:49,980 Ez da non Jason ezagutzen dut? 492 00:20:49,980 --> 00:20:50,790 >> Ikaslea: [INAUDIBLE]. 493 00:20:50,790 --> 00:20:52,620 >> HIZLARIA: 1, egin dut geroztik I aldi baterako erakuslea. 494 00:20:52,620 --> 00:20:55,110 Eta, ustez, ez dut aldatu berriak nodo puntua. 495 00:20:55,110 --> 00:20:58,300 Beraz, besterik gabe, ezin dugu Brian puntua duenak at dut seinalatuz. 496 00:20:58,300 --> 00:20:59,000 Eta egiten ari gara. 497 00:20:59,000 --> 00:21:01,890 Kasu bat, bertan txertatzeko, beraz, zerrendaren hasiera-hasieratik. 498 00:21:01,890 --> 00:21:02,950 Baziren beste bi urrats. 499 00:21:02,950 --> 00:21:06,750 Ko, Ben eguneratu behar dugu, eta, ondoren, dugu Brian eguneratzeko. 500 00:21:06,750 --> 00:21:09,230 Eta gero, ez dut kezkatu gainerako zehar traipsing 501 00:21:09,230 --> 00:21:12,680 zerrenda, izan ere, dagoeneko aurkitu dugu, bere kokapena, delako izan da zuen 502 00:21:12,680 --> 00:21:14,080 lehenengo elementu utzi. 503 00:21:14,080 --> 00:21:15,400 >> Ondo da, beraz, nahiko erraza da. 504 00:21:15,400 --> 00:21:18,110 Izan ere, sentitzen gara ia bezala hori ere konplikatua egiteko. 505 00:21:18,110 --> 00:21:20,240 Hargatik, orain pluck off amaieran zerrendan, eta ikusi non 506 00:21:20,240 --> 00:21:21,380 konplexutasuna hasten da. 507 00:21:21,380 --> 00:21:24,560 Beraz, bada, esleipenen ikusleek dut. 508 00:21:24,560 --> 00:21:25,540 Edonork nahi 55 play? 509 00:21:25,540 --> 00:21:26,700 Ondo da, zure eskua ikusi nuen lehenengo. 510 00:21:26,700 --> 00:21:29,620 Goazen gora. 511 00:21:29,620 --> 00:21:30,030 Bai. 512 00:21:30,030 --> 00:21:31,177 Zein da zure izena? 513 00:21:31,177 --> 00:21:32,310 >> Ikaslea: [INAUDIBLE]. 514 00:21:32,310 --> 00:21:33,240 >> HIZLARIA: 1 Habata. 515 00:21:33,240 --> 00:21:33,890 Ados, zatoz gora. 516 00:21:33,890 --> 00:21:35,730 Kopurua 55 izango zara. 517 00:21:35,730 --> 00:21:37,820 Beraz, nola ez, duzu, sartzen zerrendaren amaieran. 518 00:21:37,820 --> 00:21:41,850 Hargatik errepikatzea simulazioa nirekin PTR izateagatik, besterik gabe, une batez. 519 00:21:41,850 --> 00:21:44,050 Beraz, lehenengo naiz amaitzen joan edozein dela ere Ben seinalatuz. 520 00:21:44,050 --> 00:21:45,900 Bai ari gara orain, Brian seinalatuz. 521 00:21:45,900 --> 00:21:48,420 55 Beraz, ez da bost baino gutxiago. 522 00:21:48,420 --> 00:21:52,510 Beraz, neure burua eguneratu nahi dut to Brian hurrengo erakuslea, seinalatzen duten 523 00:21:52,510 --> 00:21:54,450 Orain, noski Jason da. 524 00:21:54,450 --> 00:21:57,310 55 ez da bederatzi baino gutxiago, beraz, PTR eguneratzeko noa. 525 00:21:57,310 --> 00:21:58,890 PTR eguneratzeko noa. 526 00:21:58,890 --> 00:22:02,290 PTR eguneratu dut Joan PTR eguneratu behar dut. 527 00:22:02,290 --> 00:22:05,060 Eta dut - hmm, zer Zure izena berriro? 528 00:22:05,060 --> 00:22:05,560 >> Ikaslea: Diana. 529 00:22:05,560 --> 00:22:09,190 >> HIZLARIA 1: Diana apuntatzen da, noski, Bere ezkerreko eskuarekin null at. 530 00:22:09,190 --> 00:22:13,030 Beraz, ez du benetan Habata sartzen dira, argi eta garbi? 531 00:22:13,030 --> 00:22:15,050 Ezkerretara, hemen. 532 00:22:15,050 --> 00:22:19,460 Beraz, nola ez, bere jartzea Hemen ezagutzen dut Screwed dut uste dut. 533 00:22:19,460 --> 00:22:22,420 Zer da artea delako PTR Une honetan? 534 00:22:22,420 --> 00:22:23,240 NULL. 535 00:22:23,240 --> 00:22:25,580 Beraz, nahiz eta, ikusmen dezakegu ikusten, jakina, horiek guztiak 536 00:22:25,580 --> 00:22:26,610 Zuek hemen eszenatokian. 537 00:22:26,610 --> 00:22:29,680 Ez dut mantendu pista aurreko zerrendako pertsona. 538 00:22:29,680 --> 00:22:33,210 Ez dut hatz bat seinalatuz, Kasu honetan, nodo kopurua 34. 539 00:22:33,210 --> 00:22:34,760 >> Hargatik, benetan hasi honetan. 540 00:22:34,760 --> 00:22:37,560 Beraz, orain ez dut behar bat bigarren tokian tokiko aldagai. 541 00:22:37,560 --> 00:22:40,980 Eta hau da, zer ikusten dituzun ikusiko benetako lagina C kodea, non gisa joan nintzen, 542 00:22:40,980 --> 00:22:45,860 nire eskuineko eguneratu dut seinalatuko Jason eta, horrela, Brian atzean utzita, I 543 00:22:45,860 --> 00:22:51,440 hobeto hasteko nire ezkerreko erabiliz eguneratu non nengoen, beraz, joan nintzen 544 00:22:51,440 --> 00:22:52,700 zerrenda honen bidez - 545 00:22:52,700 --> 00:22:55,040 gehiago baldarki xedea baino Orain, hemen, ikusmen - 546 00:22:55,040 --> 00:22:56,740 To lortu dut zerrendaren bukaeran. 547 00:22:56,740 --> 00:23:00,020 >> Hau da, alde batetik, oraindik null, hau da, nahiko Ezertarako, beste batzuk baino adierazi 548 00:23:00,020 --> 00:23:02,980 Argi dut zerrendaren amaieran, baina, orain, gutxienez, hau daukat 549 00:23:02,980 --> 00:23:08,270 aurrekoak erakusleak hemen apuntatzen, beraz, orain zer eskuak eta zer esan behar 550 00:23:08,270 --> 00:23:10,150 eguneratu egin behar da? 551 00:23:10,150 --> 00:23:13,214 Norena da eskua nahi duzu birkonfiguratzeko lehen? 552 00:23:13,214 --> 00:23:15,190 >> Ikaslea: [INAUDIBLE]. 553 00:23:15,190 --> 00:23:16,220 >> HIZLARIA: 1 OK, Diana en, beraz. 554 00:23:16,220 --> 00:23:21,110 Nora egin nahi duzu seinalatu Diana en ezkerretara erakuslea at? 555 00:23:21,110 --> 00:23:23,620 55 egun, ustez, beraz, txertatuko dugu han. 556 00:23:23,620 --> 00:23:25,560 Eta non behar 55 erakuslea joan? 557 00:23:25,560 --> 00:23:27,000 Behera, null ordezkari. 558 00:23:27,000 --> 00:23:28,890 Eta nire eskuak, puntu honetan, ez axola ziren, besterik ez delako 559 00:23:28,890 --> 00:23:30,070 aldi baterako aldagaiak. 560 00:23:30,070 --> 00:23:31,030 Beraz, orain egiten ari gara. 561 00:23:31,030 --> 00:23:34,650 >> Osagarriak konplexutasuna beraz - eta ez da gogorra dela ezartzea, 562 00:23:34,650 --> 00:23:38,660 baina bigarren mailako aldagai egin behar dugu Ziur hori mugituko dut nire eskuineko aurretik 563 00:23:38,660 --> 00:23:42,140 Bestalde, nire ezker balioa eguneratu dut Bestalde, pred kasu honetan erakuslea, beraz, 564 00:23:42,140 --> 00:23:45,860 que tengo amaierako erakuslea segimendua egiteko, non nengoen ere. 565 00:23:45,860 --> 00:23:49,360 Orain, bat alde batera utzita ere, ari zaren hori izanez gero, pentsatzen bidez, hau da bezala sentitzen da 566 00:23:49,360 --> 00:23:51,490 txiki gogaikarriak mantendu dute honen ezkerreko jarraipena. 567 00:23:51,490 --> 00:23:54,015 >> Zer izango litzateke beste irtenbide bat arazo hau izan da? 568 00:23:54,015 --> 00:23:56,500 Lortu diren datuak diseinu nahi baduzu egitura hitz egiten ari gara 569 00:23:56,500 --> 00:23:59,630 oraintxe bidez? 570 00:23:59,630 --> 00:24:02,690 Hau bakarrik mota sentitzen pixka bat bada gogaikarriak, adibidez, bi erakusleak 571 00:24:02,690 --> 00:24:08,430 zerrendan, joan ezin izan duten beste dute, ezin hobea da munduan, mantendu 572 00:24:08,430 --> 00:24:10,160 informazioa behar dugu? 573 00:24:10,160 --> 00:24:11,360 Bai? 574 00:24:11,360 --> 00:24:12,610 >> Ikaslea: [INAUDIBLE]. 575 00:24:12,610 --> 00:24:15,160 576 00:24:15,160 --> 00:24:16,150 >> HIZLARIA: 1 Horixe. 577 00:24:16,150 --> 00:24:19,130 Eskubidea, beraz, ez da benetan interesgarria ideia baten ernamuina. 578 00:24:19,130 --> 00:24:22,470 Eta aurreko erakuslea ideia hau, aurreko elementu seinalatuz. 579 00:24:22,470 --> 00:24:25,580 Zer dut gauzatuz gero zerrenda beraren barruan? 580 00:24:25,580 --> 00:24:27,810 Eta zaila da ikusteko izango da joan honetan paper guztiak gabe 581 00:24:27,810 --> 00:24:28,830 lurrera erortzen. 582 00:24:28,830 --> 00:24:31,860 Baina demagun guys horiek biak erabiltzen bere eskuetan, aurreko bat izan 583 00:24:31,860 --> 00:24:35,950 erakusle eta hurrengo erakuslea eta, horrela, zer bat bider deitu dugu ezartzeko 584 00:24:35,950 --> 00:24:36,830 lotuta zerrenda. 585 00:24:36,830 --> 00:24:41,090 Hori atzeratzeko of me ordenatzeko aukera litzateke, askoz errazago me gabe, 586 00:24:41,090 --> 00:24:43,800 programatzaile, gorde beharrik jarraipena eskuz - 587 00:24:43,800 --> 00:24:44,980 benetan eskuz - 588 00:24:44,980 --> 00:24:47,280 non izan dut lehenago zerrendan. 589 00:24:47,280 --> 00:24:48,110 Beraz, ez dugu hori egiten. 590 00:24:48,110 --> 00:24:50,950 Keep it simple dizugu hori delako da prezio bat etorri, bi aldiz joan 591 00:24:50,950 --> 00:24:53,450 erakusleak espazio askoz, bigarren bat nahi baduzu. 592 00:24:53,450 --> 00:24:55,760 Baina hori da hain zuzen ere, ohikoa Datuen egitura gisa ezaguna 593 00:24:55,760 --> 00:24:57,410 bi aldiz lotuta zerrenda. 594 00:24:57,410 --> 00:25:01,310 >> Egin dezagun azken adibide eta hemen jarri beren miseria out mutil hauek. 595 00:25:01,310 --> 00:25:03,270 Malloc 20, beraz. 596 00:25:03,270 --> 00:25:05,320 Korridore du hortik gora etorri. 597 00:25:05,320 --> 00:25:06,280 Guztiak eskubidea, zein da zure izena? 598 00:25:06,280 --> 00:25:07,440 >> Ikaslea: [INAUDIBLE]. 599 00:25:07,440 --> 00:25:07,855 >> HIZLARIA 1: Barkatu? 600 00:25:07,855 --> 00:25:08,480 >> Ikaslea: [INAUDIBLE]. 601 00:25:08,480 --> 00:25:09,410 >> HIZLARIA: 1 Demeron? 602 00:25:09,410 --> 00:25:10,230 Ados sortu etorri. 603 00:25:10,230 --> 00:25:11,910 20 izan duzu izango. 604 00:25:11,910 --> 00:25:14,720 Jakina dira duzun joan 17 eta 22 artean dira. 605 00:25:14,720 --> 00:25:16,150 Beraz, nire ikasgaia ikasten me. 606 00:25:16,150 --> 00:25:18,150 Erakuslea hasi nahi dut Brian seinalatuz. 607 00:25:18,150 --> 00:25:21,190 Eta nire ezkerreko izan dut bakarrik to Brian eguneratzeko dut mugitu 608 00:25:21,190 --> 00:25:23,600 Jason, egiaztapena du 20 bederatzi baino gutxiago? 609 00:25:23,600 --> 00:25:24,060 N º 610 00:25:24,060 --> 00:25:25,430 20 17 baino gutxiago? 611 00:25:25,430 --> 00:25:25,880 N º 612 00:25:25,880 --> 00:25:27,450 20 22 baino gutxiago? 613 00:25:27,450 --> 00:25:28,440 Bai. 614 00:25:28,440 --> 00:25:34,070 Beraz, zer edo erakusleak eskuak behar aldatzeko non orain ari dira apuntatzen? 615 00:25:34,070 --> 00:25:37,070 >> Beraz, 17 egin dezakegun 20 seinalatuz. 616 00:25:37,070 --> 00:25:37,860 Beraz, hori da isuna. 617 00:25:37,860 --> 00:25:40,080 Nora egin nahi dugu, seinalatu Zure erakuslea da orain? 618 00:25:40,080 --> 00:25:41,330 22. 619 00:25:41,330 --> 00:25:45,410 22 eta non dagoen jakin dugu, berriro ere esker nire aldi baterako erakuslea. 620 00:25:45,410 --> 00:25:46,760 Ados, beraz, ez gara. 621 00:25:46,760 --> 00:25:49,440 Beraz, horregatik aldi baterako biltegiratze Mantendu dut pista non denek da. 622 00:25:49,440 --> 00:25:55,055 Eta, orain ikusmen dezakezu non sartu , kide zaren eta, orain, 1, 2, 3, behar dugu, 623 00:25:55,055 --> 00:25:58,410 4, 5, 6, 7, 8, 9, estresa pilotak, eta txalo Kopako for 624 00:25:58,410 --> 00:25:59,770 mutil hauek, ezin izan dugu gero. 625 00:25:59,770 --> 00:26:00,410 Nicely done. 626 00:26:00,410 --> 00:26:05,320 >> [Txaloak] 627 00:26:05,320 --> 00:26:06,330 >> HIZLARIA 1: Guztiak eskubidea. 628 00:26:06,330 --> 00:26:09,860 Eta piezak gorde dezakezu mementos paper gisa. 629 00:26:09,860 --> 00:26:15,930 >> Eskubidea, eta, beraz, konfiantza me asko da errazagoa dela ibiltzeko dituzten 630 00:26:15,930 --> 00:26:17,680 gizakiak kodea benetako baino da. 631 00:26:17,680 --> 00:26:22,690 Baina, zer besterik gabe, une batean aurkituko duzu gaur egun, bera dela - Oh, eskerrik asko. 632 00:26:22,690 --> 00:26:23,630 Eskerrik asko - 633 00:26:23,630 --> 00:26:29,360 da bera datuak duzula aurkituko egitura, lotuta zerrenda, benetan 634 00:26:29,360 --> 00:26:33,200 behar da, are gehiago, eraikin bloke gisa erabiltzen sofistikatua datuak egiturak. 635 00:26:33,200 --> 00:26:37,620 >> Eta konturatzen gehiegi gaia hemen da erabat sartu dugu gehiago 636 00:26:37,620 --> 00:26:40,060 ezartzeko sartu konplexutasuna algoritmo hau. 637 00:26:40,060 --> 00:26:43,940 Txertatzeko, eta horren bidez ginen bada, ezabatzeko eta bilaketak, txiki bat da 638 00:26:43,940 --> 00:26:46,660 baino gehiago konplikatuak array bat izan zen. 639 00:26:46,660 --> 00:26:48,040 Baina dinamismo batzuk irabazten dugu. 640 00:26:48,040 --> 00:26:50,180 Moldatzaile bat datuak egitura lortzen dugu. 641 00:26:50,180 --> 00:26:54,010 >> Baina, berriro, batzuk izatearen prezio bat ordaindu behar dugu osagarriak konplexutasuna, bai 642 00:26:54,010 --> 00:26:54,910 bertan ezartzeko. 643 00:26:54,910 --> 00:26:56,750 Eta gaude amore eman ausazko sarbidea. 644 00:26:56,750 --> 00:27:00,450 Eta egia esateko, ez da ez egokia batzuk garbitu diapositiba eman ahal dut 645 00:27:00,450 --> 00:27:03,120 dio hemen zergatik lotuta zerrenda bat da da array bat baino hobea da. 646 00:27:03,120 --> 00:27:04,100 Eta utzi hartan. 647 00:27:04,100 --> 00:27:07,520 Orain, gai reoccurring delako, nahiz eta are gehiago, datozen asteetan, da 648 00:27:07,520 --> 00:27:10,200 ez dagoela ez da, nahitaez, Erantzun zuzena da. 649 00:27:10,200 --> 00:27:13,830 >> Hori dela eta, aparteko ardatza dugu arazo multzo baten diseinua. 650 00:27:13,830 --> 00:27:17,700 Oso testuinguru sentikorra izango da nahi duzun datu hau erabili ahal izateko 651 00:27:17,700 --> 00:27:21,750 edo egitura bat, eta izango da mendeko zer axola dagokionez 652 00:27:21,750 --> 00:27:24,620 baliabideak eta konplexutasuna. 653 00:27:24,620 --> 00:27:28,830 >> Baina utzi niri proposatu datuak ezin hobea dela egitura, Santo Grial, litzateke 654 00:27:28,830 --> 00:27:32,200 zerbait etengabeko denbora da, kontuan hartu gabe zenbat gauza da 655 00:27:32,200 --> 00:27:36,940 Barruan, ez litzateke harrigarria izango da, bada, Datuen egitura itzuli erantzun 656 00:27:36,940 --> 00:27:37,920 etengabeko denbora. 657 00:27:37,920 --> 00:27:38,330 Bai. 658 00:27:38,330 --> 00:27:40,110 Hitz hau zure hiztegi erraldoia da. 659 00:27:40,110 --> 00:27:41,550 Edo ez, hitz hori ez da. 660 00:27:41,550 --> 00:27:43,270 Edo halako arazoa ez. 661 00:27:43,270 --> 00:27:46,360 Beno, ikus dezagun ezin dugu gutxienez bada hartzen duten norabidean urrats bat. 662 00:27:46,360 --> 00:27:50,190 >> Demagun berri bat datu-egitura proposatu dit gauza ezberdinak erabil daitezke, 663 00:27:50,190 --> 00:27:52,260 kasu honetan deitzen hash taula bat. 664 00:27:52,260 --> 00:27:55,590 Eta, beraz, benetan gara itzuli glancing array bat, kasu honetan, eta, 665 00:27:55,590 --> 00:28:00,550 zertxobait arbitrarioki, marrazten dut hau baten Ordena array gisa hash taula 666 00:28:00,550 --> 00:28:02,810 bi dimentsioko array - 667 00:28:02,810 --> 00:28:05,410 edo, hobeto ari irudikatuta hemen bi dimentsioko array - baina hori besterik ez da, 668 00:28:05,410 --> 00:28:10,770 baten tamaina 26 multzo, hala nola galtzen dugun deitu array mahaia, mahai-tarte 669 00:28:10,770 --> 00:28:12,440 zero goialdean laukizuzena da. 670 00:28:12,440 --> 00:28:15,090 Taula parentesi 25 laukizuzena behealdean. 671 00:28:15,090 --> 00:28:18,620 Eta hau da, datuak nola marraztu liteke I egitura eta bertan gorde nahi dut 672 00:28:18,620 --> 00:28:19,790 pertsonen izenak. 673 00:28:19,790 --> 00:28:24,370 >> Beraz, adibidez, eta ez dut marraztu gauza osoa hemen Buruak gainean, badut 674 00:28:24,370 --> 00:28:29,160 izan array honetan, orain ari naiz joan deitu hash taula bat, eta hau da, berriro ere 675 00:28:29,160 --> 00:28:31,360 kokapena zero. 676 00:28:31,360 --> 00:28:34,840 Hau da, hemen kokapena bat, eta abar. 677 00:28:34,840 --> 00:28:37,880 Nahi dut datu hau erabiltzea aldarrikatzen dut egitura, eztabaidak eztabaida egiteko, 678 00:28:37,880 --> 00:28:42,600 pertsonen izenak gordetzeko, Alice eta Bob eta Charlie eta beste batzuk, hala nola, izenak. 679 00:28:42,600 --> 00:28:46,110 Beraz, pentsa orain hasiera gisa , esan, hiztegi bat 680 00:28:46,110 --> 00:28:47,520 hitz asko. 681 00:28:47,520 --> 00:28:49,435 Izenak izan gertatuko dira Adibidez, gure hemen. 682 00:28:49,435 --> 00:28:52,560 Eta hau da, guztiak ere germane, agian, behar zuzentzaileari bat garatzen dugu 683 00:28:52,560 --> 00:28:54,400 Baliteke arazoa ezarritako sei. 684 00:28:54,400 --> 00:28:59,300 >> Beraz, bada, tamaina, guztira 26 sorta bat daukagu beraz, hau 25ean kokapena da 685 00:28:59,300 --> 00:29:03,390 behealdean, eta Alice dela aldarrikatzen dut hiztegiaren hitza lehenengo 686 00:29:03,390 --> 00:29:07,260 izenak nahi dut RAM txertatzeko, Datuen egitura honetan sartu da, non daude 687 00:29:07,260 --> 00:29:12,480 senak diozu Alice-en izena behar array honetan joan? 688 00:29:12,480 --> 00:29:13,510 >> 26 aukera ditugu. 689 00:29:13,510 --> 00:29:14,990 Non bere jarri nahi dugu? 690 00:29:14,990 --> 00:29:16,200 Bere nahi dugu tarte zero da, ezta? 691 00:29:16,200 --> 00:29:18,280 Alice A dezagun deitzen zero dela. 692 00:29:18,280 --> 00:29:20,110 Eta B bat izango da, eta C bi izango dira. 693 00:29:20,110 --> 00:29:22,600 Beraz, idatzi dugu Alice izena hemen. 694 00:29:22,600 --> 00:29:24,890 Ondoren, sartu bada Bob, bere izena hemen joango dira. 695 00:29:24,890 --> 00:29:27,280 Charlie hemen joango dira. 696 00:29:27,280 --> 00:29:30,500 Eta abarren bitartez behera Datuen egitura hau. 697 00:29:30,500 --> 00:29:32,090 >> Hau zoragarria da datu-egitura bat da. 698 00:29:32,090 --> 00:29:32,730 Zergatik? 699 00:29:32,730 --> 00:29:37,460 Beno zer exekutatzen denbora da giza baten izena sartu eta hau sartu 700 00:29:37,460 --> 00:29:39,850 Datuen egitura oraintxe? 701 00:29:39,850 --> 00:29:43,702 Emandako taula hori horrela, benetan, array gisa. 702 00:29:43,702 --> 00:29:44,940 Beno, etengabeko denbora da. 703 00:29:44,940 --> 00:29:45,800 Ko ordena da. 704 00:29:45,800 --> 00:29:46,360 Zergatik? 705 00:29:46,360 --> 00:29:48,630 >> Beno, nola ez duzu zehaztu Alice non pertenece? 706 00:29:48,630 --> 00:29:51,000 Itxura duen gutun bere izena honetan zaude? 707 00:29:51,000 --> 00:29:51,490 Lehen. 708 00:29:51,490 --> 00:29:54,350 Eta iritsi zaitezke, baina kate bat bada, besterik kate begira 709 00:29:54,350 --> 00:29:55,200 parentesi zero. 710 00:29:55,200 --> 00:29:57,110 Katearen zeroth pertsonaia beraz. 711 00:29:57,110 --> 00:29:57,610 Hori da erraza. 712 00:29:57,610 --> 00:30:00,350 Hori egin dugu kripto-en esleipena duela. 713 00:30:00,350 --> 00:30:05,310 Eta, ondoren, behin Alice horrek badakizu gutun da kapitala, kendu ahal izango dugu 714 00:30:05,310 --> 00:30:08,160 65 edo kapital bat bera off, ematen digu, zero. 715 00:30:08,160 --> 00:30:10,940 Beraz, gaur egun ezagutzen dugun Alice berea dela kokapena zero at. 716 00:30:10,940 --> 00:30:14,240 >> Eta emandako datu honen erakuslea egitura, nolabaiteko, zenbat irauten du 717 00:30:14,240 --> 00:30:18,840 Niri hartu kokapena aurkitzeko array batean zero? 718 00:30:18,840 --> 00:30:22,080 Just urrats bat, etengabeko denbora eskubidea da ausaz sarbidea dugulako 719 00:30:22,080 --> 00:30:23,780 proposatutako array baten ezaugarri bat izan zen. 720 00:30:23,780 --> 00:30:28,570 Beraz, azken finean, eta zer kalkulatzen indizea Alice izena da, hau da, urtean 721 00:30:28,570 --> 00:30:32,610 Kasu honetan, A da, edo, besterik gabe, horrek ebatzi zero da, non da B eta C 722 00:30:32,610 --> 00:30:34,900 bi, hori kalkulatzen out etengabeko denbora da. 723 00:30:34,900 --> 00:30:38,510 Izan dut bere lehenengo hizkia begiratu, out kalkulatzen non zero da 724 00:30:38,510 --> 00:30:40,460 array da, halaber, etengabeko denbora. 725 00:30:40,460 --> 00:30:42,140 Beraz, teknikoki hori bi urrats orain bezala. 726 00:30:42,140 --> 00:30:43,330 Baina oraindik ere, konstante. 727 00:30:43,330 --> 00:30:46,880 Beraz, bietako bat O big deitzen dugu, beraz, dugu txertatuko Alice taula honetan sartu 728 00:30:46,880 --> 00:30:48,440 etengabeko denbora. 729 00:30:48,440 --> 00:30:50,960 >> Baina, jakina, baloia dut inozoa hemen, ezta? 730 00:30:50,960 --> 00:30:53,240 Zer dago klase Aaron bat bada? 731 00:30:53,240 --> 00:30:53,990 Edo Alicia? 732 00:30:53,990 --> 00:30:57,230 Edo beste edozein izen honekin hasten A. Nora jarri dugu 733 00:30:57,230 --> 00:31:00,800 pertsona hori, ezta? 734 00:31:00,800 --> 00:31:03,420 Esan nahi dut, oraintxe bertan hiru mahai gainean, pertsonak, eta, beraz, agian dugu 735 00:31:03,420 --> 00:31:07,490 Aaron jarri behar kokapenean zero, bat, bi, hiru. 736 00:31:07,490 --> 00:31:09,480 >> Eskuin, bat atera nuen hemen. 737 00:31:09,480 --> 00:31:13,350 Baina gero, saiatu gara David txertatzeko hartuz gero zerrenda hau, non ez du David joan? 738 00:31:13,350 --> 00:31:15,170 Orain gure sistema hasten hausteko behera, eskuinera? 739 00:31:15,170 --> 00:31:19,210 Gaur egun, David bueltarik delako hemen Aaron da, benetan bada, hemen. 740 00:31:19,210 --> 00:31:23,060 Eta beraz, gaur egun bat izatea ideia osoa honetan garbi egitura datuak ematen dizkigun 741 00:31:23,060 --> 00:31:28,010 sarrerak etengabeko denbora ez da jada etengabeko denbora izan delako dut 742 00:31:28,010 --> 00:31:31,240 egiaztatzeko, oh, damnit, norbaitek dagoeneko Alice en kokapenean. 743 00:31:31,240 --> 00:31:35,320 >> Dezagun datu hau gainerako probarik egin me egitura, spot bat jarri bila 744 00:31:35,320 --> 00:31:37,130 Aaron bere izena bezala norbait. 745 00:31:37,130 --> 00:31:39,390 Eta, beraz, gehiegi da abiapuntua lineal denbora hartzeko. 746 00:31:39,390 --> 00:31:42,710 Gainera, gaur egun, nahi izanez gero aurkitzeko Datuen egitura honetan Aaron, eta zuk 747 00:31:42,710 --> 00:31:45,430 egiaztatzeko, eta Aaron bere izena ez da hemen. 748 00:31:45,430 --> 00:31:47,960 Ahal izanez gero, besterik gabe, esango zenuke Aaron en ez da datu-egituran. 749 00:31:47,960 --> 00:31:51,530 Baina egiten baduzu hasteko gela egiteko Aaron han izan behar D 750 00:31:51,530 --> 00:31:55,600 edo E, zu, kasurik okerrenean, egiaztatu dute osoa datuak egitura, en 751 00:31:55,600 --> 00:31:59,480 kasu devolves zerbait da taularen tamainan lineala. 752 00:31:59,480 --> 00:32:00,920 >> Eskubidea, beraz, hau konpondu dut. 753 00:32:00,920 --> 00:32:04,200 Arazoa da hemen izan nuen 26 array elementu hau. 754 00:32:04,200 --> 00:32:05,000 Demagun aldatu zidan. 755 00:32:05,000 --> 00:32:06,010 Whoops. 756 00:32:06,010 --> 00:32:10,600 Let me aldatu da, beraz, baizik eta izateko tamaina 26 guztira, nabarituko beheraino 757 00:32:10,600 --> 00:32:12,720 indize nahi n ken 1 aldatzen doaz. 758 00:32:12,720 --> 00:32:16,610 26 argi bada txikiegia gizakiak 'egiteko izenak, ez delako da, milaka eta milaka 759 00:32:16,610 --> 00:32:20,830 munduko izenak, dezagun, besterik gabe, egin 100 edo 1.000 edo 10.000 ziren. 760 00:32:20,830 --> 00:32:22,960 Dezagun, besterik gabe esleitu asko leku gehiago. 761 00:32:22,960 --> 00:32:27,230 >> Beno, horrek ez du zertan gutxiagotu probabilitatea izango dugula ez bi 762 00:32:27,230 --> 00:32:31,510 izenak dituzten pertsonak A hasita, eta beraz, bat jartzen saiatu ziren, zoaz 763 00:32:31,510 --> 00:32:33,120 at kokapena zero izenak oraindik. 764 00:32:33,120 --> 00:32:36,850 Oraindik dute talka gertatzen da, eta horrek esan behar dugu oraindik irtenbiderik jarri 765 00:32:36,850 --> 00:32:41,020 Alice eta Aaron eta Alicia eta beste izenak edonon A hasita. 766 00:32:41,020 --> 00:32:43,460 Baina zenbat arazo bat da hau? 767 00:32:43,460 --> 00:32:46,870 Zer da probabilitatea duzula datu batean talkak 768 00:32:46,870 --> 00:32:48,240 hau bezalako egitura? 769 00:32:48,240 --> 00:32:52,570 >> Beno, let me - itzuli gara Galdera hemen. 770 00:32:52,570 --> 00:32:55,530 Eta nola genezake begiratu konpontzeko lehen. 771 00:32:55,530 --> 00:32:58,480 Let me up tira, proposamen hau hemen. 772 00:32:58,480 --> 00:33:02,020 Zer deskribatzen dugu algoritmo bat da, izeneko lineal heuristiko bat 773 00:33:02,020 --> 00:33:05,030 Horren bidez, probak, saiatu sartu bada Hemen zerbait datuak honetan 774 00:33:05,030 --> 00:33:08,920 egitura, hau da, deitu hash taula bat, eta ez dago gela ez da ez, duzu 775 00:33:08,920 --> 00:33:12,000 benetan probarik datuak egitura egiaztatuz, hau da eskuragarri? 776 00:33:12,000 --> 00:33:13,430 Eskuragarri dago, hau da hau eskuragarri? 777 00:33:13,430 --> 00:33:13,980 Hau da eskuragarri? 778 00:33:13,980 --> 00:33:17,550 Eta noiz da azkenean, sartu izendatzeko jatorriz duzun xedea 779 00:33:17,550 --> 00:33:19,370 edonon kokapena hartan. 780 00:33:19,370 --> 00:33:23,360 Baina txarrena kasuan, bakarrik spot datu bukaerara izan liteke 781 00:33:23,360 --> 00:33:25,090 egitura, array amaiera oso. 782 00:33:25,090 --> 00:33:30,130 >> Beraz, lineal, probak txarrena kasuan, lineal bat algoritmoa sartu devolves non 783 00:33:30,130 --> 00:33:34,500 Aaron, gertatzen zen txertatuko dira azken bada Datu-egitura honetan, zuen agian 784 00:33:34,500 --> 00:33:39,540 Lehenengo kokapena talka, baina ondoren, zorte txarra by amaitzeko oso amaieran. 785 00:33:39,540 --> 00:33:43,940 Beraz, hori ez da konstante bat denbora santua Gurekin Grial. 786 00:33:43,940 --> 00:33:47,650 Honek elementu txertatu ikuspegi sartu Datuen egitura izeneko egiaztapena 787 00:33:47,650 --> 00:33:52,050 taula ez dirudi, etengabeko denbora izango da ez behintzat, oro har, gero. 788 00:33:52,050 --> 00:33:54,000 Zerbait lineal sartu ahal izango da devolve. 789 00:33:54,000 --> 00:33:56,970 >> Beraz, zer bada talkak konpontzen ditugu zertxobait ezberdinean? 790 00:33:56,970 --> 00:34:00,740 Beraz, hemen sofistikatuagoa da zer da oraindik ere hurbiltzen 791 00:34:00,740 --> 00:34:02,800 izeneko hash taula bat. 792 00:34:02,800 --> 00:34:05,890 Eta hash, bat alde batera utzita, zer gisa Indizea dela esan nahi dut 793 00:34:05,890 --> 00:34:07,070 Aipatu dut lehenago. 794 00:34:07,070 --> 00:34:09,810 Hash zerbait izan daiteke pentsatu aditz gisa. 795 00:34:09,810 --> 00:34:13,690 >> Beraz baduzu hash Alice izen bat da, hash funtzio bat, nolabait esateko, 796 00:34:13,690 --> 00:34:14,710 zenbaki bat itzuliko da. 797 00:34:14,710 --> 00:34:18,199 Kasu honetan zero egin zuen bada kokapena zero, bat bada zuen pertenece 798 00:34:18,199 --> 00:34:20,000 kokapena, eta abar. 799 00:34:20,000 --> 00:34:24,360 Nire hash funtzioa, beraz, beraz, orain arte izan super simple, bakarrik begira 800 00:34:24,360 --> 00:34:26,159 norbaiten izenean gutun lehen. 801 00:34:26,159 --> 00:34:29,090 Baina hash funtzio bat bezala hartzen du sarrera batzuk, datu-pieza bat 802 00:34:29,090 --> 00:34:30,210 string, int bat, edozein dela ere. 803 00:34:30,210 --> 00:34:32,239 Eta spits da normalean zenbaki bat. 804 00:34:32,239 --> 00:34:35,739 Eta zenbaki hori da, non datu datu elementu egitura batean pertenece 805 00:34:35,739 --> 00:34:37,800 ezaguna hemen hash taula gisa. 806 00:34:37,800 --> 00:34:41,400 >> Beraz, intuizioa, hau da, apur testuinguruan. 807 00:34:41,400 --> 00:34:44,170 Egia esan, hau da, adibide bat aipatuz inplikatuz urtebetetzeak, non 808 00:34:44,170 --> 00:34:46,850 asko bezala, izan liteke 31 hilabete egunetan. 809 00:34:46,850 --> 00:34:52,239 Baina zer pertsona hau erabaki talka gertatuz gero, zer egin? 810 00:34:52,239 --> 00:34:55,304 Testuinguru orain, baloia ez talka baten izenak, baina urtebetetzeak talka bat, 811 00:34:55,304 --> 00:35:00,760 bi pertsona bera dute urtebetetzea bada an Urriaren 2an, adibidez. 812 00:35:00,760 --> 00:35:02,120 >> Ikaslea: [INAUDIBLE]. 813 00:35:02,120 --> 00:35:05,010 >> HIZLARIA 1: Bai, hemen dugu zerrendak lotuta aprobetxatuz. 814 00:35:05,010 --> 00:35:07,830 Beraz, apur bat badirudi modu ezberdinean zirenak baino lehenagokoak dugu. 815 00:35:07,830 --> 00:35:10,790 Baina array bat agertzen dugu Ezkerreko aldean. 816 00:35:10,790 --> 00:35:13,230 Indize bat da, ez da bereziki arrazoiak. 817 00:35:13,230 --> 00:35:14,630 Baina oraindik array bat. 818 00:35:14,630 --> 00:35:16,160 Erakusleak sorta bat da. 819 00:35:16,160 --> 00:35:20,670 Eta elementu horietako bakoitzak, bakoitzaren zirkulu horiek edo barrak - barra du 820 00:35:20,670 --> 00:35:23,970 ordezkari nulua - horietako bakoitzean erakusle da itxuraz to seinalatuz 821 00:35:23,970 --> 00:35:25,730 Datuen egitura eta zer? 822 00:35:25,730 --> 00:35:26,890 Lotuta zerrenda. 823 00:35:26,890 --> 00:35:30,530 >> Beraz, orain gaitasuna daukagu gure programa bihurtu kodea gogorra 824 00:35:30,530 --> 00:35:32,010 taula tamaina. 825 00:35:32,010 --> 00:35:35,360 Kasu horretan, ez da inoiz jakin dugu baino gehiago 31 egun, hilabete bat. 826 00:35:35,360 --> 00:35:38,480 Hain zaila 31 bezalako balio bat da kodeketa Testuinguru horretan, arrazoizkoa. 827 00:35:38,480 --> 00:35:42,700 Izenak testuinguruan, gogor kodeketa 26 ez da unreasonable da pertsonen 828 00:35:42,700 --> 00:35:46,340 izenak bakarrik Hasteko, adibidez, alfabetoaren A inplikatuz Z. bidez 829 00:35:46,340 --> 00:35:50,180 >> Denak CRAM dezakegu datuak sartu egitura hain luze, denean bat lortuko dugu 830 00:35:50,180 --> 00:35:55,330 talka, ez dugu jarri izenak hemen, zelula horien ordez pentsatzen dugu? 831 00:35:55,330 --> 00:36:00,270 kateak ez du bere burua, baina gisa da, esate baterako, Alice erakusleak. 832 00:36:00,270 --> 00:36:03,660 Eta, ondoren, Alice erakuslea beste bat izan daiteke, izen batekin hasten 833 00:36:03,660 --> 00:36:06,150 A. Eta Bob benetan doa hona. 834 00:36:06,150 --> 00:36:10,850 >> Eta ez beste izen bat hasten bada B, eta ondorioz sortu zen hemen. 835 00:36:10,850 --> 00:36:15,070 Eta beraz, elementu bakoitzaren taulan bi, diseinatu badugu, hau 836 00:36:15,070 --> 00:36:17,350 little more cleverly - 837 00:36:17,350 --> 00:36:18,125 goazen - 838 00:36:18,125 --> 00:36:22,950 diseinatu dugu, apur bat gehiago baldin bada cleverly, orain bihurtzen moldatzaile datuak bat 839 00:36:22,950 --> 00:36:27,720 egitura, han gogor muga ez da zenbat elementu txertatu dezakezu 840 00:36:27,720 --> 00:36:30,700 bertan egiten baduzu duelako talka bat, hori da isuna. 841 00:36:30,700 --> 00:36:34,690 Just joan aurretik, eta erantsi zer pixka bat duela ikusi genuen 842 00:36:34,690 --> 00:36:38,290 lotuta zerrenda gisa ezagutzen da. 843 00:36:38,290 --> 00:36:39,690 >> Beno dezagun pausa une bat besterik ez da. 844 00:36:39,690 --> 00:36:42,570 Zer talka probabilitatea da lehenik? 845 00:36:42,570 --> 00:36:45,480 Eskubidea, agian baino gehiago ari naiz pentsatzen agian Naiz arazo hau ingeniaritza baino gehiago dut, 846 00:36:45,480 --> 00:36:46,370 badakizu zer delako? 847 00:36:46,370 --> 00:36:49,070 Bai, etorri ahal izango dut arbitrario Off nire burua goiko adibide bezala 848 00:36:49,070 --> 00:36:52,870 Allison eta Aaron, baina, egia esan, Emandako uniformea ​​banaketa 849 00:36:52,870 --> 00:36:56,990 sarrera, hau da, ausazko sarrerak batzuk Datuen egitura batean sartzen da, zer da benetan 850 00:36:56,990 --> 00:36:58,580 talka probabilitatea? 851 00:36:58,580 --> 00:37:01,670 Beno bihurtzen da, egia da, super altua. 852 00:37:01,670 --> 00:37:03,850 Let me orokortu honetan Arazo hau da. 853 00:37:03,850 --> 00:37:08,890 >> Beraz n gela batean CS50 ikasleek, zer probabilitatea gutxienez 854 00:37:08,890 --> 00:37:11,010 bi gela ikasleak berdina urtebetetzea? 855 00:37:11,010 --> 00:37:13,346 Beraz, ez da egiten. gutxi batzuk hund - 856 00:37:13,346 --> 00:37:16,790 200, 300 pertsona eta hemen hainbat ehun etxean, gaur egun jendea. 857 00:37:16,790 --> 00:37:20,670 Beraz, bada, geure buruari galdetu behar zer nahi duzu bi pertsona probabilitatea 858 00:37:20,670 --> 00:37:23,930 gela berean urtebetetzea izatea, hori irudikatu ahal izango dugu. 859 00:37:23,930 --> 00:37:26,250 Eta benetan erreklamatzeko dut bi bereko urtebetetzea dute. 860 00:37:26,250 --> 00:37:29,560 >> Esate baterako, ez du inor izan urtebetetzea gaur? 861 00:37:29,560 --> 00:37:31,340 Atzo? 862 00:37:31,340 --> 00:37:32,590 Bihar? 863 00:37:32,590 --> 00:37:35,980 Ondo da, beraz banoa bezala sentitzen da 363 hau edo hori egiteko gehiago dute 864 00:37:35,980 --> 00:37:39,500 aldiz benetan irudikatu Hala bada dute talka. 865 00:37:39,500 --> 00:37:42,350 Edo, besterik ezin dugu egin, matematikoki baizik tediously baino 866 00:37:42,350 --> 00:37:43,200 hau egiteko. 867 00:37:43,200 --> 00:37:44,500 Proposatu eta honako hau. 868 00:37:44,500 --> 00:37:48,740 >> Beraz, hori ezin dugu eredua proposatzen dut bi pertsona izatea probabilitatea 869 00:37:48,740 --> 00:37:55,320 1 probabilitatea urtebetetzea gisa berean ken bat ez izatearen probabilitatea 870 00:37:55,320 --> 00:37:56,290 berean urtebetetzea. 871 00:37:56,290 --> 00:37:59,960 Beraz, hori lortzeko, eta, hori besterik ez da Fancy hau idazteko modu bat, egiteko 872 00:37:59,960 --> 00:38:03,090 aretoan, lehenengo pertsonan, berak posible bat da edozein izan daiteke, 873 00:38:03,090 --> 00:38:07,370 urtebetetzeak 365 egun suposatuz urtean, pertsonen apologies batekin 874 00:38:07,370 --> 00:38:08,760 Otsailaren 29an, urtebetetzea. 875 00:38:08,760 --> 00:38:13,470 >> Beraz, gela honetan lehen pertsonan doakoa da urtebetetzeak kopurua alguna 876 00:38:13,470 --> 00:38:18,280 365 dira, aukera hori, beraz, egiten duten 365 banatzen dugu 365, 877 00:38:18,280 --> 00:38:18,990 bat da. 878 00:38:18,990 --> 00:38:22,700 Gelan pertsona ondoan, helburua bada da talka saihesteko, soilik 879 00:38:22,700 --> 00:38:26,460 izan du bere urtebetetzea nola hainbat egun posible? 880 00:38:26,460 --> 00:38:27,610 364. 881 00:38:27,610 --> 00:38:31,430 Beraz, adierazpen hau terminoa da bigarrena funtsean, matematika egiten duten Gurekin 882 00:38:31,430 --> 00:38:33,460 Off kenduz bat posible da egunez. 883 00:38:33,460 --> 00:38:36,390 Eta gero, hurrengo egunean, hurrengo egunean, eta hurrengo behera kopuru osoaren eguna 884 00:38:36,390 --> 00:38:38,100 gelan pertsona. 885 00:38:38,100 --> 00:38:41,290 >> Dugu, eta, ondoren, uste baduzu, orduan, zer da guztiek ez izatearen probabilitatea 886 00:38:41,290 --> 00:38:45,265 berezia urtebetetzeak, baina berriro ken 1 duten, zer gara adierazpena da 887 00:38:45,265 --> 00:38:47,810 hori oso fancifully itxura hau. 888 00:38:47,810 --> 00:38:50,330 Baina interesgarria da bisualki begiratu. 889 00:38:50,330 --> 00:38:55,120 Hau taula bat, non x ardatzean da pertsonen kopurua, gela batean, 890 00:38:55,120 --> 00:38:56,180 urtebetetzeak kopurua. 891 00:38:56,180 --> 00:38:59,840 Y ardatzean probabilitatea da talka bat, bi pertsona 892 00:38:59,840 --> 00:39:01,230 urtebetetzea berdinak izatea. 893 00:39:01,230 --> 00:39:05,020 >> Eta kurba honetatik aurrera eramateko da bezain laster, 40 lortu nahi duzula 894 00:39:05,020 --> 00:39:11,110 ikasleek, sortu bazara% 90eko probabilitatea at combinatorically bi 895 00:39:11,110 --> 00:39:13,550 pertsona edo gehiago izatea, berean urtebetetzea. 896 00:39:13,550 --> 00:39:18,600 Eta behin 58 pertsona da lortu nahi duzun ia 100 aukera bat, bi,% 897 00:39:18,600 --> 00:39:21,310 gelan Jendeak dute joan urtebetetzea berean, nahiz eta ez dago 898 00:39:21,310 --> 00:39:26,650 365 edo 366 posible kuboak, eta bakarrik 58 gela dute. 899 00:39:26,650 --> 00:39:29,900 Just estatistikoki litekeena bazara talkak lortzeko, eta horrek, azken finean 900 00:39:29,900 --> 00:39:31,810 eztabaida hau motibatzen. 901 00:39:31,810 --> 00:39:35,890 Nahiz eta hori Fancy dugu hemen, eta hasteko kateak horiek izatea, eta oraindik ari gara 902 00:39:35,890 --> 00:39:36,950 talka izan da. 903 00:39:36,950 --> 00:39:42,710 >> Beraz, galdera da begs, zer da sarrerak eta ezabatzeak egiteko kostua 904 00:39:42,710 --> 00:39:44,850 hau bezalako egitura datuak bihurtu? 905 00:39:44,850 --> 00:39:46,630 Beno dit proposatuko - 906 00:39:46,630 --> 00:39:51,570 eta utzi atzera me pantaila baino gehiago Hemen - dugu elementu galtzen n 907 00:39:51,570 --> 00:39:56,330 zerrenda, eta, beraz ari gara txertatzen saiatzean n elementu, eta dugun 908 00:39:56,330 --> 00:39:58,050 zenbat osoaren ontziak? 909 00:39:58,050 --> 00:40:03,450 Demagun guztira 31 ontzi urtebetetzeak kasuan. 910 00:40:03,450 --> 00:40:09,240 Zer ko gehienezko luzera da kateak hauek potentzialki du? 911 00:40:09,240 --> 00:40:12,670 >> 31 berriro ez da posible bada batean emandako hilabete urtebetetzeak. 912 00:40:12,670 --> 00:40:14,580 Eta besterik ez gara guztion clumping - 913 00:40:14,580 --> 00:40:15,580 benetan duten ergelak adibide bat da. 914 00:40:15,580 --> 00:40:16,960 Egin dezagun 26 ordez. 915 00:40:16,960 --> 00:40:20,890 Hala bada, benetan izan duten pertsonen izenak Z bidez hasiko da, eta, beraz, uzten 916 00:40:20,890 --> 00:40:22,780 aukerak 26 digu. 917 00:40:22,780 --> 00:40:25,920 Eta datu-egitura bat erabiltzen ari garen bezala Batetik, ikusi besterik ez dugu, horregatik dugu 918 00:40:25,920 --> 00:40:30,210 erakusle bat array, eta horietako bakoitzean bati lotuta zerrenda, puntu 919 00:40:30,210 --> 00:40:32,360 Lehenengo zerrenda guztiontzat izena Alice batera. 920 00:40:32,360 --> 00:40:35,770 Bigarren zerrendan behin egiten da Izen bat hasita, hasita 921 00:40:35,770 --> 00:40:36,980 B, eta abar. 922 00:40:36,980 --> 00:40:41,020 >> Zer bakoitzaren iraupena, litekeena da dutenen zerrendak onartzen dugu nice garbi bat bada 923 00:40:41,020 --> 00:40:45,410 A Z bitartez izen-banaketa Datu-egitura osoan zehar? 924 00:40:45,410 --> 00:40:50,210 Ez n datuak egitura pertsona 26 banatzen ari dira nicely bada 925 00:40:50,210 --> 00:40:52,110 hedatzen osoan Datuen egitura. 926 00:40:52,110 --> 00:40:54,970 Horietako bakoitzaren iraupena, beraz, kateak N 26 arabera banatuta. 927 00:40:54,970 --> 00:40:57,380 Baina O big idazkera, zer da hori? 928 00:40:57,380 --> 00:41:00,100 929 00:41:00,100 --> 00:41:02,440 Zer da benetan? 930 00:41:02,440 --> 00:41:04,150 Beraz, benetan besterik n, ezta? 931 00:41:04,150 --> 00:41:06,620 Dugu iraganean delako esan, ugh haustura 26 duzu. 932 00:41:06,620 --> 00:41:08,710 Bai, egia esan azkarragoa da. 933 00:41:08,710 --> 00:41:12,720 Baina teorian, ez da, funtsean, azkarrago duten guztiak. 934 00:41:12,720 --> 00:41:16,040 >> Beraz, ez dugu askoz ere, badirudi hori guztia izateko to Santo Grial hau hurbilago. 935 00:41:16,040 --> 00:41:17,750 Izan ere, hau da, besterik gabe, denbora lineala da. 936 00:41:17,750 --> 00:41:20,790 Arraioa, puntu honetan, zergatik ez dugu erabili handi bat lotuta dago zerrendan? 937 00:41:20,790 --> 00:41:23,510 Zergatik ez erabili besterik ez dugu erraldoi bat array izen gordetzeko 938 00:41:23,510 --> 00:41:25,010 gela guztiek? 939 00:41:25,010 --> 00:41:28,280 Beno, hor dago oraindik ere, zerbait hash taula bat sinesgarria buruz? 940 00:41:28,280 --> 00:41:30,810 Hor dago, oraindik ere, zerbait sinesgarria datu-egitura baten inguruan 941 00:41:30,810 --> 00:41:33,940 duten itxura hau? 942 00:41:33,940 --> 00:41:35,182 . Honetan 943 00:41:35,182 --> 00:41:37,050 >> Ikaslea: [INAUDIBLE]. 944 00:41:37,050 --> 00:41:39,840 >> HIZLARIA: 1 Eskuin, eta berriro bada, besterik ez da denbora lineal batean bildu, eta 945 00:41:39,840 --> 00:41:42,780 lineal denbora egitura, zergatik ez dut besterik gorde guztion izen handi batean 946 00:41:42,780 --> 00:41:44,210 array, edo handi bat lotuta dago zerrendan? 947 00:41:44,210 --> 00:41:47,010 Eta gelditzeko CS egiten, beraz, askoz zailagoa behar baino gehiago izango da? 948 00:41:47,010 --> 00:41:49,600 949 00:41:49,600 --> 00:41:53,190 Zer da hau buruzko sinesgarria, are urratzen dut, nahiz kanpoan? 950 00:41:53,190 --> 00:41:54,930 >> Ikaslea: [INAUDIBLE]. 951 00:41:54,930 --> 00:41:57,040 >> HIZLARIA: 1 sarrerak ez dira? 952 00:41:57,040 --> 00:41:58,140 Garestia izango. 953 00:41:58,140 --> 00:42:03,390 Beraz, sarrerak potentzialki Could oraindik etengabeko denbora izango da, nahiz eta zure datuak 954 00:42:03,390 --> 00:42:07,910 egitura honen itxura, array baten erakusleak, eta horietako bakoitzak da seinalatuz 955 00:42:07,910 --> 00:42:09,550 potentzialki loturiko zerrenda bat. 956 00:42:09,550 --> 00:42:15,220 Nola liteke etengabeko lortzeko denbora izenak txertatzeko? 957 00:42:15,220 --> 00:42:16,280 Itsasten du aurrean, ezta? 958 00:42:16,280 --> 00:42:19,290 >> Sakrifikatu dugu, diseinuaren helburu bat bada lehenago, non gorde nahi izan dugu, 959 00:42:19,290 --> 00:42:22,650 guztion izenean, adibidez, ordenatuta, edo etapa zenbaki guztiak ordenatuta, 960 00:42:22,650 --> 00:42:25,020 Suposatzen dugula bat Sailkatu lotuta zerrenda. 961 00:42:25,020 --> 00:42:29,960 Besterik ez zaizu kostatuko gurekin bat edo bi urrats, Ben eta Brian kasuan bezala 962 00:42:29,960 --> 00:42:32,750 lehenago, elementu bat txertatzeko at zerrendaren hasiera-hasieratik. 963 00:42:32,750 --> 00:42:36,090 Beraz, bada, ez dugu guztiak ordenatzeko zaintzeko izenak hasita A edo guztiak 964 00:42:36,090 --> 00:42:39,660 izenak B hasita, oraindik ere lortzeko, etengabeko denbora txertatzeko. 965 00:42:39,660 --> 00:42:43,900 Orain begira Alice edo Bob edo izena edozein oro har, gehiago da oraindik, eta zer? 966 00:42:43,900 --> 00:42:48,100 Big n O 26 arabera banatzen da, eta hasi da ideal kasuan, non guztion uniformeki 967 00:42:48,100 --> 00:42:51,190 banatzen da, han asko da, A-ren daude Z horrek, hau da, ziurrenik gisa 968 00:42:51,190 --> 00:42:52,220 unrealistic. 969 00:42:52,220 --> 00:42:53,880 Baina oraindik ere, lineala. 970 00:42:53,880 --> 00:42:57,120 >> Baina, hemen, itzuliko gara puntu idazkera asymptotic izatearen 971 00:42:57,120 --> 00:42:58,600 teorikoki egia. 972 00:42:58,600 --> 00:43:02,960 Baina mundu errealean, erreklamatzeko galtzen dut nire programa zerbait 26 aldiz egin dezakezu 973 00:43:02,960 --> 00:43:06,210 zurea, eta bere programa baino azkarrago dira joan erabiliz nahiago duzu? 974 00:43:06,210 --> 00:43:09,660 Zurea edo nirea, eta horrek da 26 aldiz azkarragoa? 975 00:43:09,660 --> 00:43:14,320 Errealistan, pertsonaren 26 da aldiz azkarragoa da, nahiz eta teorian bada 976 00:43:14,320 --> 00:43:18,790 gure algoritmoak berean exekutatu asymptotic denbora exekutatzen. 977 00:43:18,790 --> 00:43:20,940 >> Let desberdin bat proposatu zidan irtenbide elkarrekin. 978 00:43:20,940 --> 00:43:24,380 Eta hau ez bada putz zure kontuan, ari gara datuak egiturak. 979 00:43:24,380 --> 00:43:27,420 Beraz, hau da trie bat - 980 00:43:27,420 --> 00:43:28,520 ergel bat izen mota. 981 00:43:28,520 --> 00:43:32,880 Dator jaitsieren ondorio da, eta hitza ondo idatzita trie, t-r-i-e, delako 982 00:43:32,880 --> 00:43:34,450 Ikastaro berreskuratze trie bezalako soinuak. 983 00:43:34,450 --> 00:43:36,580 Baina hori historia da hitza trie du. 984 00:43:36,580 --> 00:43:40,980 >> Beraz trie bat da, hain zuzen ere, zuhaitz mota batzuk, eta, gainera, ez da hitz joko bat. 985 00:43:40,980 --> 00:43:46,330 Eta nahiz eta ezin duzu ikusi nahiko bistaratzea, hau da, trie bat da 986 00:43:46,330 --> 00:43:50,790 zuhaitza egituratuta, familia zuhaitz bat bezala Gehien bat, eta asko at arbaso 987 00:43:50,790 --> 00:43:54,530 bilobak eta handia biloben behean gisa uzten. 988 00:43:54,530 --> 00:43:58,100 Baina trie bat nodo bakoitzean array bat da. 989 00:43:58,100 --> 00:44:00,680 Eta array bat da - eta dezagun une batez oversimplify - oso bat 990 00:44:00,680 --> 00:44:04,600 array, kasu honetan, tamaina 26, non nodo bakoitzean berriro tamaina sorta bat da 991 00:44:04,600 --> 00:44:09,000 26, non duten elementu zeroth du array bat adierazten du, eta azken 992 00:44:09,000 --> 00:44:11,810 hala nola, bakoitza elementu array adierazten Z. 993 00:44:11,810 --> 00:44:15,520 >> Beraz, proposatzen dut, gero, datu hori egitura, trie bat bezala ezagutzen, ezin izango 994 00:44:15,520 --> 00:44:17,600 Gainera, hitz gordetzeko. 995 00:44:17,600 --> 00:44:21,740 Une bat duela ikusi dugu nola gorde izan dugu hitz, izen edo kasu honetan, eta guk 996 00:44:21,740 --> 00:44:25,440 lehenago ikusi nola zenbakiak gorde ahal izango dugu, baina izen edo kateak ikuspegia ematen badiogu 997 00:44:25,440 --> 00:44:27,460 Hemen, nabarituko zer interesgarria. 998 00:44:27,460 --> 00:44:32,210 Izena Maxwell dela aldarrikatzen dut Datu egitura honen barruan. 999 00:44:32,210 --> 00:44:33,730 Non Maxwell ikusten duzu? 1000 00:44:33,730 --> 00:44:35,140 >> Ikaslea: [INAUDIBLE]. 1001 00:44:35,140 --> 00:44:36,240 >> HIZLARIA: 1 ezkerrean. 1002 00:44:36,240 --> 00:44:39,910 Beraz, zer da hori duen datu interesgarri egitura baizik dendan baino 1003 00:44:39,910 --> 00:44:46,200 katea M-A-X-W-E-L-L backslash zero guztiak contiguously, zer egin duzu ordez 1004 00:44:46,200 --> 00:44:46,890 jarraitzen ari da. 1005 00:44:46,890 --> 00:44:50,510 Datu egitura bezala trie bat bada, eta horren nodo bakoitzean berriro array bat, 1006 00:44:50,510 --> 00:44:54,650 Maxwell eta gorde nahi duzun lehenengo indizea, eta, beraz, erro-nodoa du, beraz, 1007 00:44:54,650 --> 00:44:57,810 , hitz egiteko lehenbiziko nodoak, kokapena M, eskuinera, beraz, at 1008 00:44:57,810 --> 00:44:59,160 gutxi gorabehera erdi-erdian sartu. 1009 00:44:59,160 --> 00:45:03,740 Eta gero, hortik aurrera, jarraitu duzu Umearen nodo bat erakuslea, nolabait esateko. 1010 00:45:03,740 --> 00:45:06,150 Beraz, familia zuhaitz zentzu, jarraitu duzu beheranzko. 1011 00:45:06,150 --> 00:45:09,030 Eta eramaten zaitu beste nodo Ezkerraldean dago, hau da, on 1012 00:45:09,030 --> 00:45:10,540 besterik array bat. 1013 00:45:10,540 --> 00:45:14,710 >> Eta, ondoren, nahi duzun Maxwell gorde nahi izanez gero, erakuslea dela adierazten aurkituko duzu 1014 00:45:14,710 --> 00:45:16,430 Bat, hau da, hemen. 1015 00:45:16,430 --> 00:45:17,840 Gero, joan hurrengo nodoak duzu. 1016 00:45:17,840 --> 00:45:20,100 Eta abisua - horregatik irudi horrek apur bat engainatzen - 1017 00:45:20,100 --> 00:45:21,990 nodo hau begiratzen super txiki-txiki. 1018 00:45:21,990 --> 00:45:26,050 Baina honen eskubidea Y eta Z. da Honez besterik ez du egileak moztu egin du 1019 00:45:26,050 --> 00:45:27,630 argazki zu benetan gauzak. 1020 00:45:27,630 --> 00:45:30,400 Bestela irudi hau izugarri zabala izango litzateke. 1021 00:45:30,400 --> 00:45:36,180 Beraz, orain indizea kokapena X sartu eta, ondoren, W, E Ondoren, orduan L, orduan L. Orduan, zer 1022 00:45:36,180 --> 00:45:37,380 jakin-mina da hau? 1023 00:45:37,380 --> 00:45:41,250 >> Beno, ari gara berri-mota hau erabiliz gero hartzen nola kate bat gordetzeko batean 1024 00:45:41,250 --> 00:45:44,500 Datuen egitura, oraindik ere, behar duzu funtsean, egiaztatu off datuen 1025 00:45:44,500 --> 00:45:47,250 egitura, hitz baten amaiera hemen. 1026 00:45:47,250 --> 00:45:50,830 Alegia, nodo horietako bakoitzean nolabait esateko, ez du gogoratzen dugu hori 1027 00:45:50,830 --> 00:45:53,500 benetan jarraitu erakusleak horiek guztiak dira, eta pixka bat utzi 1028 00:45:53,500 --> 00:45:58,370 ogia behean hemen honen mamia at egitura M-A-X-W-E-L-L adierazi behar da 1029 00:45:58,370 --> 00:46:00,230 hain zuzen ere, datu egitura honetan. 1030 00:46:00,230 --> 00:46:02,040 >> Beraz, hori egin dezakegu, honela. 1031 00:46:02,040 --> 00:46:06,810 Irudian dugu nodo bakoitzean zerra bat du, tamaina 27 sorta bat. 1032 00:46:06,810 --> 00:46:10,550 Eta, orain dela 27 p girotutako sei delako, benetan dugu emango dizu Komatxo bat, 1033 00:46:10,550 --> 00:46:13,590 beraz, O'Reilly izenak izan dezakegu apostrophes eta beste batzuk. 1034 00:46:13,590 --> 00:46:14,820 Baina ideia bera. 1035 00:46:14,820 --> 00:46:17,710 Elementu horietako bakoitzaren array egitura bat puntu 1036 00:46:17,710 --> 00:46:19,320 nodoa da, beraz nodo bat. 1037 00:46:19,320 --> 00:46:21,430 Beraz, hau da, oso gogora gure zerrendan lotuta dago. 1038 00:46:21,430 --> 00:46:24,550 >> Eta, ondoren, boolear bat daukat, eta hori dut deitzeko hitza, hau da, besterik gabe, izango da 1039 00:46:24,550 --> 00:46:29,120 egia bada hitz bat honetan amaitzen da Zuhaitz nodo. 1040 00:46:29,120 --> 00:46:32,870 Eraginkortasunez adierazten ditu gutxi triangelu une bat duela ikusi dugu. 1041 00:46:32,870 --> 00:46:37,190 Beraz, bada hitz bat nodo hori amaitzen Zuhaitz, hitza eremu hori egia izango da, 1042 00:46:37,190 --> 00:46:41,990 hau da, kontzeptualki off egiaztatuz, edo, hiruki hau marrazten ari gara, bai, han 1043 00:46:41,990 --> 00:46:44,080 Hitz bat da hemen. 1044 00:46:44,080 --> 00:46:45,120 >> Beraz, hau trie da. 1045 00:46:45,120 --> 00:46:48,540 Eta orain, galdera da, zer da bere iraupena? 1046 00:46:48,540 --> 00:46:49,930 Da big n O? 1047 00:46:49,930 --> 00:46:51,410 Zerbait gehiago da? 1048 00:46:51,410 --> 00:46:57,330 Beno, zuk izen n datuak honetan egitura, Maxwell bat besterik ez izatea 1049 00:46:57,330 --> 00:47:02,330 horiek, zer exekutatzen denbora da edo txertatu Maxwell aurkitzeko? 1050 00:47:02,330 --> 00:47:06,230 1051 00:47:06,230 --> 00:47:09,050 Zer exekutatzen denbora da Maxwell sartzen? 1052 00:47:09,050 --> 00:47:11,740 N ez da beste izen bada jada taulan? 1053 00:47:11,740 --> 00:47:12,507 Bai? 1054 00:47:12,507 --> 00:47:15,429 >> Ikaslea: [INAUDIBLE]. 1055 00:47:15,429 --> 00:47:17,550 >> HIZLARIA 1: Bai, luzera da izena, ezta? 1056 00:47:17,550 --> 00:47:24,420 M-a-x-w-e-l-l, beraz, sentitzen atsegin dute hau, beraz, algoritmoa big zazpi O da. 1057 00:47:24,420 --> 00:47:26,580 Baina, noski, izen luzera izango du aldaketarik. 1058 00:47:26,580 --> 00:47:27,380 Agian izen labur bat da. 1059 00:47:27,380 --> 00:47:28,600 Agian, jada izen bat da. 1060 00:47:28,600 --> 00:47:33,390 Baina, zer gertatzen da hemen gakoa da zenbakia konstante bat da. 1061 00:47:33,390 --> 00:47:36,810 Eta, agian, ez da benetan etengabea, baina jainkoa, errealistan bada, batean 1062 00:47:36,810 --> 00:47:41,570 hiztegia, ez da, ziurrenik, muga batzuk letra kopurua batean 1063 00:47:41,570 --> 00:47:43,820 Pertsona jakin bat herrialde batean izena. 1064 00:47:43,820 --> 00:47:46,940 >> Eta, beraz, bere gain hartu ahal izango dugu balioa konstante bat da. 1065 00:47:46,940 --> 00:47:47,750 Ez dakit zer den. 1066 00:47:47,750 --> 00:47:50,440 Seguruenik handiago baino uste dugu. 1067 00:47:50,440 --> 00:47:52,720 Beti delako txoko batzuk luze bat ero izena kasua. 1068 00:47:52,720 --> 00:47:56,360 Hargatik deitu k, baina oraindik ez da etengabeko ustez, behin delako 1069 00:47:56,360 --> 00:48:00,190 munduko izendatzea, gutxienez batean bereziki herrialde, luzera edo da 1070 00:48:00,190 --> 00:48:01,780 laburragoa da, eta, beraz, etengabeko da. 1071 00:48:01,780 --> 00:48:04,490 Baina, esan dugun zerbait da big Konstante bat, balio O, zer da hori 1072 00:48:04,490 --> 00:48:07,760 benetan baliokideak? 1073 00:48:07,760 --> 00:48:10,420 Hori da benetan gauza bera etengabeko denbora esaten gisa. 1074 00:48:10,420 --> 00:48:11,530 >> Orain tranpa mota gara, ezta? 1075 00:48:11,530 --> 00:48:15,340 Teoria batzuk aprobetxatuz mota gara Hemen ondo, k ordena da esatea 1076 00:48:15,340 --> 00:48:17,450 Benetan bakar Agindua, eta etengabeko denbora da. 1077 00:48:17,450 --> 00:48:18,200 Baina benetan. 1078 00:48:18,200 --> 00:48:22,550 Tekla ezagutzeko hemen delako da dugu izen n dagoeneko honetan 1079 00:48:22,550 --> 00:48:26,010 Datuen egitura, eta guk Txertatu Maxwell, zenbat denbora gurekin behar izaten da 1080 00:48:26,010 --> 00:48:29,530 Maxwell sartu kaltetutako guztiak zenbat pertsona batzuek 1081 00:48:29,530 --> 00:48:31,100 datu egitura dutenak? 1082 00:48:31,100 --> 00:48:31,670 Ez omen du izan. 1083 00:48:31,670 --> 00:48:36,280 Nuen bat milioi gehiago nahi izanez gero, elementu hau trie, eta, ondoren, Maxwell sartu da, 1084 00:48:36,280 --> 00:48:38,650 eragina zuen? 1085 00:48:38,650 --> 00:48:39,050 N º 1086 00:48:39,050 --> 00:48:42,950 Eta hori da, egun edozein datuak ez bezala da egitura ikusi dugu, beraz, orain arte, eta bertan, 1087 00:48:42,950 --> 00:48:46,820 zure denbora algoritmoa exekutatzen da erabat zenbat independentea 1088 00:48:46,820 --> 00:48:51,430 Gauza da, edo ez da jada Datuen egitura horretan. 1089 00:48:51,430 --> 00:48:54,650 >> Eta, beraz, honekin batera ematen da, orain duzu p jaurtiketa sei, eta horrek aukera izango du 1090 00:48:54,650 --> 00:48:58,310 berriro ere inplikatzeko zeure ezartzeko zuzentzaileari, 150.000 irakurketa 1091 00:48:58,310 --> 00:49:01,050 hitzak, nola onena duten gordetzeko ez da, nahitaez, argi geratu da. 1092 00:49:01,050 --> 00:49:04,030 Eta ez dut nahi baina aurkitu Santo Grial, ez dut 1093 00:49:04,030 --> 00:49:05,330 erreklamatzeko trie bat da. 1094 00:49:05,330 --> 00:49:09,810 Izan ere, hash taula bat oso ondo frogatzeko askoz eraginkorragoa izango da. 1095 00:49:09,810 --> 00:49:10,830 Baina besterik ez dira - 1096 00:49:10,830 --> 00:49:14,620 Hori besterik diseinuan erabakiak bat dute egin nahi izango. 1097 00:49:14,620 --> 00:49:18,920 >> Baina itxi batean dezagun, beraz, 50 edo segundo zer datza begiratu bat eman nahi 1098 00:49:18,920 --> 00:49:22,190 aurretik, eta hurrengo astean dugu trantsizioa haratago komando-lerro honetatik 1099 00:49:22,190 --> 00:49:26,220 mundu C bada gauzak web-programak oinarritzen da, eta PHP bezalako hizkuntza eta 1100 00:49:26,220 --> 00:49:30,350 Ikusteko Javascript-a eta internet bera, HTTP protokoloak, zeinak dituzun 1101 00:49:30,350 --> 00:49:32,870 hartu urtez emandako orain, eta idatzitako gehienak egunero 1102 00:49:32,870 --> 00:49:34,440 egun, agian, edo ikusi. 1103 00:49:34,440 --> 00:49:37,420 Eta atzeko azala hasiko gara zer geruza internet da. 1104 00:49:37,420 --> 00:49:40,650 Eta zer kodea duten azpian, gaur egungo tresnak. 1105 00:49:40,650 --> 00:49:43,230 Beraz, 50 esaldi hau segundotan hemen. 1106 00:49:43,230 --> 00:49:46,570 Ematen dizut Sare Warriors. 1107 00:49:46,570 --> 00:49:51,370 >> [Bideo-erreprodukzioa] 1108 00:49:51,370 --> 00:49:56,764 >> -Heldu zen mezu baten bidez. 1109 00:49:56,764 --> 00:50:00,687 Protokolo bat bere guztiekin. 1110 00:50:00,687 --> 00:50:13,370 1111 00:50:13,370 --> 00:50:19,780 Etorri suebakien cruel mundu bat zen, uncaring router, eta arriskuak urrun 1112 00:50:19,780 --> 00:50:22,600 heriotza baino okerragoa. 1113 00:50:22,600 --> 00:50:23,590 Azkarra da. 1114 00:50:23,590 --> 00:50:25,300 Indartsua da. 1115 00:50:25,300 --> 00:50:27,700 TCPIP da. 1116 00:50:27,700 --> 00:50:30,420 Eta berak lortu da zure helbidea. 1117 00:50:30,420 --> 00:50:32,920 1118 00:50:32,920 --> 00:50:34,590 De garbiak Warriors. 1119 00:50:34,590 --> 00:50:35,290 >> [END bideo-erreprodukzioa] 1120 00:50:35,290 --> 00:50:38,070 >> HIZLARIA 1: Hau da Internet izango da hurrengo aste bezala lan egiten. 1121 00:50:38,070 --> 00:50:40,406