1 00:00:00,000 --> 00:00:08,250 2 00:00:08,250 --> 00:00:12,680 >> Jason Hirschhorn: Laipni lūdzam visus uz nodaļas Seven. 3 00:00:12,680 --> 00:00:15,040 Mēs esam septiņi nedēļas gaitā. 4 00:00:15,040 --> 00:00:18,440 Un tas upcoming ceturtdiena Ir Helovīni tāpēc es esmu 5 00:00:18,440 --> 00:00:21,420 ietērps kā ķirbju. 6 00:00:21,420 --> 00:00:23,460 Es nevarēju saliekt vairāk un laiž manas kurpes, tā ka ir iemesls, kāpēc es esmu 7 00:00:23,460 --> 00:00:25,660 tikai valkā zeķes. 8 00:00:25,660 --> 00:00:29,220 Es esmu arī nav valkājot kaut ko saskaņā to, tāpēc es nevaru pieņemt to, ja tas ir 9 00:00:29,220 --> 00:00:29,950 novērš uzmanību, lai jums. 10 00:00:29,950 --> 00:00:31,860 Es atvainojos jau iepriekš par to. 11 00:00:31,860 --> 00:00:33,170 Jums nav nepieciešams iedomāties kas notiek. 12 00:00:33,170 --> 00:00:34,240 Es esmu valkājot boxers. 13 00:00:34,240 --> 00:00:36,170 Tātad, tas viss ir labi. 14 00:00:36,170 --> 00:00:41,120 >> Man ir garāks stāsts par to, kāpēc es esmu ģērbies kā ķirbju, bet es esmu gatavojas 15 00:00:41,120 --> 00:00:45,110 saglabātu, ka turpmāk šajā sadaļā jo es vēlos, lai sāktu. 16 00:00:45,110 --> 00:00:47,720 Mums ir daudz aizraujošas lietas lai iet pa šo nedēļu. 17 00:00:47,720 --> 00:00:51,810 Lielākā daļa no tiem ir tieši saistīti ar šo nedēļas problēmu kopums, pārrakstīšanās. 18 00:00:51,810 --> 00:00:54,680 Mēs ejam, lai iet pa saistīt sarakstus un hash tabulas 19 00:00:54,680 --> 00:00:57,160 visam nodaļā. 20 00:00:57,160 --> 00:01:02,490 Man šo sarakstu up katru nedēļu, sarakstu resursi jums, lai palīdzētu jums ar 21 00:01:02,490 --> 00:01:04,120 materiāls par šo kursu. 22 00:01:04,120 --> 00:01:07,600 Ja ar zaudējumiem, vai arī, ja meklē kādu vairāk informācijas, pārbaudiet viens no 23 00:01:07,600 --> 00:01:09,930 šie resursi. 24 00:01:09,930 --> 00:01:14,530 >> Atkal, pset6 ir pārrakstīšanās, šīs nedēļas PSET. 25 00:01:14,530 --> 00:01:17,690 Un tas arī mudina jūs, un es aicinām jūs, lai izmantotu kādu citu 26 00:01:17,690 --> 00:01:20,320 resursi, kas īpaši šim PSET. 27 00:01:20,320 --> 00:01:23,390 Jo īpaši, trīs es esmu uzskaitīti uz ekrāna - 28 00:01:23,390 --> 00:01:27,160 gdb, kas mēs esam bijuši pazīstami ar un, izmantojot, bet tagad ir 29 00:01:27,160 --> 00:01:29,270 būs ļoti noderīga šonedēļ. 30 00:01:29,270 --> 00:01:30,190 Tāpēc man, kas šeit. 31 00:01:30,190 --> 00:01:32,910 Bet, kad jūs strādājat ar C, Jums vajadzētu vienmēr izmantot gdb lai 32 00:01:32,910 --> 00:01:34,430 atkļūdot savas programmas. 33 00:01:34,430 --> 00:01:36,660 Šonedēļ arī Valgrind. 34 00:01:36,660 --> 00:01:38,535 Vai kāds zina, ko Valgrind dara? 35 00:01:38,535 --> 00:01:42,184 36 00:01:42,184 --> 00:01:43,890 >> Mērķauditorija: Tā pārbauda atmiņas noplūdes? 37 00:01:43,890 --> 00:01:45,950 >> Jason Hirschhorn: Valgrind pārbauda atmiņas noplūdes. 38 00:01:45,950 --> 00:01:49,970 Tātad, ja jūs malloc kaut kas jūsu programma, jūs lūdzot atmiņu. 39 00:01:49,970 --> 00:01:52,920 Beigās savu programmu, jums ir rakstīt bezmaksas visu, ko esat 40 00:01:52,920 --> 00:01:54,800 malloced dot atmiņu atpakaļ. 41 00:01:54,800 --> 00:01:58,420 Ja jums nav rakstīt bez beigās un jūsu programma nāk pie secinājuma, 42 00:01:58,420 --> 00:02:00,000 viss automātiski jāatbrīvo. 43 00:02:00,000 --> 00:02:02,340 Un mazo programmu, ir nav tik liels darījumu. 44 00:02:02,340 --> 00:02:05,250 Bet, ja jūs esat rakstiski ilgāku darbību programma, kas nav atmest, 45 00:02:05,250 --> 00:02:09,180 obligāti, pēc pāris minūtēm vai pāris sekundes, tad atmiņas noplūde 46 00:02:09,180 --> 00:02:10,710 var kļūt milzīgs darījumu. 47 00:02:10,710 --> 00:02:14,940 >> Tātad pset6, cerības ir, ka Jums būs nulle atmiņas noplūde ar 48 00:02:14,940 --> 00:02:15,910 jūsu programma. 49 00:02:15,910 --> 00:02:18,690 Lai pārbaudītu atmiņas noplūdes, palaist Valgrind un tas došu jums dažas jaukas 50 00:02:18,690 --> 00:02:21,190 izejas izīrēšanas jūs zināt, vai vai ne viss bija bez maksas. 51 00:02:21,190 --> 00:02:23,940 Mēs prakse ar to vēlāk šodien, cerams. 52 00:02:23,940 --> 00:02:25,790 >> Visbeidzot, diff komandu. 53 00:02:25,790 --> 00:02:28,900 Tu izmanto, kaut ko līdzīgu tam kas pset5 ar palūrēt rīku. 54 00:02:28,900 --> 00:02:30,780 Ļauj jums meklēt iekšpusē. 55 00:02:30,780 --> 00:02:33,400 Jūs arī izmanto diff, arī par problēma noteikti spec. 56 00:02:33,400 --> 00:02:35,950 Bet ļauj jums salīdzināt divus failus. 57 00:02:35,950 --> 00:02:39,180 Jūs varētu salīdzināt bitkartes failu un info galvenes personāla risinājumu un 58 00:02:39,180 --> 00:02:42,200 Jūsu risinājums pset5 ja izvēlaties to izmantot. 59 00:02:42,200 --> 00:02:44,030 Izmaiņas ļaus jums darīt, kā labi. 60 00:02:44,030 --> 00:02:48,620 Jūs varat salīdzināt pareizo atbildi, lai šīs nedēļas problēma iestatīts uz jūsu atbildi 61 00:02:48,620 --> 00:02:52,210 un redzēt, ja tā līniju līdz, vai redzēt kur kļūdas. 62 00:02:52,210 --> 00:02:55,870 >> Tātad tie ir trīs labas instrumenti, kas Jums vajadzētu izmantot šo nedēļu, un 63 00:02:55,870 --> 00:02:58,130 noteikti pārbaudiet savu programmu ar šiem trim instrumentiem 64 00:02:58,130 --> 00:03:00,520 pirms pagrieziena to iekšā 65 00:03:00,520 --> 00:03:04,650 Atkal, kā jau es minēju katru nedēļu, ja jums ir kādas atsauksmes par mani - gan 66 00:03:04,650 --> 00:03:06,470 pozitīva un konstruktīva - 67 00:03:06,470 --> 00:03:09,930 justies brīvi doties uz mājas lapā apakšā šo slide 68 00:03:09,930 --> 00:03:11,270 un ievadi to tur. 69 00:03:11,270 --> 00:03:13,440 I really appreciate jebkuru un visas atsauksmes. 70 00:03:13,440 --> 00:03:17,360 Un, ja jūs varētu man īpašas lietas, kas Es varu darīt, lai uzlabotu vai ka es esmu 71 00:03:17,360 --> 00:03:21,350 klājas labi, ka jūs vēlētos, lai es turpināsies, es pieņemt, ka pie sirds un 72 00:03:21,350 --> 00:03:24,040 tiešām cenšamies uzklausīt uz jūsu atsauksmēm. 73 00:03:24,040 --> 00:03:27,720 Es nevaru apsolīt es esmu gatavojas darīt viss, lai gan, piemēram, valkājot 74 00:03:27,720 --> 00:03:30,700 Ķirbja kostīms katru nedēļu. 75 00:03:30,700 --> 00:03:34,020 >> Tāpēc mēs esam gatavojas pavadīt lielāko daļu sadaļā, kā jau minēju, runājot par 76 00:03:34,020 --> 00:03:37,240 saistīti sarakstus un hash tabulas, kas būs tieši piemērojamas 77 00:03:37,240 --> 00:03:38,780 Problēma noteikti šonedēļ. 78 00:03:38,780 --> 00:03:42,580 Saistīti saraksti mēs iet pār salīdzinoši ātri, jo mēs esam pavadījuši godīgu bitu 79 00:03:42,580 --> 00:03:44,930 laiks iet pār to sadaļā. 80 00:03:44,930 --> 00:03:48,680 Un tā mēs iegūtu taisni kodēšanas problēmas, kas saistītas sarakstiem. 81 00:03:48,680 --> 00:03:52,740 Un tad beigās mēs runājam par hash tabulu, un to, kā tie attiecas uz šo 82 00:03:52,740 --> 00:03:55,280 nedēļas problēma noteikti. 83 00:03:55,280 --> 00:03:57,560 >> Jūs esat redzējuši šo kodu pirms. 84 00:03:57,560 --> 00:04:02,730 Tas ir struktūrai, un tas tiek definējot kaut kas jauns, ko sauc mezglā. 85 00:04:02,730 --> 00:04:10,660 Un iekšpusē mezglā ir vesels skaitlis tieši šeit un tur ir rādītājs 86 00:04:10,660 --> 00:04:11,830 cits mezgls. 87 00:04:11,830 --> 00:04:12,790 Mēs esam redzējuši šo pirms. 88 00:04:12,790 --> 00:04:14,830 Tas ir nāk par pāris nedēļas tagad. 89 00:04:14,830 --> 00:04:18,680 Tā apvieno norādes, ko mēs esam bijuši strādā ar, un structs, kas ļauj 90 00:04:18,680 --> 00:04:22,079 mums apvienot divus dažādus viss vienā datu tipu. 91 00:04:22,079 --> 00:04:24,830 92 00:04:24,830 --> 00:04:26,490 >> Tur ir daudz kas notiek uz ekrāna. 93 00:04:26,490 --> 00:04:30,220 Bet tas viss ir relatīvi pazīstams ar jums. 94 00:04:30,220 --> 00:04:33,810 Pirmajā līnijā, mēs pasludināt jaunu mezglu. 95 00:04:33,810 --> 00:04:41,650 Un tad iekšā, ka jaunu mezglu, es noteikti integer minētajā mezglu, lai vienu. 96 00:04:41,650 --> 00:04:44,950 Mēs redzam nākamajā rindiņā es daru printf komandu, bet es esmu izcelta 97 00:04:44,950 --> 00:04:48,080 printf komandu, jo patiešām Svarīgi ir tas līnija šeit - 98 00:04:48,080 --> 00:04:50,020 new_node.n. 99 00:04:50,020 --> 00:04:51,270 Ko nozīmē dot nozīmē? 100 00:04:51,270 --> 00:04:53,810 101 00:04:53,810 --> 00:04:57,240 >> Mērķauditorija: Iet uz mezglu un novērtē n vērtību to. 102 00:04:57,240 --> 00:04:58,370 >> Jason Hirschhorn: Tas ir tieši labi. 103 00:04:58,370 --> 00:05:03,300 Dot nozīmē piekļūt Z daļā Šīs jaunās mezglā. 104 00:05:03,300 --> 00:05:05,690 Šis nākamais rindā nav ko? 105 00:05:05,690 --> 00:05:16,140 106 00:05:16,140 --> 00:05:17,050 Michael. 107 00:05:17,050 --> 00:05:21,910 >> Mērķauditorija: Tas rada vēl vienu mezglu , kas norāda uz jaunu mezglu. 108 00:05:21,910 --> 00:05:24,870 >> Jason Hirschhorn: Tātad tas nav izveidot jaunu mezglu. 109 00:05:24,870 --> 00:05:26,120 Tas rada to, ko? 110 00:05:26,120 --> 00:05:28,300 111 00:05:28,300 --> 00:05:29,300 >> Mērķauditorija: rādītājs. 112 00:05:29,300 --> 00:05:33,460 >> Jason Hirschhorn: rādītāju uz mezglu, kā norādīts šajā mezglā * šeit. 113 00:05:33,460 --> 00:05:34,800 Tāpēc tas rada rādītāju uz mezglu. 114 00:05:34,800 --> 00:05:37,490 Un kura mezgls tas vērsta to, Michael? 115 00:05:37,490 --> 00:05:38,440 >> Mērķauditorija: New mezglu? 116 00:05:38,440 --> 00:05:39,240 >> Jason Hirschhorn: New mezglā. 117 00:05:39,240 --> 00:05:43,020 Un tas norāda, ka tāpēc, ka mēs esam devis adresi jaunu mezglu. 118 00:05:43,020 --> 00:05:45,820 Un tagad šo līniju mēs redzam divi dažādi veidi 119 00:05:45,820 --> 00:05:46,910 izsakot to pašu. 120 00:05:46,910 --> 00:05:49,650 Un es gribēju norādīt, kā šie divas lietas ir vienādi. 121 00:05:49,650 --> 00:05:54,740 Pirmajā rindā, mēs dereference rādītājs. 122 00:05:54,740 --> 00:05:55,830 Tāpēc mēs ejam uz mezglu. 123 00:05:55,830 --> 00:05:56,830 Tas ir tas, ko šī zvaigzne nozīmē. 124 00:05:56,830 --> 00:05:57,930 Mēs esam redzējuši, ka pirms ar norādes. 125 00:05:57,930 --> 00:05:59,280 Iet uz šo mezglu. 126 00:05:59,280 --> 00:06:00,370 Kas ir iekavās. 127 00:06:00,370 --> 00:06:04,610 Un pēc tam piekļūt caur dot operatoram n elements šajā mezglā. 128 00:06:04,610 --> 00:06:08,430 >> Tāpēc, ka ir ņemot sintakse mēs redzējām tieši šeit un tagad 129 00:06:08,430 --> 00:06:09,670 izmantojot to ar kursoru. 130 00:06:09,670 --> 00:06:13,730 Protams, tas kļūst veida aizņemts, ja Jūs esat rakstiski šos iekavas - 131 00:06:13,730 --> 00:06:14,940 ka zvaigzne un dot. 132 00:06:14,940 --> 00:06:16,220 Tā kļūst nedaudz aizņemts. 133 00:06:16,220 --> 00:06:18,500 Tāpēc mums ir daži sintaktisko cukuru. 134 00:06:18,500 --> 00:06:19,920 Un šī līnija tieši šeit - 135 00:06:19,920 --> 00:06:21,170 ptr_node-> n. 136 00:06:21,170 --> 00:06:25,400 137 00:06:25,400 --> 00:06:28,000 Kas dara to pašu precīzu lieta. 138 00:06:28,000 --> 00:06:30,840 Tātad šīs divas rindas kods ir līdzvērtīgas un darīs 139 00:06:30,840 --> 00:06:31,650 tieši tas pats. 140 00:06:31,650 --> 00:06:34,210 >> Bet es gribēju uzsvērt, kas pirms mēs ejam tālāk, lai jūs saprastu, 141 00:06:34,210 --> 00:06:39,000 ka tiešām šī lieta šeit ir tikai sintaktisko cukurs dereferencing 142 00:06:39,000 --> 00:06:44,200 rādītāju un pēc tam dodas uz n daļa no šīs struktūrai. 143 00:06:44,200 --> 00:06:45,525 Visi jautājumi par šo slaidu? 144 00:06:45,525 --> 00:06:53,020 145 00:06:53,020 --> 00:06:54,390 OK. 146 00:06:54,390 --> 00:06:58,510 >> Tāpēc mēs esam gatavojas iet cauri pāris Darbību, ka jūs varat darīt 147 00:06:58,510 --> 00:06:59,730 saistītie saraksti. 148 00:06:59,730 --> 00:07:05,770 Saistīts saraksts, atsaukšana, ir virkne punktiem, kas norāda uz vienu no otra. 149 00:07:05,770 --> 00:07:12,470 Un mēs parasti sākas ar rādītāju sauc par galvu, parasti, kas norāda uz 150 00:07:12,470 --> 00:07:14,040 Pirmais sarakstā. 151 00:07:14,040 --> 00:07:18,900 Tātad pirmajā līnijā šeit, mēs ir mūsu sākotnējā L pirmās. 152 00:07:18,900 --> 00:07:21,370 Tā, ka lieta, ko jūs varat iedomāties - tas tekstu tieši šeit, jūs varat iedomāties, kā 153 00:07:21,370 --> 00:07:23,560 tikai rādītājs, mēs esam saglabāti kaut kas punkti 154 00:07:23,560 --> 00:07:24,670 pirmajam elementam. 155 00:07:24,670 --> 00:07:27,500 Un šajā saistīta sarakstā mums ir četri mezgli. 156 00:07:27,500 --> 00:07:29,530 Katrs mezgls ir liela kaste. 157 00:07:29,530 --> 00:07:33,430 Lielāka kaste iekšpusē liels kaste ir vesels skaitlis daļa. 158 00:07:33,430 --> 00:07:37,400 Un tad mums ir rādītājs daļu. 159 00:07:37,400 --> 00:07:39,630 >> Šīs kastes nav vērsta uz mēroga dēļ, cik liela ir 160 00:07:39,630 --> 00:07:42,320 ir vesels skaitlis, kas bytes? 161 00:07:42,320 --> 00:07:43,290 Cik liels tagad? 162 00:07:43,290 --> 00:07:43,710 Četri. 163 00:07:43,710 --> 00:07:45,470 Un cik liels ir rādītājs? 164 00:07:45,470 --> 00:07:45,940 Četri. 165 00:07:45,940 --> 00:07:48,180 Tik tiešām, ja mēs to izdarīt Tas mērogā abas kastes 166 00:07:48,180 --> 00:07:49,690 būtu tāds pats lielums. 167 00:07:49,690 --> 00:07:52,870 Šajā gadījumā, mēs vēlamies, lai ievietotu kaut uz saistītajā sarakstā. 168 00:07:52,870 --> 00:07:57,190 Tātad jūs varat redzēt šeit lejā mēs ievietojot Piecu Mēs traversa cauri 169 00:07:57,190 --> 00:08:01,310 saistīts saraksts, atrast, kur piecas iet, un pēc tam ievietojiet to. 170 00:08:01,310 --> 00:08:03,560 >> Let 's lauzt šo leju un iet mazliet lēnāk. 171 00:08:03,560 --> 00:08:05,510 Es esmu gatavojas, lai norādītu uz kuģa. 172 00:08:05,510 --> 00:08:09,930 Tāpēc mums ir mūsu mezglu pieci ka mēs esam radīti mallocs. 173 00:08:09,930 --> 00:08:11,190 Kāpēc visi smejas? 174 00:08:11,190 --> 00:08:12,130 Just kidding. 175 00:08:12,130 --> 00:08:13,310 OK. 176 00:08:13,310 --> 00:08:14,820 Tāpēc mēs esam malloced pieci. 177 00:08:14,820 --> 00:08:16,310 Mēs esam izveidojuši šo mezglu kaut kur citur. 178 00:08:16,310 --> 00:08:17,740 Mums ir tā gatava iet. 179 00:08:17,740 --> 00:08:20,130 Mēs sākas priekšpusē mūsu sarakstu ar diviem. 180 00:08:20,130 --> 00:08:22,380 Un mēs gribam, lai ievietotu ar šķirotiem veidā. 181 00:08:22,380 --> 00:08:27,550 >> Tātad, ja mēs redzam divas, un mēs vēlamies, lai pieciem, ko mēs darām, kad mēs redzam 182 00:08:27,550 --> 00:08:28,800 kaut mazāk nekā mums? 183 00:08:28,800 --> 00:08:31,850 184 00:08:31,850 --> 00:08:33,520 Kas? 185 00:08:33,520 --> 00:08:36,750 Mēs vēlamies, lai ievietotu piecas uz to saistīts saraksts, saglabājot to sakārtoti. 186 00:08:36,750 --> 00:08:37,520 Mēs redzam numuru divi. 187 00:08:37,520 --> 00:08:38,769 Tātad, ko mēs darām? 188 00:08:38,769 --> 00:08:39,179 Marcus? 189 00:08:39,179 --> 00:08:40,679 >> Mērķauditorija: Zvaniet rādītāju uz nākamo mezglu. 190 00:08:40,679 --> 00:08:42,530 >> Jason Hirschhorn: Un kāpēc mēs ejam uz nākamo? 191 00:08:42,530 --> 00:08:45,970 >> Mērķauditorija: Jo tas ir blakus mezglu sarakstā. 192 00:08:45,970 --> 00:08:48,310 Un mēs tikai zinām, ka citu vietu. 193 00:08:48,310 --> 00:08:50,410 >> Jason Hirschhorn: Bet piecas ir lielāks nekā divi, jo īpaši. 194 00:08:50,410 --> 00:08:51,600 Jo mēs gribam, lai saglabātu to sakārtoti. 195 00:08:51,600 --> 00:08:52,730 Tātad pieci ir lielāks nekā divi. 196 00:08:52,730 --> 00:08:54,460 Tāpēc mēs pāriet uz nākamo. 197 00:08:54,460 --> 00:08:55,240 Un tagad mēs sasniegtu četrus. 198 00:08:55,240 --> 00:08:56,490 Un kas notiek, kad mēs sasniegtu četrus? 199 00:08:56,490 --> 00:08:58,920 200 00:08:58,920 --> 00:09:00,310 >> Five ir lielāka nekā četri. 201 00:09:00,310 --> 00:09:01,460 Tāpēc mēs turpinām iet. 202 00:09:01,460 --> 00:09:03,110 Un tagad mēs esam pie sešiem. 203 00:09:03,110 --> 00:09:04,360 Un ko mēs redzam sešos? 204 00:09:04,360 --> 00:09:08,672 205 00:09:08,672 --> 00:09:09,608 Jā, Carlos? 206 00:09:09,608 --> 00:09:10,544 >> Mērķauditorija: Seši ir lielāks par pieciem. 207 00:09:10,544 --> 00:09:11,480 >> Jason Hirschhorn: Six ir lielāks par pieciem. 208 00:09:11,480 --> 00:09:13,660 Tātad, tas ir, ja mēs gribam ievietot pieci. 209 00:09:13,660 --> 00:09:17,320 Tomēr, paturiet prātā, ka, ja mēs ir tikai viens rādītājs šeit - 210 00:09:17,320 --> 00:09:19,840 tas ir mūsu papildus rādītājs, kas ir šķērso pa sarakstu. 211 00:09:19,840 --> 00:09:21,860 Un mēs esam norādot uz sešiem. 212 00:09:21,860 --> 00:09:25,010 Mēs esam zaudējuši līdzi tam, ko nāk pirms sešiem. 213 00:09:25,010 --> 00:09:29,130 Tātad, ja mēs gribam, lai ievietotu kaut ko par šis saraksts turot to sakārtoti, mēs 214 00:09:29,130 --> 00:09:31,630 iespējams, ir nepieciešams, cik daudz norādes? 215 00:09:31,630 --> 00:09:32,280 >> Mērķauditorija: Two. 216 00:09:32,280 --> 00:09:32,920 >> Jason Hiršhorns: Two. 217 00:09:32,920 --> 00:09:35,720 Viens sekot pašreizējā vienu un viens, lai sekotu 218 00:09:35,720 --> 00:09:37,050 iepriekšējais. 219 00:09:37,050 --> 00:09:38,450 Tas ir tikai atsevišķi saistīts saraksts. 220 00:09:38,450 --> 00:09:39,670 Tas tikai iet vienā virzienā. 221 00:09:39,670 --> 00:09:43,220 Ja mums būtu divkārt saistīts saraksts, kurā viss bija vērsta pret lietu 222 00:09:43,220 --> 00:09:46,240 pēc tam, un lieta pirms tam, tad mēs nebūtu nepieciešams to darīt. 223 00:09:46,240 --> 00:09:49,350 Bet šajā gadījumā mēs negribam zaudēt dziesmu par to, kas bija pirms mums, ja 224 00:09:49,350 --> 00:09:53,350 mums ir nepieciešams, lai ievietotu piecas kaut kur vidū. 225 00:09:53,350 --> 00:09:55,610 Saka, mēs bijām ievietojot deviņi. 226 00:09:55,610 --> 00:09:57,260 Kas notiktu, ja mēs saņēmām līdz astoņām? 227 00:09:57,260 --> 00:10:01,860 228 00:10:01,860 --> 00:10:04,880 >> Mērķauditorija: Jūs ir iegūt šo null punktu. 229 00:10:04,880 --> 00:10:07,820 Tā vietā, null punktu jūs ir pievienot elementu, un tad ir 230 00:10:07,820 --> 00:10:09,216 tas norāda uz deviņiem. 231 00:10:09,216 --> 00:10:09,700 >> Jason Hiršhorns: Tieši tā. 232 00:10:09,700 --> 00:10:10,600 Tāpēc mēs astoņi. 233 00:10:10,600 --> 00:10:13,140 Mēs beigs sarakstā, jo tas norāda uz null. 234 00:10:13,140 --> 00:10:16,330 Un tagad, tā vietā, tas norāda uz null mēs esam tas norāda uz mūsu jauno mezglu. 235 00:10:16,330 --> 00:10:19,870 Un mēs noteikti rādītāju Mūsu jaunā mezglu null. 236 00:10:19,870 --> 00:10:21,445 Vai kāds ir kādi jautājumi par ievietošanu? 237 00:10:21,445 --> 00:10:25,620 238 00:10:25,620 --> 00:10:28,100 Ko darīt, ja man nav rūp saglabājot sarakstu sakārtoti? 239 00:10:28,100 --> 00:10:31,701 240 00:10:31,701 --> 00:10:34,350 >> Mērķauditorija: Stick to sākumā vai beigās. 241 00:10:34,350 --> 00:10:35,510 >> Jason Hiršhorns: Stick to sākums vai beigas. 242 00:10:35,510 --> 00:10:37,276 Kuriem viens mums vajadzētu darīt? 243 00:10:37,276 --> 00:10:38,770 Bobby? 244 00:10:38,770 --> 00:10:41,020 Kāpēc beigas? 245 00:10:41,020 --> 00:10:43,250 >> Mērķauditorija: Tā sākums jau ir aizpildīta. 246 00:10:43,250 --> 00:10:43,575 >> Jason Hiršhorns: OK. 247 00:10:43,575 --> 00:10:44,360 Sākums jau ir aizpildīta. 248 00:10:44,360 --> 00:10:46,090 Kurš vēlas iebilst pret Bobby. 249 00:10:46,090 --> 00:10:47,290 Marcus. 250 00:10:47,290 --> 00:10:48,910 >> Mērķauditorija: Nu, jūs, iespējams, vēlaties stick to sākumā, jo 251 00:10:48,910 --> 00:10:50,140 Citādi ir, ja jūs nodot to beigās jūs ir 252 00:10:50,140 --> 00:10:51,835 šķērsotu visu sarakstu. 253 00:10:51,835 --> 00:10:52,990 >> Jason Hiršhorns: Tieši tā. 254 00:10:52,990 --> 00:10:57,970 Tātad, ja mēs esam domājot par runtime, runtime ievietojot beigās 255 00:10:57,970 --> 00:11:00,110 būtu n, lielumu šajā. 256 00:11:00,110 --> 00:11:03,080 Kas ir liels O runtime ievietojot sākumā? 257 00:11:03,080 --> 00:11:04,170 Constant laiks. 258 00:11:04,170 --> 00:11:07,075 Tātad, ja jums nav jārūpējas par saglabājot kaut kas sakārtoti, ir daudz labāk, lai tikai 259 00:11:07,075 --> 00:11:08,420 ievietot sākumā šajā sarakstā. 260 00:11:08,420 --> 00:11:10,320 , Un kas var izdarīt konstantu laikā. 261 00:11:10,320 --> 00:11:13,900 262 00:11:13,900 --> 00:11:14,690 >> OK. 263 00:11:14,690 --> 00:11:18,870 Nākošo darbību, ir atrast, kas cits - mēs esam formulēts to, kā meklēt. 264 00:11:18,870 --> 00:11:22,470 Bet mēs ejam, lai apskatīt caur saistīts saraksts kādu objektu. 265 00:11:22,470 --> 00:11:26,000 Jums puiši ir redzējuši kodu meklēt, pirms lekciju. 266 00:11:26,000 --> 00:11:29,490 Bet mēs veida vienkārši darīja to ar ievietot vai vismaz ievietojot 267 00:11:29,490 --> 00:11:30,580 kaut kas sakārtots. 268 00:11:30,580 --> 00:11:36,350 Jūs meklēt, izmantojot, iet mezglā ar mezglu, līdz jūs atrast numuru, kas jūs esat 269 00:11:36,350 --> 00:11:37,780 meklē. 270 00:11:37,780 --> 00:11:39,670 Kas notiek, ja jūs sasniedzat beigu saraksta? 271 00:11:39,670 --> 00:11:43,020 Teikt, es esmu meklē deviņus un I beigs sarakstā. 272 00:11:43,020 --> 00:11:44,270 Ko mēs darām? 273 00:11:44,270 --> 00:11:47,147 274 00:11:47,147 --> 00:11:48,110 >> Mērķauditorija: atgriezties viltus? 275 00:11:48,110 --> 00:11:48,690 >> Jason Hiršhorns: Atgriešanās nepatiesa. 276 00:11:48,690 --> 00:11:49,960 Mēs neatradām to. 277 00:11:49,960 --> 00:11:52,010 Ja jūs sasniedzat beigām saraksta un Jums nav atrast numuru jūs esat 278 00:11:52,010 --> 00:11:54,170 meklē, tas nav tur. 279 00:11:54,170 --> 00:11:55,420 Kādi jautājumi par atrast? 280 00:11:55,420 --> 00:11:59,530 281 00:11:59,530 --> 00:12:04,615 Ja tas bija sakārtoti sarakstu, kādi būtu būt atšķirīgs mūsu meklēšanu? 282 00:12:04,615 --> 00:12:07,370 283 00:12:07,370 --> 00:12:08,103 Jā. 284 00:12:08,103 --> 00:12:10,600 >> Mērķauditorija: Tā varētu atrast pirmo vērtību , kas ir lielāks par vienu 285 00:12:10,600 --> 00:12:12,390 jūs meklējat, un tad atgriezties viltus. 286 00:12:12,390 --> 00:12:13,190 >> Jason Hiršhorns: Tieši tā. 287 00:12:13,190 --> 00:12:17,310 Tātad, ja tas ir sakārtots saraksts, ja mēs nokļūt kaut kas ir lielāks nekā tas, ko 288 00:12:17,310 --> 00:12:20,180 mēs meklējam, mums nav nepieciešams glabāt notiek pie saraksta beigās. 289 00:12:20,180 --> 00:12:24,060 Mēs varam tajā brīdī atgriezties viltus tāpēc, ka mēs nebrauksim, lai atrastu to. 290 00:12:24,060 --> 00:12:27,340 Jautājums tagad ir, mēs esam runājuši par saglabājot saistītos sarakstus sakārtoti, 291 00:12:27,340 --> 00:12:28,180 turot tos nešķiroti. 292 00:12:28,180 --> 00:12:30,050 Tas būs kaut kas jūs esat iespējams, nāksies domāt par 293 00:12:30,050 --> 00:12:34,240 kad kodēšanas problēma noteikti pieci, ja izvēlēties hash tabulu ar atsevišķu 294 00:12:34,240 --> 00:12:36,360 Ķēžu pieeja, kas mēs runājam par vēlāk. 295 00:12:36,360 --> 00:12:41,400 >> Bet tas ir tā vērts, lai saglabātu sarakstu jāšķiro un tad varēs varbūt būtu 296 00:12:41,400 --> 00:12:42,310 ātrāku meklēšanu? 297 00:12:42,310 --> 00:12:47,220 Vai tas ir labāk, lai ātri ievietotu kaut pastāvīgā runtime, bet tad 298 00:12:47,220 --> 00:12:48,430 ir garāks meklēšanu? 299 00:12:48,430 --> 00:12:52,250 Tas ir tradeoff labi tur, ka jums var izlemt, kas ir vairāk piemērots 300 00:12:52,250 --> 00:12:53,590 Jūsu konkrēto problēmu. 301 00:12:53,590 --> 00:12:56,680 Un tur ne vienmēr viens absolūti pareizā atbilde. 302 00:12:56,680 --> 00:12:59,520 Bet tas, protams, lēmums jūs saņemsiet veikt, un, iespējams, labi, lai aizstāvētu 303 00:12:59,520 --> 00:13:05,270 ka, teiksim, komentāru vai diviem, kāpēc Jūs izvēlaties vienu pār otru. 304 00:13:05,270 --> 00:13:06,490 >> Visbeidzot, dzēšot. 305 00:13:06,490 --> 00:13:08,100 Mēs esam redzējuši dzēšanu. 306 00:13:08,100 --> 00:13:09,180 Tas ir līdzīgi kā meklēt. 307 00:13:09,180 --> 00:13:11,020 Mēs meklējam elementa. 308 00:13:11,020 --> 00:13:12,390 Saka, mēs cenšamies, lai izdzēstu seši. 309 00:13:12,390 --> 00:13:14,450 Tāpēc mēs atrast seši šeit. 310 00:13:14,450 --> 00:13:18,860 Lieta, kas mums ir, lai pārliecinātos, ka mēs darīt, ir tas, ka viss, kas vērsta uz 311 00:13:18,860 --> 00:13:21,220 seši - kā mēs redzam soli divus uz leju šeit - 312 00:13:21,220 --> 00:13:26,500 kāds ir norādot uz sešiem vajadzībām, lai izlaist sešas tagad mainīt uz 313 00:13:26,500 --> 00:13:28,160 kāds seši ir vērsta uz. 314 00:13:28,160 --> 00:13:31,410 Mēs nevēlamies, lai kādreiz bāreņu pārējo Mūsu sarakstā aizmirstot noteikt, ka 315 00:13:31,410 --> 00:13:32,960 iepriekšējais rādītājs. 316 00:13:32,960 --> 00:13:35,960 Un tad dažreiz, atkarībā no par programmu, tie būs vienkārši 317 00:13:35,960 --> 00:13:37,380 dzēst šo mezglu pilnībā. 318 00:13:37,380 --> 00:13:40,135 Dažreiz jūs vēlaties, lai atgrieztos vērtība, kas ir šajā mezglā. 319 00:13:40,135 --> 00:13:42,490 Tātad tas, kā dzēst darbi. 320 00:13:42,490 --> 00:13:44,610 Visus jautājumus par dzēst? 321 00:13:44,610 --> 00:13:51,280 322 00:13:51,280 --> 00:13:53,850 >> Mērķauditorija: Tātad, ja jūs gatavojas, lai izdzēstu tā, jūs vienkārši izmantot bez maksas, jo 323 00:13:53,850 --> 00:13:55,655 iespējams, tas tika malloced? 324 00:13:55,655 --> 00:13:57,976 >> Jason Hiršhorns: Ja jūs vēlaties, lai atbrīvotu kaut kas ir tieši labi, un jūs 325 00:13:57,976 --> 00:13:58,540 malloced to. 326 00:13:58,540 --> 00:14:00,410 Saka, mēs vēlējāmies, lai atgrieztu šo vērtību. 327 00:14:00,410 --> 00:14:04,010 Mēs varētu atgriezties sešu un tad bezmaksas šis mezgls un zvans bez maksas to. 328 00:14:04,010 --> 00:14:06,180 Vai mēs droši vien zvanīt bez pirmā un pēc tam atgriezties seši. 329 00:14:06,180 --> 00:14:11,210 330 00:14:11,210 --> 00:14:11,580 >> OK. 331 00:14:11,580 --> 00:14:14,010 Tāpēc pieņemsim pāriet uz praksi kodēšanu. 332 00:14:14,010 --> 00:14:16,090 Mēs ejam, lai kodu trīs funkcijas. 333 00:14:16,090 --> 00:14:18,260 Pirmais sauc insert_node. 334 00:14:18,260 --> 00:14:22,170 Tātad jums ir kods, kas man pa e-pastu jums, un ja jūs skatoties šo vēlāk 335 00:14:22,170 --> 00:14:28,020 Jūs varat piekļūt kodu linked.c uz CS50 mājas lapā. 336 00:14:28,020 --> 00:14:30,880 Bet linked.c, tur ir daži skelets kodu, kas ir jau 337 00:14:30,880 --> 00:14:32,280 ir rakstīts par jums. 338 00:14:32,280 --> 00:14:34,560 Un tad tur ir pāris funkciju lietošana jums ir nepieciešams, lai rakstītu. 339 00:14:34,560 --> 00:14:36,380 >> Vispirms mēs ejam rakstīt insert_node. 340 00:14:36,380 --> 00:14:39,800 Un ko insert_node dara IS ievieto skaitli. 341 00:14:39,800 --> 00:14:42,440 Un jūs dodot veselam skaitlim uz saistītajā sarakstā. 342 00:14:42,440 --> 00:14:45,470 Un jo īpaši, jums ir nepieciešams lai saglabātu sarakstu sakārtoti 343 00:14:45,470 --> 00:14:47,650 no mazākā uz lielāko. 344 00:14:47,650 --> 00:14:51,360 Arī jūs nevēlaties ievietot jebkādus dublikātus. 345 00:14:51,360 --> 00:14:54,600 Visbeidzot, kā jūs varat redzēt insert_node atgriež bool. 346 00:14:54,600 --> 00:14:57,140 Tātad jūs vajadzēja, lai ļautu lietotājam uzzināt, vai nav ieliktnis bija 347 00:14:57,140 --> 00:15:00,800 veiksmīgi atgriežoties patiess vai nepatiess. 348 00:15:00,800 --> 00:15:02,580 Beigās šīs programmas - 349 00:15:02,580 --> 00:15:05,750 un šajā posmā nav nepieciešams jāuztraucas par atbrīvojot neko. 350 00:15:05,750 --> 00:15:11,790 Tātad, visi jūs darāt, ir veikt veselam skaitlim un tā ievietošanas sarakstā. 351 00:15:11,790 --> 00:15:13,890 >> Tas ir tas, ko es esmu lūdzot jums darīt tagad. 352 00:15:13,890 --> 00:15:17,620 Atkal, jo linked.c, kuru jūs visiem ir, ir skelets kodu. 353 00:15:17,620 --> 00:15:20,980 Un jums vajadzētu redzēt uz apakšu paraugs funkciju deklarācijas. 354 00:15:20,980 --> 00:15:27,390 Taču, pirms došanās uz kodēšanas to C, es ļoti iesakām jums iet 355 00:15:27,390 --> 00:15:29,330 izmantojot pasākumus, mēs esam bijuši praktizē katru nedēļu. 356 00:15:29,330 --> 00:15:31,100 Mēs jau esam izgājuši cauri priekšstatu par to. 357 00:15:31,100 --> 00:15:33,380 Tātad jums ir kāda izpratne par to, kā tas darbojas. 358 00:15:33,380 --> 00:15:36,590 Bet es aicinu jūs rakstīt daži pseudocode pirms niršanas collas 359 00:15:36,590 --> 00:15:38,640 Un mēs gatavojamies iet pa pseudocode kā grupa. 360 00:15:38,640 --> 00:15:41,470 Un tad, kad jūs esat rakstiski savu pseudocode, un, kad mēs esam rakstiski mūsu 361 00:15:41,470 --> 00:15:45,850 pseudocode kā grupa, jūs varat iedziļināties kodēšanas to C. 362 00:15:45,850 --> 00:15:49,980 >> Kā galvu uz augšu, insert_node funkcija ir iespējams sarežģītākajiem un 363 00:15:49,980 --> 00:15:53,550 Trīs mēs esam gatavojas rakstīt, jo es pievienoti daži papildu ierobežojumus, lai 364 00:15:53,550 --> 00:15:57,190 Jūsu programmēšana, jo īpaši, ka jūs neesat gatavojas, lai ievietotu kādu 365 00:15:57,190 --> 00:15:59,880 dublikātus un ka saraksts jāpaliek šķiroti. 366 00:15:59,880 --> 00:16:02,660 Tāpēc tas ir ne-trivial programmas kas jums ir nepieciešams kods. 367 00:16:02,660 --> 00:16:06,470 Un kāpēc jūs to 6:55 minūtes, tikai, lai iegūtu darbu pie 368 00:16:06,470 --> 00:16:07,640 pseudocode un kodu. 369 00:16:07,640 --> 00:16:09,460 Un tad mēs sāksim notiek kā grupa. 370 00:16:09,460 --> 00:16:11,680 Atkal, ja jums ir kādi jautājumi, tikai paceliet roku, un es atnākšu apkārt. 371 00:16:11,680 --> 00:16:15,258 372 00:16:15,258 --> 00:16:16,508 . 373 00:16:16,508 --> 00:18:28,370 374 00:18:28,370 --> 00:18:30,120 >> Mēs arī parasti dara tām - 375 00:18:30,120 --> 00:18:32,070 vai man nav skaidri pateikt jums var strādāt ar cilvēkiem. 376 00:18:32,070 --> 00:18:36,500 Bet, protams, es ļoti iesakām jums, Ja jums ir jautājumi, uzdot 377 00:18:36,500 --> 00:18:39,840 kaimiņš sēž blakus jums vai pat strādāt ar kādu 378 00:18:39,840 --> 00:18:40,510 cits, ja vēlaties. 379 00:18:40,510 --> 00:18:42,600 Tas nav jābūt individuāls klusa darbība. 380 00:18:42,600 --> 00:20:11,770 381 00:20:11,770 --> 00:20:16,330 >> Sāksim ar rakstisku dažiem pseudocode uz kuģa. 382 00:20:16,330 --> 00:20:19,395 Kas var dot man pirmajā rindā pseudocode par šo programmu? 383 00:20:19,395 --> 00:20:22,240 384 00:20:22,240 --> 00:20:23,640 Šo funkciju, bet - insert_node. 385 00:20:23,640 --> 00:20:29,960 386 00:20:29,960 --> 00:20:31,830 Alden? 387 00:20:31,830 --> 00:20:36,560 >> Mērķauditorija: Tātad pirmā lieta, ko es darīju bija izveidot jaunu rādītāju uz mezglu un I 388 00:20:36,560 --> 00:20:41,320 inicializēta tas norāda uz to pašu lieta, ka saraksts ir vērsta uz. 389 00:20:41,320 --> 00:20:41,550 >> Jason Hiršhorns: OK. 390 00:20:41,550 --> 00:20:45,190 Tātad jūs veidojat jaunu rādītāju sarakstam, nevis mezglā. 391 00:20:45,190 --> 00:20:45,420 >> Mērķauditorija: Tieši tā. 392 00:20:45,420 --> 00:20:46,150 Jā. 393 00:20:46,150 --> 00:20:46,540 >> Jason Hiršhorns: OK. 394 00:20:46,540 --> 00:20:48,221 Un tad to, ko mēs vēlamies darīt? 395 00:20:48,221 --> 00:20:49,163 Kas pēc tam? 396 00:20:49,163 --> 00:20:50,105 Kas par mezglu? 397 00:20:50,105 --> 00:20:51,050 Mums nav mezglu. 398 00:20:51,050 --> 00:20:52,300 Mums vienkārši ir vērtība. 399 00:20:52,300 --> 00:20:55,918 400 00:20:55,918 --> 00:20:58,890 Ja mēs gribam, lai ievietotu mezglu, ko mēs jādara vispirms, pirms mēs varam pat 401 00:20:58,890 --> 00:20:59,980 domāt par ievietojot to? 402 00:20:59,980 --> 00:21:00,820 >> Mērķauditorija: Ak, piedodiet. 403 00:21:00,820 --> 00:21:02,160 mums ir malloc telpu mezglā. 404 00:21:02,160 --> 00:21:02,455 >> Jason Hiršhorns: Excellent. 405 00:21:02,455 --> 00:21:03,210 Darīsim - 406 00:21:03,210 --> 00:21:04,628 OK. 407 00:21:04,628 --> 00:21:06,065 Nevar panākt, ka augstas. 408 00:21:06,065 --> 00:21:08,939 409 00:21:08,939 --> 00:21:09,897 OK. 410 00:21:09,897 --> 00:21:13,236 Mēs ejam, lai iet uz leju, un pēc tam mēs izmantojam divas kolonnas. 411 00:21:13,236 --> 00:21:13,732 Es nevaru iet, ka - 412 00:21:13,732 --> 00:21:14,982 OK. 413 00:21:14,982 --> 00:21:23,660 414 00:21:23,660 --> 00:21:25,130 Izveidot jaunu mezglu. 415 00:21:25,130 --> 00:21:29,380 Jūs varat izveidot citu rādītāju sarakstu vai arī varat vienkārši izmantot sarakstā, jo tā pastāv. 416 00:21:29,380 --> 00:21:30,720 Jums nav tiešām ir nepieciešams, lai to izdarītu. 417 00:21:30,720 --> 00:21:31,750 >> Tātad, mēs izveidot jaunu mezglu. 418 00:21:31,750 --> 00:21:32,010 Lieliski. 419 00:21:32,010 --> 00:21:32,840 Tas ir tas, ko mēs darām pirmo reizi. 420 00:21:32,840 --> 00:21:34,870 Ko tālāk? 421 00:21:34,870 --> 00:21:35,080 >> Mērķauditorija: Pagaidiet. 422 00:21:35,080 --> 00:21:38,330 Mums vajadzētu izveidot jaunu mezglu tagad vai mums vajadzētu gaidīt, lai pārliecinātos, ka 423 00:21:38,330 --> 00:21:42,260 tur nav dublikāti mezglā sarakstā, pirms mēs to izveidot? 424 00:21:42,260 --> 00:21:43,100 >> Jason Hiršhorns: Labs jautājums. 425 00:21:43,100 --> 00:21:47,770 Pieņemsim tur, ka vēlāk, jo lielāko daļu laika mēs būsim radot 426 00:21:47,770 --> 00:21:48,220 jaunu mezglu. 427 00:21:48,220 --> 00:21:49,110 Tāpēc mēs saglabātu, ka šeit. 428 00:21:49,110 --> 00:21:51,006 Bet tas ir labs jautājums. 429 00:21:51,006 --> 00:21:53,250 Ja mēs radām, un mēs redzam, dublikātu, ko vajadzētu 430 00:21:53,250 --> 00:21:54,490 mēs pirms atgriešanās? 431 00:21:54,490 --> 00:21:55,190 >> Mērķauditorija: Free to. 432 00:21:55,190 --> 00:21:55,470 >> Jason Hiršhorns: Jā. 433 00:21:55,470 --> 00:21:56,500 Iespējams atbrīvot to. 434 00:21:56,500 --> 00:21:56,760 OK. 435 00:21:56,760 --> 00:21:59,850 Ko mēs darām, kad mēs izveido jaunu mezglu? 436 00:21:59,850 --> 00:22:02,260 Annie? 437 00:22:02,260 --> 00:22:04,780 >> Mērķauditorija: Mēs ieliekam numurs mezglu? 438 00:22:04,780 --> 00:22:05,140 >> Jason Hiršhorns: Tieši tā. 439 00:22:05,140 --> 00:22:07,190 Mēs uzdodam numuru - mēs malloc telpu. 440 00:22:07,190 --> 00:22:08,160 Es esmu gatavojas atstāt, ka visi par vienu līniju. 441 00:22:08,160 --> 00:22:08,720 Bet tev taisnība. 442 00:22:08,720 --> 00:22:10,305 Mēs malloc telpu, un pēc tam mēs nodot numuru collas 443 00:22:10,305 --> 00:22:12,585 Mēs pat varam noteikt rādītāju daļa no tā ir null. 444 00:22:12,585 --> 00:22:13,720 Tas ir tieši labi. 445 00:22:13,720 --> 00:22:17,400 Un tad ko par to pēc tam? 446 00:22:17,400 --> 00:22:18,490 Mēs vērsa šo attēlu uz kuģa. 447 00:22:18,490 --> 00:22:21,190 Tātad, ko mēs darām? 448 00:22:21,190 --> 00:22:22,680 >> Mērķauditorija: Mēs ejam cauri sarakstam. 449 00:22:22,680 --> 00:22:23,930 >> Jason Hiršhorns: Iet cauri sarakstam. 450 00:22:23,930 --> 00:22:30,620 451 00:22:30,620 --> 00:22:31,100 OK. 452 00:22:31,100 --> 00:22:34,280 Un ko mēs pārbaudīt katrā mezglā. 453 00:22:34,280 --> 00:22:35,955 Kurt, ko mēs pārbaudīt ne katru mezglu? 454 00:22:35,955 --> 00:22:41,640 >> Mērķauditorija: Skat, vai n vērtība ka mezgls ir lielāks par n vērtība 455 00:22:41,640 --> 00:22:43,070 Mūsu mezglā. 456 00:22:43,070 --> 00:22:43,340 >> Jason Hiršhorns: OK. 457 00:22:43,340 --> 00:22:44,280 Es esmu gatavojas darīt - 458 00:22:44,280 --> 00:22:45,855 jā, OK. 459 00:22:45,855 --> 00:22:48,160 Tātad, tas ir n - 460 00:22:48,160 --> 00:22:59,040 Es esmu gatavojas teikt, ja vērtība ir lielāka par šo mezglu, tad ko mēs darām? 461 00:22:59,040 --> 00:23:07,290 >> Mērķauditorija: Nu, tad mēs ievietotu lieta, tieši pirms tā. 462 00:23:07,290 --> 00:23:07,970 >> Jason Hiršhorns: OK. 463 00:23:07,970 --> 00:23:09,410 Tātad, ja tas ir lielāks par to, tad mēs gribam, lai ievietotu. 464 00:23:09,410 --> 00:23:14,010 Bet mēs gribam, lai ievietotu to tieši pirms tāpēc, ka mums arī būtu jābūt 465 00:23:14,010 --> 00:23:16,070 sekot, tad, par to, kas bija pirms tam. 466 00:23:16,070 --> 00:23:22,690 Tātad ievietot iepriekš. 467 00:23:22,690 --> 00:23:25,120 Tāpēc mēs, iespējams, kaut ko palaiduši garām agrāk. 468 00:23:25,120 --> 00:23:27,770 Mēs, iespējams, ir nepieciešams saglabāt līdzi, kas notiek. 469 00:23:27,770 --> 00:23:28,460 Bet mēs nokļūt atpakaļ tur. 470 00:23:28,460 --> 00:23:30,160 Tātad, kas vērtība ir mazāka nekā? 471 00:23:30,160 --> 00:23:38,030 472 00:23:38,030 --> 00:23:39,710 Kurt, ko mēs darām, ja vērtība ir mazāka nekā? 473 00:23:39,710 --> 00:23:43,000 >> Mērķauditorija: Tad jūs tikai glabāt notiek ja vien tas ir pēdējais. 474 00:23:43,000 --> 00:23:43,550 >> Jason Hiršhorns: Man patīk, ka. 475 00:23:43,550 --> 00:23:44,800 Lai iet uz nākamo mezglu. 476 00:23:44,800 --> 00:23:47,410 477 00:23:47,410 --> 00:23:48,930 Ja vien tas ir pēdējais - 478 00:23:48,930 --> 00:23:51,100 mēs, iespējams pārbaudīt, ka darba uzdevumā stāvoklī. 479 00:23:51,100 --> 00:23:54,870 Bet jā, blakus mezglā. 480 00:23:54,870 --> 00:23:58,680 Un tas kļūst pārāk zems, tāpēc mēs pāriet šeit. 481 00:23:58,680 --> 00:24:02,030 Bet, ja - 482 00:24:02,030 --> 00:24:03,280 var ikviens redzēt šo? 483 00:24:03,280 --> 00:24:07,230 484 00:24:07,230 --> 00:24:11,610 Ja mēs esam vienāds, ko mēs darām? 485 00:24:11,610 --> 00:24:15,740 Ja vērtība, mēs cenšamies, lai ievietotu ir vienāds ar šo mezglu vērtības? 486 00:24:15,740 --> 00:24:16,320 Yeah? 487 00:24:16,320 --> 00:24:18,400 >> Mērķauditorija: [nedzirdama]. 488 00:24:18,400 --> 00:24:18,850 >> Jason Hiršhorns: Jā. 489 00:24:18,850 --> 00:24:19,290 Ņemot vērā šo - 490 00:24:19,290 --> 00:24:20,090 Marcus ir taisnība. 491 00:24:20,090 --> 00:24:21,330 Mēs varējām varbūt izdarīt kaut kas atšķirīgs. 492 00:24:21,330 --> 00:24:25,360 Bet, ņemot vērā, ka mēs esam izveidojuši, šeit mums vajadzētu atbrīvot un pēc tam atgriezties. 493 00:24:25,360 --> 00:24:26,774 Oh boy. 494 00:24:26,774 --> 00:24:30,080 Ir tas, ka labāk? 495 00:24:30,080 --> 00:24:31,850 Kā tas ir? 496 00:24:31,850 --> 00:24:33,100 OK. 497 00:24:33,100 --> 00:24:35,360 498 00:24:35,360 --> 00:24:37,640 Bezmaksas un tad ko mēs atgriešanās, [dzirdams]? 499 00:24:37,640 --> 00:24:41,330 500 00:24:41,330 --> 00:24:44,110 OK. 501 00:24:44,110 --> 00:24:45,360 Vai mēs trūkst kaut ko? 502 00:24:45,360 --> 00:24:53,500 503 00:24:53,500 --> 00:24:59,650 Tātad, ja mēs sekotu iepriekšējas mezglu? 504 00:24:59,650 --> 00:25:02,370 >> Mērķauditorija: Es domāju, ka tas varētu iet pēc tam izveidot jaunu mezglu. 505 00:25:02,370 --> 00:25:02,600 >> Jason Hiršhorns: OK. 506 00:25:02,600 --> 00:25:03,940 Tāpēc sākumā mēs, iespējams - 507 00:25:03,940 --> 00:25:07,175 jā, mēs varam izveidot rādītāju uz jaunu mezglu, piemēram, iepriekšējā mezgla rādītājs un 508 00:25:07,175 --> 00:25:09,600 Pašreizējā mezglā rādītājs. 509 00:25:09,600 --> 00:25:12,640 Tā ļauj ievietot to šeit. 510 00:25:12,640 --> 00:25:15,610 511 00:25:15,610 --> 00:25:26,900 Izveidot pašreizējā un iepriekšējā norādes uz mezgliem. 512 00:25:26,900 --> 00:25:28,955 Bet, kad mēs pielāgot šīs norādes? 513 00:25:28,955 --> 00:25:30,205 Kur mēs to darām kodu? 514 00:25:30,205 --> 00:25:33,830 515 00:25:33,830 --> 00:25:34,160 Jeff? 516 00:25:34,160 --> 00:25:35,170 >> Mērķauditorija: - vērtības apstākļi? 517 00:25:35,170 --> 00:25:36,420 >> Jason Hiršhorns: Kura viens īpaši? 518 00:25:36,420 --> 00:25:39,862 519 00:25:39,862 --> 00:25:40,720 >> Mērķauditorija: Es esmu tikai sajaukt. 520 00:25:40,720 --> 00:25:44,200 Ja vērtība ir lielāka nekā šajā mezglā, nav tas nozīmē, ka jūs vēlaties doties 521 00:25:44,200 --> 00:25:45,320 uz nākamo mezglu? 522 00:25:45,320 --> 00:25:49,515 >> Jason Hirschhorn: Tātad, ja mūsu vērtība ir lielāka nekā vērtība šajā mezglā. 523 00:25:49,515 --> 00:25:52,130 >> Mērķauditorija: Jā, tad jūs vēlaties, lai iet tālāk uz leju līniju, vai ne? 524 00:25:52,130 --> 00:25:52,590 >> Jason Hirschhorn: Right. 525 00:25:52,590 --> 00:25:53,840 Tāpēc mums nav ievietot to šeit. 526 00:25:53,840 --> 00:25:58,430 527 00:25:58,430 --> 00:26:03,240 Ja vērtība ir mazāka par šo mezglā, tad mēs ejam uz nākamo mezglu - vai tad mēs 528 00:26:03,240 --> 00:26:03,835 ievietot iepriekš. 529 00:26:03,835 --> 00:26:05,966 >> Mērķauditorija: Pagaidiet, kas ir šī mezglu un kas ir vērtība? 530 00:26:05,966 --> 00:26:08,510 531 00:26:08,510 --> 00:26:09,280 >> Jason Hirschhorn: Labs jautājums. 532 00:26:09,280 --> 00:26:13,260 Vērtība par šo funkciju definīcija ir tas, ko mēs esam dota. 533 00:26:13,260 --> 00:26:16,910 Tā vērtība ir skaitlis, mēs esam dota. 534 00:26:16,910 --> 00:26:21,120 Tātad, ja vērtība ir mazāka par šo mezglā, mums ir nepieciešams laiks, lai ievietotu. 535 00:26:21,120 --> 00:26:24,575 Ja vērtība ir lielāka nekā šajā mezglā, mēs ejam uz nākamo mezglu. 536 00:26:24,575 --> 00:26:26,790 Un atpakaļ uz sākotnējo jautājumu, lai gan, ja - 537 00:26:26,790 --> 00:26:29,060 >> Mērķauditorija: ja vērtība ir lielāka par šo mezglu. 538 00:26:29,060 --> 00:26:30,310 >> Jason Hirschhorn: Un tā Ko mēs darām šeit? 539 00:26:30,310 --> 00:26:36,790 540 00:26:36,790 --> 00:26:38,160 Salds. 541 00:26:38,160 --> 00:26:38,860 Tas ir pareizi. 542 00:26:38,860 --> 00:26:41,370 Es esmu tikai gatavojas rakstīt atjaunināt norādes. 543 00:26:41,370 --> 00:26:44,010 Bet jā, ar pašreizējo jūs varētu atjaunot to 544 00:26:44,010 --> 00:26:46,080 norāda uz nākamo. 545 00:26:46,080 --> 00:26:47,330 Kaut kas cits, mēs esam trūkst? 546 00:26:47,330 --> 00:26:52,710 547 00:26:52,710 --> 00:26:54,940 Tāpēc es esmu gatavojas rakstīt šo kodu gedit. 548 00:26:54,940 --> 00:26:58,375 Un, kamēr es to izdarītu, jums var būt pāris minūtes, lai strādā uz kodēšanu 549 00:26:58,375 --> 00:28:19,240 tas C. 550 00:28:19,240 --> 00:28:20,940 >> Tāpēc man ir ievadi pseudocode. 551 00:28:20,940 --> 00:28:22,940 Quick piezīmi, pirms mēs sāktu. 552 00:28:22,940 --> 00:28:25,560 Mums var nebūt spējīgs pilnīgi pabeigt to visu 553 00:28:25,560 --> 00:28:27,300 Trīs no šīm funkcijām. 554 00:28:27,300 --> 00:28:30,630 Ir pareizi risinājumus tām ka es e-pastu, lai jums puiši 555 00:28:30,630 --> 00:28:33,730 pēc iedaļas, un tas būs publicēta CS50.net. 556 00:28:33,730 --> 00:28:35,640 Tāpēc es nedomāju, iesakām jums iet apskatīt sadaļās. 557 00:28:35,640 --> 00:28:40,550 Es aicinu jūs izmēģināt šo par savu pieder, un pēc tam izmantot šo praksi 558 00:28:40,550 --> 00:28:41,760 problēmas, lai pārbaudītu savas atbildes. 559 00:28:41,760 --> 00:28:47,070 Tie visi ir paredzēti, lai rūpīgi attiecas uz un ievērot to, 560 00:28:47,070 --> 00:28:48,400 kas jums jādara, par problēmu kopumu. 561 00:28:48,400 --> 00:28:53,820 Tāpēc es aicinu jūs praktizēt šo par savu un pēc tam izmantot šo kodu, lai 562 00:28:53,820 --> 00:28:54,660 pārbaudīt jūsu atbildes. 563 00:28:54,660 --> 00:28:57,060 Tāpēc, ka es vēlos, lai pārietu uz hash galdi kādā brīdī sadaļā. 564 00:28:57,060 --> 00:28:58,150 Lai mēs varētu saņemt caur to visu. 565 00:28:58,150 --> 00:28:59,960 Bet mēs darīsim, cik mēs varam tagad. 566 00:28:59,960 --> 00:29:00,370 >> OK. 567 00:29:00,370 --> 00:29:01,960 Ļaujiet mums sākas. 568 00:29:01,960 --> 00:29:04,770 Asam, kā mēs izveidot jaunu mezglu? 569 00:29:04,770 --> 00:29:06,810 >> Mērķauditorija: Jūs struct *. 570 00:29:06,810 --> 00:29:09,640 >> Jason Hirschhorn: Tātad mums ir, ka šeit. 571 00:29:09,640 --> 00:29:10,040 Ak, piedodiet. 572 00:29:10,040 --> 00:29:13,530 Jūs sakot struct *. 573 00:29:13,530 --> 00:29:17,260 >> Mērķauditorija: Un tad [? kind?] mezgla vai c mezglu. 574 00:29:17,260 --> 00:29:17,780 >> Jason Hirschhorn: OK. 575 00:29:17,780 --> 00:29:19,740 Es esmu gatavojas to nosaukt new_node lai mēs varētu palikt konsekventa. 576 00:29:19,740 --> 00:29:22,646 577 00:29:22,646 --> 00:29:33,180 >> Mērķauditorija: Un jūs vēlaties, lai noteiktu, ka uz galvas, pirmo mezglu. 578 00:29:33,180 --> 00:29:33,580 >> Jason Hirschhorn: OK. 579 00:29:33,580 --> 00:29:37,290 Tāpēc tagad tas norādot to - tā tas nav izveidojusi jaunu mezglu vēl. 580 00:29:37,290 --> 00:29:41,380 Tas ir tikai norādot uz pirmā mezgla sarakstā. 581 00:29:41,380 --> 00:29:42,630 Kā es varu izveidot jaunu mezglu? 582 00:29:42,630 --> 00:29:45,490 583 00:29:45,490 --> 00:29:48,070 Ja man ir nepieciešama vieta, lai izveidotu jaunu mezglu. 584 00:29:48,070 --> 00:29:49,230 Malloc. 585 00:29:49,230 --> 00:29:51,710 Un cik liels? 586 00:29:51,710 --> 00:30:00,390 >> Mērķauditorija: no struktūrai lieluma. 587 00:30:00,390 --> 00:30:01,150 >> Jason Hirschhorn: izmērs struktūrai. 588 00:30:01,150 --> 00:30:02,400 Un to, kas struktūrai sauc? 589 00:30:02,400 --> 00:30:09,670 590 00:30:09,670 --> 00:30:09,840 >> Mērķauditorija: Mezgls? 591 00:30:09,840 --> 00:30:11,640 >> Jason Hirschhorn: Node. 592 00:30:11,640 --> 00:30:17,640 Tāpēc malloc (sizeof (mezgls)); dod mums telpu. 593 00:30:17,640 --> 00:30:19,740 Un tas ir līnija - 594 00:30:19,740 --> 00:30:21,740 viena lieta ir nepareizs šajā pozīcijā. 595 00:30:21,740 --> 00:30:24,430 Ir new_node rādītāju uz struct? 596 00:30:24,430 --> 00:30:25,650 Tas ir sugas vārds. 597 00:30:25,650 --> 00:30:26,520 Kas tas ir - 598 00:30:26,520 --> 00:30:27,450 mezglā, tieši tā. 599 00:30:27,450 --> 00:30:29,340 Tas ir mezglā *. 600 00:30:29,340 --> 00:30:33,010 Un ko mēs darām uzreiz pēc mēs malloc kaut ko, Asan? 601 00:30:33,010 --> 00:30:34,476 Kas ir pirmā lieta, ko mēs darām? 602 00:30:34,476 --> 00:30:38,850 603 00:30:38,850 --> 00:30:40,320 Ko darīt, ja tas nedarbojas? 604 00:30:40,320 --> 00:30:42,430 >> Mērķauditorija: Ak, pārbaudiet, vai tas norāda uz mezglu? 605 00:30:42,430 --> 00:30:43,310 >> Jason Hirschhorn: Tieši tā. 606 00:30:43,310 --> 00:30:46,750 Tātad, ja jūs new_node vienāds vienāds null, ko mēs darām? 607 00:30:46,750 --> 00:30:51,650 608 00:30:51,650 --> 00:30:54,820 Tas atgriež bool, šo funkciju. 609 00:30:54,820 --> 00:30:57,760 Tieši tā. 610 00:30:57,760 --> 00:30:58,450 Izskatās labi. 611 00:30:58,450 --> 00:30:59,680 Jebkas, lai pievienotu tur? 612 00:30:59,680 --> 00:31:00,670 Mēs pievienot lietas beigās. 613 00:31:00,670 --> 00:31:03,160 Bet tas līdz šim izskatās labi. 614 00:31:03,160 --> 00:31:06,170 Izveidot pašreizējo un iepriekšējās norādes. 615 00:31:06,170 --> 00:31:08,650 Michael, kā es varu darīt? 616 00:31:08,650 --> 00:31:12,810 >> Mērķauditorija: Jums būtu darīt mezglu *. 617 00:31:12,810 --> 00:31:21,800 618 00:31:21,800 --> 00:31:25,502 Jūs ir veikt vienu nav par new_node bet 619 00:31:25,502 --> 00:31:26,905 mezgli mums jau ir. 620 00:31:26,905 --> 00:31:27,230 >> Jason Hirschhorn: OK. 621 00:31:27,230 --> 00:31:29,255 Tātad pašreizējā mezglu mēs esam par. 622 00:31:29,255 --> 00:31:30,505 Es aicinu šo Valūta. 623 00:31:30,505 --> 00:31:39,650 624 00:31:39,650 --> 00:31:39,770 Labi. 625 00:31:39,770 --> 00:31:41,620 Mēs esam nolēmuši, mēs gribam, lai saglabātu divi, jo mums ir nepieciešams zināt 626 00:31:41,620 --> 00:31:42,870 kas ir pirms tā. 627 00:31:42,870 --> 00:31:45,770 628 00:31:45,770 --> 00:31:47,020 Ko viņiem inicializēts? 629 00:31:47,020 --> 00:31:49,874 630 00:31:49,874 --> 00:31:54,180 >> Mērķauditorija: To vērtība mūsu sarakstā. 631 00:31:54,180 --> 00:31:58,090 >> Jason Hirschhorn: Tātad, kas ir Pirmā lieta, mūsu sarakstā? 632 00:31:58,090 --> 00:32:04,050 Vai to, kā mēs zinām, kur sākumā mūsu sarakstā? 633 00:32:04,050 --> 00:32:08,015 >> Mērķauditorija: Vai nav pagājis funkcijā? 634 00:32:08,015 --> 00:32:08,466 >> Jason Hirschhorn: Right. 635 00:32:08,466 --> 00:32:09,716 Tas tika pieņemts tieši šeit. 636 00:32:09,716 --> 00:32:15,910 637 00:32:15,910 --> 00:32:18,980 Tātad, ja tas ir pagājis uz funkciju, sākums saraksta, ko mums vajadzētu 638 00:32:18,980 --> 00:32:21,270 noteikt strāvas stiprums? 639 00:32:21,270 --> 00:32:22,110 >> Mērķauditorija: List. 640 00:32:22,110 --> 00:32:22,900 >> Jason Hirschhorn: List. 641 00:32:22,900 --> 00:32:24,090 Tas ir tieši labi. 642 00:32:24,090 --> 00:32:26,290 Tagad tas ir adresi sākums mūsu saraksta. 643 00:32:26,290 --> 00:32:28,450 Un ko par iepriekšējo? 644 00:32:28,450 --> 00:32:31,920 >> Mērķauditorija: List mīnus viens? 645 00:32:31,920 --> 00:32:32,690 >> Jason Hirschhorn: Ir nekas pirms tam. 646 00:32:32,690 --> 00:32:34,580 Tātad, ko mēs varam darīt, lai neizsaka neko? 647 00:32:34,580 --> 00:32:35,050 >> Mērķauditorija: Null. 648 00:32:35,050 --> 00:32:35,450 >> Jason Hirschhorn: Jā. 649 00:32:35,450 --> 00:32:37,950 Tas izklausās kā laba ideja. 650 00:32:37,950 --> 00:32:38,360 Perfekta. 651 00:32:38,360 --> 00:32:39,630 Paldies. 652 00:32:39,630 --> 00:32:42,850 Iet cauri sarakstam. 653 00:32:42,850 --> 00:32:45,490 Konstantīns, cik ilgi mēs iet cauri sarakstam? 654 00:32:45,490 --> 00:32:49,010 >> Mērķauditorija: kamēr mēs sasniegt null. 655 00:32:49,010 --> 00:32:49,390 >> Jason Hirschhorn: OK. 656 00:32:49,390 --> 00:32:50,430 Tātad, ja, bet, lai cilpa. 657 00:32:50,430 --> 00:32:52,200 Ko mēs darām? 658 00:32:52,200 --> 00:32:53,320 >> Mērķauditorija: Varbūt par cilpu? 659 00:32:53,320 --> 00:32:53,910 >> Jason Hirschhorn: Darīsim par cilpu. 660 00:32:53,910 --> 00:32:55,870 OK. 661 00:32:55,870 --> 00:33:02,465 >> Mērķauditorija: Un mēs teiksim - 662 00:33:02,465 --> 00:33:09,764 663 00:33:09,764 --> 00:33:13,390 līdz kārtējā rādītājs nav vienāds ar nulli. 664 00:33:13,390 --> 00:33:19,160 >> Jason Hirschhorn: Tātad, ja mēs zinām, stāvoklis, kā mēs varam rakstīt cilpu 665 00:33:19,160 --> 00:33:21,740 pamatojoties off šis nosacījums. 666 00:33:21,740 --> 00:33:24,380 Kādu cilpas mums vajadzētu izmantot? 667 00:33:24,380 --> 00:33:25,260 >> Mērķauditorija: gan. 668 00:33:25,260 --> 00:33:25,590 >> Jason Hirschhorn: Jā. 669 00:33:25,590 --> 00:33:27,130 Tas padara daudz nozīmē, pamatojoties off to, ko jūs teicāt. 670 00:33:27,130 --> 00:33:29,430 Ja mēs vienkārši vēlamies, lai dotos uz mums tas būtu tikai zinu, ka lieta, tas padarītu 671 00:33:29,430 --> 00:33:31,680 jēga to darīt, kamēr cilpa. 672 00:33:31,680 --> 00:33:39,880 Kaut arī pašreizējais nav vienāda null, ja vērtība ir mazāka par šo mezglā. 673 00:33:39,880 --> 00:33:41,650 Akshar, dod man šo līniju. 674 00:33:41,650 --> 00:33:48,810 675 00:33:48,810 --> 00:33:56,955 >> Mērķauditorija: Ja pašreizējā-> n n ir mazāks par vērtību. 676 00:33:56,955 --> 00:34:00,170 677 00:34:00,170 --> 00:34:03,260 Vai mainīt to. 678 00:34:03,260 --> 00:34:06,140 Slēdzis, kas grupā. 679 00:34:06,140 --> 00:34:06,620 >> Jason Hirschhorn: Sorry. 680 00:34:06,620 --> 00:34:08,760 >> Mērķauditorija: Mainīt kronšteinu. 681 00:34:08,760 --> 00:34:10,914 >> Jason Hirschhorn: Tātad, ja tas ir pārsniedz vērtību. 682 00:34:10,914 --> 00:34:18,719 683 00:34:18,719 --> 00:34:22,120 Jo tas ir mulsinoši ar komentēt iepriekš, es esmu gatavojas darīt. 684 00:34:22,120 --> 00:34:22,480 Bet jā. 685 00:34:22,480 --> 00:34:25,125 Ja mūsu vērtība ir mazāka par šo mezglā, ko mēs darām? 686 00:34:25,125 --> 00:34:25,540 Oh. 687 00:34:25,540 --> 00:34:26,710 Man ir taisnība šeit. 688 00:34:26,710 --> 00:34:27,960 Ievietot iepriekš. 689 00:34:27,960 --> 00:34:32,080 690 00:34:32,080 --> 00:34:32,370 OK. 691 00:34:32,370 --> 00:34:33,933 Kā mēs to darām? 692 00:34:33,933 --> 00:34:34,900 >> Mērķauditorija: Vai tā joprojām mani? 693 00:34:34,900 --> 00:34:36,150 >> Jason Hirschhorn: Jā. 694 00:34:36,150 --> 00:34:38,520 695 00:34:38,520 --> 00:34:39,770 >> Mērķauditorija: You - 696 00:34:39,770 --> 00:34:42,909 697 00:34:42,909 --> 00:34:44,159 new_node-> nākamo. 698 00:34:44,159 --> 00:34:46,770 699 00:34:46,770 --> 00:34:50,163 >> Jason Hirschhorn: Tātad, kas ir kas notiek, lai ir vienādi? 700 00:34:50,163 --> 00:34:52,070 >> Mērķauditorija: Tas būs vienāda strāvu. 701 00:34:52,070 --> 00:34:53,889 >> Jason Hirschhorn: Tieši tā. 702 00:34:53,889 --> 00:34:55,730 Un tā otra - 703 00:34:55,730 --> 00:34:56,730 ko vēl mums ir nepieciešams, lai atjauninātu? 704 00:34:56,730 --> 00:34:59,982 >> Mērķauditorija: Pārbaudiet, vai pagātnes vienāds null. 705 00:34:59,982 --> 00:35:01,870 >> Jason Hirschhorn: Ja prev - 706 00:35:01,870 --> 00:35:03,730 tāpēc, ja iepriekšējais vienāds null. 707 00:35:03,730 --> 00:35:05,990 >> Mērķauditorija: Tas nozīmē, ka tas notiek kļūt galvu. 708 00:35:05,990 --> 00:35:06,780 >> Jason Hirschhorn: Tas nozīmē tas ir kļuvis galvu. 709 00:35:06,780 --> 00:35:07,620 Tātad, ko mēs darām? 710 00:35:07,620 --> 00:35:12,510 >> Mērķauditorija: Mēs galvu vienāds new_node. 711 00:35:12,510 --> 00:35:16,690 >> Jason Hirschhorn: Head vienāds new_node. 712 00:35:16,690 --> 00:35:20,540 Un kāpēc galvu šeit, nav sarakstā? 713 00:35:20,540 --> 00:35:24,940 >> Mērķauditorija: Tāpēc, ka galva ir globāla mainīgais, kas ir sākuma vietā. 714 00:35:24,940 --> 00:35:26,190 >> Jason Hirschhorn: Sweet. 715 00:35:26,190 --> 00:35:33,750 716 00:35:33,750 --> 00:35:34,170 OK. 717 00:35:34,170 --> 00:35:36,150 Un - 718 00:35:36,150 --> 00:35:53,796 >> Mērķauditorija: Tad jūs vēl prev-> Nākamais vienāds new_node. 719 00:35:53,796 --> 00:35:55,080 Un tad jūs atpakaļ taisnība. 720 00:35:55,080 --> 00:35:59,560 721 00:35:59,560 --> 00:36:02,700 >> Jason Hirschhorn: Kur mēs noteikti new_node beigām? 722 00:36:02,700 --> 00:36:04,850 >> Mērķauditorija: Es gribētu - 723 00:36:04,850 --> 00:36:06,180 Es noteikts, ka sākumā. 724 00:36:06,180 --> 00:36:07,430 >> Jason Hirschhorn: Tātad, ko līnijas? 725 00:36:07,430 --> 00:36:10,000 726 00:36:10,000 --> 00:36:12,598 >> Mērķauditorija: Pēc ja paziņojums pārbaudīt, ja tas ir zināms. 727 00:36:12,598 --> 00:36:13,057 >> Jason Hirschhorn: Tieši šeit? 728 00:36:13,057 --> 00:36:18,335 >> Mērķauditorija: es gribētu darīt new_node-> n vienāds ar vērtību. 729 00:36:18,335 --> 00:36:19,585 >> Jason Hirschhorn: Izklausās labi. 730 00:36:19,585 --> 00:36:21,740 731 00:36:21,740 --> 00:36:25,090 Iespējams, tas ir jēga - mums nav ir nepieciešams zināt, ko sarakstu mēs esam par 732 00:36:25,090 --> 00:36:26,280 jo mēs esam tikai nodarbojas ar vienu sarakstu. 733 00:36:26,280 --> 00:36:29,560 Tāpēc labāk funkcija deklarācija Tas ir tikai, lai atbrīvotos no šīs 734 00:36:29,560 --> 00:36:34,360 pilnīgi un tikai ievietot vērtība uz galvas. 735 00:36:34,360 --> 00:36:35,930 Mums pat nav nepieciešams zināt ko sarakstā mēs esam iekšā 736 00:36:35,930 --> 00:36:39,140 Bet es turpinās to tagad tad mainīt to uz atjaunināšanu 737 00:36:39,140 --> 00:36:42,590 slaidus un kods. 738 00:36:42,590 --> 00:36:44,980 Tā, ka izskatās labi tagad. 739 00:36:44,980 --> 00:36:46,560 Ja vērtības - kas var darīt šo līniju? 740 00:36:46,560 --> 00:36:47,810 Ja - 741 00:36:47,810 --> 00:36:52,240 742 00:36:52,240 --> 00:36:53,840 Ko mēs darām šeit, Noah. 743 00:36:53,840 --> 00:36:57,890 744 00:36:57,890 --> 00:37:07,100 >> Mērķauditorija: ja vērtība ir lielāka nekā Valūta-> n - 745 00:37:07,100 --> 00:37:16,830 746 00:37:16,830 --> 00:37:18,240 >> Jason Hirschhorn: Kā mēs ejam uz nākamo mezglu? 747 00:37:18,240 --> 00:37:27,760 748 00:37:27,760 --> 00:37:30,530 >> Mērķauditorija: Valūta-> n vienāds ar new_node. 749 00:37:30,530 --> 00:37:37,630 750 00:37:37,630 --> 00:37:39,195 >> Jason Hirschhorn: So n kāda daļa no struct? 751 00:37:39,195 --> 00:37:43,065 752 00:37:43,065 --> 00:37:46,020 Skaitlim. 753 00:37:46,020 --> 00:37:50,420 Un new_node ir rādītājs uz mezglu. 754 00:37:50,420 --> 00:37:51,880 Tātad, kāda daļa no Augstākais mums vajadzētu atjaunināt? 755 00:37:51,880 --> 00:38:03,900 756 00:38:03,900 --> 00:38:05,400 Ja nav n, tad kāda no otras puses? 757 00:38:05,400 --> 00:38:21,680 758 00:38:21,680 --> 00:38:22,810 Noah, kas ir otra daļa. 759 00:38:22,810 --> 00:38:23,570 >> Mērķauditorija: Ak, nākamais. 760 00:38:23,570 --> 00:38:25,645 >> Jason Hirschhorn: Next, tieši tā. 761 00:38:25,645 --> 00:38:26,410 Tieši tā. 762 00:38:26,410 --> 00:38:28,770 Nākamais ir pareizais. 763 00:38:28,770 --> 00:38:31,540 Un ko vēl mums vajag atjaunināt, Noah? 764 00:38:31,540 --> 00:38:32,840 >> Mērķauditorija: The norādes. 765 00:38:32,840 --> 00:38:34,840 >> Jason Hirschhorn: So mēs atjaunināts strāvu. 766 00:38:34,840 --> 00:38:36,090 >> Mērķauditorija: Iepriekšējā-> nākamo. 767 00:38:36,090 --> 00:38:48,160 768 00:38:48,160 --> 00:38:49,410 >> Jason Hirschhorn: Jā. 769 00:38:49,410 --> 00:38:57,465 770 00:38:57,465 --> 00:38:58,370 Labi, mēs pauze. 771 00:38:58,370 --> 00:39:02,200 Kas var palīdzēt mums šeit? 772 00:39:02,200 --> 00:39:03,385 Manu, ko mums vajadzētu darīt? 773 00:39:03,385 --> 00:39:05,615 >> Mērķauditorija: Tev iestatīt tas ir vienāds ar Augstākais-> nākamo. 774 00:39:05,615 --> 00:39:09,110 775 00:39:09,110 --> 00:39:11,630 Bet to, ka pirms iepriekšējās rindas. 776 00:39:11,630 --> 00:39:12,880 >> Jason Hirschhorn: OK. 777 00:39:12,880 --> 00:39:16,590 778 00:39:16,590 --> 00:39:18,260 Kaut kas cits? 779 00:39:18,260 --> 00:39:19,170 Akshar. 780 00:39:19,170 --> 00:39:22,680 >> Mērķauditorija: Es nedomāju, ka tu esi paredzēts mainīt Augstākais-> nākamo. 781 00:39:22,680 --> 00:39:29,270 Es domāju, ka jūs domāts darīt Valūta vienāds Valūta-> blakus, lai dotos uz nākamo mezglu. 782 00:39:29,270 --> 00:39:30,500 >> Jason Hirschhorn: Tik žēl, ja? 783 00:39:30,500 --> 00:39:32,680 Uz kāda line? 784 00:39:32,680 --> 00:39:33,420 Šī līnija? 785 00:39:33,420 --> 00:39:33,750 >> Mērķauditorija: Jā. 786 00:39:33,750 --> 00:39:35,745 Padarīt Valūta vienāds Valūta-> nākamo. 787 00:39:35,745 --> 00:39:39,690 788 00:39:39,690 --> 00:39:43,360 >> Jason Hirschhorn: Tātad tas ir pareizs tāpēc, ka strāva ir 789 00:39:43,360 --> 00:39:45,220 rādītāju uz mezglu. 790 00:39:45,220 --> 00:39:48,550 Un mēs gribam, lai norādītu uz nākamo mezgla, kas kļūst pašlaik 791 00:39:48,550 --> 00:39:49,930 norādīja uz. 792 00:39:49,930 --> 00:39:54,410 Valūta pati ir blakus. 793 00:39:54,410 --> 00:39:58,620 Bet, ja mēs atjaunināt curr.next, mēs būtu atjaunināt faktisko piezīmi 794 00:39:58,620 --> 00:40:01,430 pati, nevis tur, kur tas rādītājs bija vērsta. 795 00:40:01,430 --> 00:40:02,680 Ko par šo līniju, though. 796 00:40:02,680 --> 00:40:05,160 797 00:40:05,160 --> 00:40:07,330 Avi? 798 00:40:07,330 --> 00:40:09,590 >> Mērķauditorija: Iepriekšējā-> next vienāds Valūta. 799 00:40:09,590 --> 00:40:12,500 800 00:40:12,500 --> 00:40:19,440 >> Jason Hirschhorn: Tātad vēlreiz, ja iepriekšējais ir rādītāju uz mezglu, iepriekšēja-> next ir 801 00:40:19,440 --> 00:40:23,020 faktiskais rādītājs mezglu. 802 00:40:23,020 --> 00:40:27,190 Tāpēc tas būtu atjaunināšana Rādītājs mezglā līdz Valūta. 803 00:40:27,190 --> 00:40:28,570 Mēs nevēlamies, lai atjauninātu rādītājs kādā mezglā. 804 00:40:28,570 --> 00:40:30,570 Mēs vēlamies, lai atjauninātu iepriekšējā. 805 00:40:30,570 --> 00:40:31,850 Tātad, kā mēs to darām? 806 00:40:31,850 --> 00:40:34,250 >> Mērķauditorija: Tas vienkārši prev. 807 00:40:34,250 --> 00:40:34,565 >> Jason Hirschhorn: Right. 808 00:40:34,565 --> 00:40:35,560 Iepriekšējā ir pointers uz mezglu. 809 00:40:35,560 --> 00:40:38,750 Tagad mēs esam mainot to jaunu rādītāju uz mezglu. 810 00:40:38,750 --> 00:40:40,830 OK Ļaujiet mums virzīties uz leju. 811 00:40:40,830 --> 00:40:41,940 Visbeidzot, šis pēdējais nosacījums. 812 00:40:41,940 --> 00:40:44,896 Jeff, ko mēs darām šeit? 813 00:40:44,896 --> 00:40:47,515 >> Mērķauditorija: Ja vērtība ir vienāds ar Curr-> n. 814 00:40:47,515 --> 00:40:51,030 815 00:40:51,030 --> 00:40:51,300 >> Jason Hirschhorn: Sorry. 816 00:40:51,300 --> 00:40:52,372 Ak, mans Dievs. 817 00:40:52,372 --> 00:40:54,330 Kas? 818 00:40:54,330 --> 00:40:55,580 Vērtība == Valūta-> n. 819 00:40:55,580 --> 00:41:01,050 820 00:41:01,050 --> 00:41:02,300 Ko mēs darām? 821 00:41:02,300 --> 00:41:04,760 822 00:41:04,760 --> 00:41:10,950 >> Mērķauditorija: Jūs vēlaties atbrīvot mūsu new_node, un tad jūs atgriezties viltus. 823 00:41:10,950 --> 00:41:21,410 824 00:41:21,410 --> 00:41:23,460 >> Jason Hirschhorn: Tas ir tas, ko Līdz šim mēs esam uzrakstījuši. 825 00:41:23,460 --> 00:41:25,710 Vai kāds ir kaut ko pievienot pirms mēs? 826 00:41:25,710 --> 00:41:35,460 827 00:41:35,460 --> 00:41:35,710 OK. 828 00:41:35,710 --> 00:41:36,960 Mēģināsim to. 829 00:41:36,960 --> 00:41:44,180 830 00:41:44,180 --> 00:41:46,110 Kontrole var sasniegt beigām of a non-neesošu funkciju. 831 00:41:46,110 --> 00:41:48,310 Avi, kas notiek? 832 00:41:48,310 --> 00:41:51,380 >> Mērķauditorija: Vai jūs vajadzēja likt atgriešanos taisnība ārpus kamēr cilpa? 833 00:41:51,380 --> 00:41:53,900 834 00:41:53,900 --> 00:41:54,400 >> Jason Hirschhorn: Es nezinu. 835 00:41:54,400 --> 00:41:54,780 Vai jūs vēlaties, lai es? 836 00:41:54,780 --> 00:41:55,520 >> Mērķauditorija: Nekad prātā. 837 00:41:55,520 --> 00:41:56,350 Nē. 838 00:41:56,350 --> 00:41:57,180 >> Jason Hirschhorn: Akshar? 839 00:41:57,180 --> 00:41:59,460 >> Mērķauditorija: Es domāju, ka jums nozīmē likts atgriezties viltus beigās 840 00:41:59,460 --> 00:42:02,230 un kamēr cilpa. 841 00:42:02,230 --> 00:42:03,270 >> Jason Hirschhorn: Tātad, ja Vai jūs vēlaties, lai tas iet? 842 00:42:03,270 --> 00:42:05,270 >> Mērķauditorija: Tāpat ārpus kamēr cilpa. 843 00:42:05,270 --> 00:42:08,800 Tātad, ja jūs izejat no kamēr cilpa, kas nozīmē ka jūs esat sasnieguši un 844 00:42:08,800 --> 00:42:09,980 nekas nav noticis. 845 00:42:09,980 --> 00:42:10,410 >> Jason Hirschhorn: OK. 846 00:42:10,410 --> 00:42:12,340 Tātad, ko mēs darām šeit? 847 00:42:12,340 --> 00:42:13,702 >> Mērķauditorija: Tu atgriezties viltus tur, kā labi. 848 00:42:13,702 --> 00:42:15,040 >> Jason Hirschhorn: Ak, mēs darīt to abās vietās? 849 00:42:15,040 --> 00:42:15,650 >> Mērķauditorija: Jā. 850 00:42:15,650 --> 00:42:16,900 >> Jason Hirschhorn: OK. 851 00:42:16,900 --> 00:42:24,840 852 00:42:24,840 --> 00:42:26,160 Vai mēs ejam? 853 00:42:26,160 --> 00:42:26,980 Ak, mans Dievs. 854 00:42:26,980 --> 00:42:27,290 Piedod. 855 00:42:27,290 --> 00:42:28,480 Es atvainojos par ekrāna. 856 00:42:28,480 --> 00:42:30,530 Tas ir sava veida freaking out uz mums. 857 00:42:30,530 --> 00:42:31,520 Tāpēc izvēlēties iespēju. 858 00:42:31,520 --> 00:42:35,260 Nulle, vienu kodu, iziet no programmas. 859 00:42:35,260 --> 00:42:36,700 Viens ievieto kaut ko. 860 00:42:36,700 --> 00:42:37,990 Pieņemsim ievietot trīs. 861 00:42:37,990 --> 00:42:42,900 862 00:42:42,900 --> 00:42:45,380 Iekļaut nebija veiksmīga. 863 00:42:45,380 --> 00:42:46,500 Es esmu gatavojas izdrukāt. 864 00:42:46,500 --> 00:42:48,050 Man nav neko. 865 00:42:48,050 --> 00:42:48,450 OK. 866 00:42:48,450 --> 00:42:50,250 Varbūt, ka bija tikai parazīts. 867 00:42:50,250 --> 00:42:52,810 Ievietojiet vienu. 868 00:42:52,810 --> 00:42:55,770 Nav veiksmīga. 869 00:42:55,770 --> 00:42:57,470 OK. 870 00:42:57,470 --> 00:43:02,400 Pieņemsim palaist caur gdb tiešām ātri lai pārbaudītu, kas notiek. 871 00:43:02,400 --> 00:43:06,055 >> Atcerieties gdb. / Nosaukums jūsu Programma izpaužas mūs gdb. 872 00:43:06,055 --> 00:43:07,610 Ir tas, ka daudz, lai rīkotos? 873 00:43:07,610 --> 00:43:08,560 Mirgo? 874 00:43:08,560 --> 00:43:10,400 Droši vien. 875 00:43:10,400 --> 00:43:12,760 Aizveriet acis, un veikt dažas dziļas breaths, ja jums ir apnicis 876 00:43:12,760 --> 00:43:13,580 skatoties uz to. 877 00:43:13,580 --> 00:43:14,200 Es esmu gdb. 878 00:43:14,200 --> 00:43:15,830 Kas ir pirmā lieta, ko es darīt gdb? 879 00:43:15,830 --> 00:43:17,050 Mēs esam ieguvuši, lai noskaidrotu kas notiek šeit. 880 00:43:17,050 --> 00:43:17,310 Paskatīsimies. 881 00:43:17,310 --> 00:43:21,650 Mums ir sešas minūtes, lai skaitlis to, kas notiek. 882 00:43:21,650 --> 00:43:22,900 Break galvenais. 883 00:43:22,900 --> 00:43:25,950 884 00:43:25,950 --> 00:43:28,130 Un tad ko man darīt? 885 00:43:28,130 --> 00:43:29,180 Carlos? 886 00:43:29,180 --> 00:43:31,060 Palaist. 887 00:43:31,060 --> 00:43:32,250 OK. 888 00:43:32,250 --> 00:43:34,160 Pieņemsim izvēlēties iespēju. 889 00:43:34,160 --> 00:43:36,330 Un ko N darīt? 890 00:43:36,330 --> 00:43:38,480 Nākamais. 891 00:43:38,480 --> 00:43:38,950 Jā. 892 00:43:38,950 --> 00:43:39,740 >> Mērķauditorija: Vai tad jūs pieminēt - 893 00:43:39,740 --> 00:43:45,230 nav jūs sakāt, ka galva, tas bija inicializēts ar nulli sākumā. 894 00:43:45,230 --> 00:43:47,140 Bet es domāju, jūs teicāt, ka bija OK. 895 00:43:47,140 --> 00:43:50,040 896 00:43:50,040 --> 00:43:52,640 >> Jason Hirschhorn: Iesim - aplūkosim gdb, un tad mēs brauksim atpakaļ. 897 00:43:52,640 --> 00:43:54,910 Bet tas izklausās kā jums jau ir dažas idejas par to, kas notiek. 898 00:43:54,910 --> 00:43:58,340 Tāpēc mēs vēlamies, lai ievietotu kaut ko. 899 00:43:58,340 --> 00:43:59,390 OK. 900 00:43:59,390 --> 00:44:00,150 Mēs esam ievietot. 901 00:44:00,150 --> 00:44:00,770 Ievadiet int. 902 00:44:00,770 --> 00:44:01,990 Mēs ievietot trīs. 903 00:44:01,990 --> 00:44:03,000 Un tad es esmu uz šīs līnijas. 904 00:44:03,000 --> 00:44:07,030 Kā es varu iet sākt atkļūdošanu ieliktnis zināma funkcija? 905 00:44:07,030 --> 00:44:08,280 Ak, mans Dievs. 906 00:44:08,280 --> 00:44:10,990 907 00:44:10,990 --> 00:44:12,240 Tas ir daudz. 908 00:44:12,240 --> 00:44:14,372 909 00:44:14,372 --> 00:44:16,445 Vai tas ir freaking daudz? 910 00:44:16,445 --> 00:44:19,696 911 00:44:19,696 --> 00:44:21,680 >> Mērķauditorija: Ak, tas nomira. 912 00:44:21,680 --> 00:44:22,930 >> Jason Hirschhorn: Es tikko izvilka to ārā. 913 00:44:22,930 --> 00:44:27,364 914 00:44:27,364 --> 00:44:28,310 OK. 915 00:44:28,310 --> 00:44:29,560 >> Mērķauditorija: Varbūt tas ir otrs gals stieples. 916 00:44:29,560 --> 00:44:37,000 917 00:44:37,000 --> 00:44:39,470 >> Jason Hirschhorn: Wow. 918 00:44:39,470 --> 00:44:42,330 Tā apakšējā līnija - 919 00:44:42,330 --> 00:44:43,470 ko tu teici? 920 00:44:43,470 --> 00:44:46,040 >> Mērķauditorija: Es teicu ironija tehnisko grūtības šajā klasē. 921 00:44:46,040 --> 00:44:46,410 >> Jason Hirschhorn: Es zinu. 922 00:44:46,410 --> 00:44:48,660 Ja vien man būtu kontrole pār šo daļu. 923 00:44:48,660 --> 00:44:49,910 [Dzirdams] 924 00:44:49,910 --> 00:44:54,430 925 00:44:54,430 --> 00:44:55,400 Tas izklausās lieliski. 926 00:44:55,400 --> 00:44:58,680 Kāpēc jūs puiši sāk domāt par tas, ko mēs varētu darīt nepareizi, 927 00:44:58,680 --> 00:45:01,140 un mēs būsim atpakaļ 90 sekundes. 928 00:45:01,140 --> 00:46:18,160 929 00:46:18,160 --> 00:46:23,010 >> Avica, es esmu gatavojas lūgt jums to, kā iet iekšā insert_node atkļūdot to. 930 00:46:23,010 --> 00:46:28,940 931 00:46:28,940 --> 00:46:31,460 Tātad, tas ir, ja mēs pēdējā left off. 932 00:46:31,460 --> 00:46:35,110 Kā es varu iet iekšā insert_node, Avica, pārbaudīt, kas notiek? 933 00:46:35,110 --> 00:46:36,360 Kas GDB komandu? 934 00:46:36,360 --> 00:46:41,050 935 00:46:41,050 --> 00:46:42,390 Pārtraukums neņemtu mani iekšā. 936 00:46:42,390 --> 00:46:46,200 937 00:46:46,200 --> 00:46:47,130 Vai Marquise zināt? 938 00:46:47,130 --> 00:46:48,240 >> Mērķauditorija: Kas? 939 00:46:48,240 --> 00:46:51,780 >> Jason Hirschhorn: Kas GDB komandu Es izmantoju iet iekšā šo funkciju? 940 00:46:51,780 --> 00:46:52,070 >> Mērķauditorija: Step? 941 00:46:52,070 --> 00:46:55,140 >> Jason Hirschhorn: Soli pa S. Tā ņem mani iekšā. 942 00:46:55,140 --> 00:46:55,476 OK. 943 00:46:55,476 --> 00:46:58,040 New_node mallocing dažas vietas. 944 00:46:58,040 --> 00:46:59,120 Tas viss izskatās tā būs. 945 00:46:59,120 --> 00:47:00,370 Aplūkosim new_node. 946 00:47:00,370 --> 00:47:03,270 947 00:47:03,270 --> 00:47:05,410 Tā ieguva dažas atmiņas adresi. 948 00:47:05,410 --> 00:47:07,440 Pieņemsim pārbaudīt - 949 00:47:07,440 --> 00:47:08,500 tas ir visu pareizi. 950 00:47:08,500 --> 00:47:12,220 Tāpēc viss šeit šķiet strādā pareizi. 951 00:47:12,220 --> 00:47:14,530 >> Mērķauditorija: Kāda ir atšķirība starp P un displeju? 952 00:47:14,530 --> 00:47:16,160 >> Jason Hirschhorn: P apzīmē izdrukāt. 953 00:47:16,160 --> 00:47:19,310 Un tā jūs esat jautā, kas ir Atšķirība starp šo un šo? 954 00:47:19,310 --> 00:47:22,330 Šajā gadījumā nekas. 955 00:47:22,330 --> 00:47:26,960 Bet kopumā ir dažas atšķirības. 956 00:47:26,960 --> 00:47:28,220 Un jums vajadzētu meklēt, kas GDB rokasgrāmatā. 957 00:47:28,220 --> 00:47:29,560 Taču šajā gadījumā nekas. 958 00:47:29,560 --> 00:47:31,460 Mums ir tendence izmantot drukāt, lai gan, jo mums nav jādara daudz vairāk, nekā 959 00:47:31,460 --> 00:47:33,960 drukāt vienu vērtību. 960 00:47:33,960 --> 00:47:34,640 >> OK. 961 00:47:34,640 --> 00:47:40,300 Tātad mēs esam on line 80 mūsu kodu, Nosakot mezglu * Valūta vienāds ar sarakstu. 962 00:47:40,300 --> 00:47:42,500 Ļaujiet mums izdrukāt Valūta. 963 00:47:42,500 --> 00:47:45,260 964 00:47:45,260 --> 00:47:46,840 Tas ir vienāds ar sarakstu. 965 00:47:46,840 --> 00:47:48,850 Salds. 966 00:47:48,850 --> 00:47:49,340 Gaidīt. 967 00:47:49,340 --> 00:47:50,590 Tas ir vienāds ar kaut ko. 968 00:47:50,590 --> 00:47:53,680 969 00:47:53,680 --> 00:47:56,190 Tas nešķiet pareizi. 970 00:47:56,190 --> 00:47:56,840 Tur mēs ejam. 971 00:47:56,840 --> 00:47:59,470 Tas ir tāpēc, ka gdb, labi, ja tas ir līnija jūs par to 972 00:47:59,470 --> 00:48:00,330 vēl nav izpildīts. 973 00:48:00,330 --> 00:48:03,100 Tātad jums ir nepieciešams, lai faktiski rakstīt blakus izpildīt līniju 974 00:48:03,100 --> 00:48:05,230 pirms redzēt savus rezultātus. 975 00:48:05,230 --> 00:48:06,680 Tāpēc šeit mēs esam. 976 00:48:06,680 --> 00:48:09,490 Mēs tikko izpildīts šo līniju, iepriekšējā vienāds null. 977 00:48:09,490 --> 00:48:13,590 Tātad vēlreiz, ja mēs drukāt iepriekšējā mēs neredzam neko dīvainu. 978 00:48:13,590 --> 00:48:18,680 Bet, ja mēs faktiski izpildīt ka līniju, tad mēs redzēsim 979 00:48:18,680 --> 00:48:20,380 ka šī līnija strādāja. 980 00:48:20,380 --> 00:48:21,060 >> Tāpēc mēs esam Valūta. 981 00:48:21,060 --> 00:48:23,180 Tie ir gan labi. 982 00:48:23,180 --> 00:48:24,010 Tiesības? 983 00:48:24,010 --> 00:48:28,130 Tagad mēs esam uz šīs līnijas šeit. 984 00:48:28,130 --> 00:48:29,310 Bet Valūta nav vienāda null. 985 00:48:29,310 --> 00:48:31,110 Nu, ko tas Valūta vienāds? 986 00:48:31,110 --> 00:48:32,450 Mēs tikko redzējām to sastādīja null. 987 00:48:32,450 --> 00:48:33,210 Mēs drukāts to ārā. 988 00:48:33,210 --> 00:48:35,110 Es to izdrukāt vēlreiz. 989 00:48:35,110 --> 00:48:36,720 Tā ir, ka, kamēr cilpa gatavojas izpildīt? 990 00:48:36,720 --> 00:48:37,270 >> Mērķauditorija: Nē. 991 00:48:37,270 --> 00:48:39,790 >> Jason Hirschhorn: Tad, kad es drukāti, ka line, jūs redzat, mēs jumped visu ceļu 992 00:48:39,790 --> 00:48:41,390 uz leju, uz leju, atgriezties viltus. 993 00:48:41,390 --> 00:48:44,520 Un tad mēs spēsim atgriezties viltus un doties atpakaļ uz mūsu programmu un 994 00:48:44,520 --> 00:48:48,020 beidzot izdrukāt, kā mēs redzējām, ieliktnis nebija veiksmīga. 995 00:48:48,020 --> 00:48:51,010 Tātad, kāds ir kādas idejas par to, ko mums ir jādara, lai atrisinātu šo? 996 00:48:51,010 --> 00:48:54,200 997 00:48:54,200 --> 00:48:57,570 Es esmu gatavojas gaidīt, kamēr es redzu pāris rokas iet uz augšu. 998 00:48:57,570 --> 00:48:58,830 Mēs neesam izpildīt to. 999 00:48:58,830 --> 00:49:01,660 Paturiet prātā, tas bija pirmais lieta, ko mēs darām. 1000 00:49:01,660 --> 00:49:02,430 Es neesmu gatavojas darīt pāris. 1001 00:49:02,430 --> 00:49:03,670 Es esmu gatavojas darīt dažas. 1002 00:49:03,670 --> 00:49:04,830 Tāpēc, ka pāris ir divi. 1003 00:49:04,830 --> 00:49:07,620 Es jāgaida vairāk nekā divi. 1004 00:49:07,620 --> 00:49:10,690 >> Pirmais ievietošanas, Valūta, pēc noklusējuma ir vienāds null. 1005 00:49:10,690 --> 00:49:14,050 Un tas cilpa tikai izpilda ja Valūta nav null. 1006 00:49:14,050 --> 00:49:18,740 Tātad, kā es varu saņemt ap šo? 1007 00:49:18,740 --> 00:49:19,990 Es redzu trīs rokas. 1008 00:49:19,990 --> 00:49:28,490 1009 00:49:28,490 --> 00:49:29,780 Es jāgaida vairāk nekā trīs. 1010 00:49:29,780 --> 00:49:33,460 1011 00:49:33,460 --> 00:49:35,940 Marcus, ko jūs domājat? 1012 00:49:35,940 --> 00:49:37,730 >> Mērķauditorija: Nu, ja jums ir nepieciešams, lai izpildīt vairāk nekā vienu reizi, jūs vienkārši 1013 00:49:37,730 --> 00:49:39,948 mainīt to ar do-kamēr cilpa. 1014 00:49:39,948 --> 00:49:41,250 >> Jason Hirschhorn: OK. 1015 00:49:41,250 --> 00:49:44,240 Vai tas atrisinātu mūsu problēmu, lai gan? 1016 00:49:44,240 --> 00:49:47,750 >> AUDITORIJA: Tādā gadījumā, jo tas, ka saraksts ir tukšs. 1017 00:49:47,750 --> 00:49:52,150 Tā, tad jums, iespējams, ir nepieciešams, lai pievienotu apgalvojums, ka, ja cilpa izejām 1018 00:49:52,150 --> 00:49:55,312 tad ir jābūt beigās sarakstu, kurā brīdī jums 1019 00:49:55,312 --> 00:49:56,562 var vienkārši ievietot to. 1020 00:49:56,562 --> 00:49:58,920 1021 00:49:58,920 --> 00:49:59,680 >> Jason Hirschhorn: Man patīk, ka. 1022 00:49:59,680 --> 00:50:00,500 Tas ir jēga. 1023 00:50:00,500 --> 00:50:03,390 Ja cilpa izejām - 1024 00:50:03,390 --> 00:50:04,800 jo tas būs atgriezties viltus šeit. 1025 00:50:04,800 --> 00:50:08,220 Tātad, ja cilpas izeju, tad mēs esam pie beigu saraksta, vai varbūt 1026 00:50:08,220 --> 00:50:10,690 sākums saraksta, ja tur nekas tā, kas ir tāds pats kā beigās. 1027 00:50:10,690 --> 00:50:12,770 Tāpēc tagad mēs vēlamies, lai ievietotu kaut ko šeit. 1028 00:50:12,770 --> 00:50:17,380 Tā kā tas, ka kods izskatās, Marcus? 1029 00:50:17,380 --> 00:50:21,600 >> Mērķauditorija: Ja jūs jau got mezglu malloced, jūs varētu vienkārši pateikt 1030 00:50:21,600 --> 00:50:25,400 new_node-> next vienāds ar null, jo tai jābūt beigās. 1031 00:50:25,400 --> 00:50:27,510 Vai new_node-> next vienāds null. 1032 00:50:27,510 --> 00:50:27,765 >> Jason Hirschhorn: OK. 1033 00:50:27,765 --> 00:50:28,190 Piedodiet. 1034 00:50:28,190 --> 00:50:35,760 New_node-> next vienāds null jo mēs esam beigās. 1035 00:50:35,760 --> 00:50:36,460 Tas nenozīmē, ka likt to iekšā 1036 00:50:36,460 --> 00:50:37,710 Kā mēs ieliekam to sarakstā? 1037 00:50:37,710 --> 00:50:46,130 1038 00:50:46,130 --> 00:50:46,460 Tiesības. 1039 00:50:46,460 --> 00:50:47,750 Tas ir vienkārši, nosakot to vienāds ar. 1040 00:50:47,750 --> 00:50:50,940 Nē, kā mēs patiesībā likt to sarakstā? 1041 00:50:50,940 --> 00:50:54,170 Kas norāda uz beigu saraksta? 1042 00:50:54,170 --> 00:50:56,090 >> Mērķauditorija: Head. 1043 00:50:56,090 --> 00:50:57,566 >> Jason Hirschhorn: Sorry? 1044 00:50:57,566 --> 00:50:59,440 >> Mērķauditorija: Head ir vērsta līdz saraksta beigām. 1045 00:50:59,440 --> 00:51:01,480 >> Jason Hirschhorn: Ja tur nekas sarakstu, galva ir vērsta uz 1046 00:51:01,480 --> 00:51:04,170 end of sarakstā. 1047 00:51:04,170 --> 00:51:06,920 Tā, ka būs darbs pirmās ievietošanas. 1048 00:51:06,920 --> 00:51:09,810 Kas par to, ja ir pāris lietas sarakstā? 1049 00:51:09,810 --> 00:51:12,470 Nekā mēs nevēlamies, lai uzstādītu dodies vienāds ar new_node. 1050 00:51:12,470 --> 00:51:13,790 Ko mēs vēlamies darīt tur? 1051 00:51:13,790 --> 00:51:15,610 Yeah? 1052 00:51:15,610 --> 00:51:16,860 Droši vien iepriekšējā. 1053 00:51:16,860 --> 00:51:23,560 1054 00:51:23,560 --> 00:51:24,810 Būs, kas strādā? 1055 00:51:24,810 --> 00:51:28,950 1056 00:51:28,950 --> 00:51:33,050 Atgādināt, ka iepriekšējais ir tikai rādītāju uz mezglu. 1057 00:51:33,050 --> 00:51:34,770 Un iepriekšējo ir vietējā mainīgs. 1058 00:51:34,770 --> 00:51:38,080 Tāpēc šī līnija būs noteikt vietējās mainīgais, Iepriekšējā, kas vienāds ar vai 1059 00:51:38,080 --> 00:51:39,380 norādot uz šo jauno mezglu. 1060 00:51:39,380 --> 00:51:41,500 Tas faktiski nav nodot to mūsu sarakstā, though. 1061 00:51:41,500 --> 00:51:44,330 Kā mēs ieliekam to mūsu sarakstā? 1062 00:51:44,330 --> 00:51:45,620 Akchar? 1063 00:51:45,620 --> 00:51:46,870 >> Mērķauditorija: Es domāju, ka jūs Pašreizējās-> nākamo. 1064 00:51:46,870 --> 00:51:50,186 1065 00:51:50,186 --> 00:51:52,550 >> Jason Hirschhorn: OK. 1066 00:51:52,550 --> 00:51:54,010 Valūta-> nākamo. 1067 00:51:54,010 --> 00:51:58,768 Tātad vēlreiz, vienīgais iemesls, kāpēc mēs esam uz leju šeit ir, ko dara strāvas stiprums? 1068 00:51:58,768 --> 00:51:59,760 >> Mērķauditorija: Vienāds null. 1069 00:51:59,760 --> 00:52:01,790 >> Jason Hirschhorn: Un tā, ko notiek, ja mēs null-> tālāk? 1070 00:52:01,790 --> 00:52:02,810 Ko mēs gatavojas saņemt? 1071 00:52:02,810 --> 00:52:04,060 Mēs iegūt segmentāciju vaina. 1072 00:52:04,060 --> 00:52:06,600 1073 00:52:06,600 --> 00:52:08,880 >> Mērķauditorija: Vai Valūta vienāds null. 1074 00:52:08,880 --> 00:52:10,760 >> Jason Hirschhorn: Tas ir tas pats kā prev, lai gan, jo tur ir 1075 00:52:10,760 --> 00:52:12,820 vietējās mainīgais mēs nosakot ir vienāds ar šo jauno mezglu. 1076 00:52:12,820 --> 00:52:16,680 1077 00:52:16,680 --> 00:52:20,920 Iesim atpakaļ uz mūsu priekšstatu ievietot kaut ko. 1078 00:52:20,920 --> 00:52:25,500 Saka, ka mēs esam ievietojot beigās no saraksta, lai tieši šeit. 1079 00:52:25,500 --> 00:52:30,010 Mums ir pašreizējais rādītājs, kas ir norāda uz spēku iepriekšējo punktu 1080 00:52:30,010 --> 00:52:32,800 kas ir vērsta uz 8. 1081 00:52:32,800 --> 00:52:35,330 Tātad, kas mums ir nepieciešams, lai atjauninātu, Avi? 1082 00:52:35,330 --> 00:52:36,680 >> Mērķauditorija: Iepriekšējā-> next? 1083 00:52:36,680 --> 00:52:41,980 >> Jason Hirschhorn: Iepriekšējā-> nākamais ir tas, ko mēs vēlamies atjaunot, jo tas 1084 00:52:41,980 --> 00:52:44,960 faktiski ievietojiet to beigu saraksta. 1085 00:52:44,960 --> 00:52:47,220 Mums joprojām ir viens bug, lai gan, ka mēs ejam uzskriet. 1086 00:52:47,220 --> 00:52:50,090 Kas tas tāds bug? 1087 00:52:50,090 --> 00:52:50,790 Yeah? 1088 00:52:50,790 --> 00:52:53,860 >> Mērķauditorija: Tas notiek, lai atgrieztos viltus šajā gadījumā? 1089 00:52:53,860 --> 00:52:56,380 >> Jason Hirschhorn: Ak, tas ir gatavojas atgriezties viltus. 1090 00:52:56,380 --> 00:52:57,430 Bet tur ir vēl viens bug. 1091 00:52:57,430 --> 00:52:58,930 Tāpēc mums būs nepieciešams, lai pretī patiesai. 1092 00:52:58,930 --> 00:53:01,370 >> Mērķauditorija: Vai iepriekšējā joprojām ir vienāds null augšpusē saraksta? 1093 00:53:01,370 --> 00:53:03,645 >> Jason Hirschhorn: Tātad iepriekšējais vēl vienāds null pašā sākumā. 1094 00:53:03,645 --> 00:53:07,480 1095 00:53:07,480 --> 00:53:10,440 Tātad, kā mēs varam iegūt vairāk nekā, ka? 1096 00:53:10,440 --> 00:53:10,950 Yeah? 1097 00:53:10,950 --> 00:53:15,280 >> Mērķauditorija: Es domāju, ka jūs varat darīt, pārbaudi pirms kamēr cilpa, lai redzētu, vai tas ir 1098 00:53:15,280 --> 00:53:16,610 tukša sarakstā. 1099 00:53:16,610 --> 00:53:17,000 >> Jason Hirschhorn: OK. 1100 00:53:17,000 --> 00:53:17,710 Tāpēc iesim šeit. 1101 00:53:17,710 --> 00:53:18,530 Do pārbaudi. 1102 00:53:18,530 --> 00:53:19,380 Ja - 1103 00:53:19,380 --> 00:53:20,770 >> Mērķauditorija: Tātad, ja galva vienāds vienāds null. 1104 00:53:20,770 --> 00:53:24,300 1105 00:53:24,300 --> 00:53:26,320 >> Jason Hirschhorn: Ja galva vienāds vienāds null - 1106 00:53:26,320 --> 00:53:27,790 kas jums pateiks mums, ja tā ir tukša sarakstā. 1107 00:53:27,790 --> 00:53:31,090 >> Mērķauditorija: Un tad jūs do galva vienāds jauns. 1108 00:53:31,090 --> 00:53:34,740 >> Jason Hirschhorn: Head vienāds new_node? 1109 00:53:34,740 --> 00:53:35,730 Un ko vēl mums jādara? 1110 00:53:35,730 --> 00:53:37,020 >> Mērķauditorija: Un tad jūs atpakaļ taisnība. 1111 00:53:37,020 --> 00:53:37,535 >> Jason Hirschhorn: Ne gluži. 1112 00:53:37,535 --> 00:53:38,785 Mēs esam trūkst vienu soli. 1113 00:53:38,785 --> 00:53:41,590 1114 00:53:41,590 --> 00:53:43,710 >> Mērķauditorija: New_node next ir norādīt uz null. 1115 00:53:43,710 --> 00:53:44,570 >> Jason Hirschhorn: Tieši tā, Alden. 1116 00:53:44,570 --> 00:53:46,600 Un tad mēs varam atgriezties true. 1117 00:53:46,600 --> 00:53:47,560 OK. 1118 00:53:47,560 --> 00:53:51,630 Bet tas joprojām ir laba ideja darīt lietas beigās saraksta, labi? 1119 00:53:51,630 --> 00:53:51,950 Labi. 1120 00:53:51,950 --> 00:53:54,450 Mēs joprojām varētu faktiski nokļūt līdz saraksta beigām. 1121 00:53:54,450 --> 00:53:57,870 Tātad tas ir kods, labi, ja mēs esam pie saraksta beigās, un ir daži 1122 00:53:57,870 --> 00:53:59,120 lietas sarakstā? 1123 00:53:59,120 --> 00:54:01,830 1124 00:54:01,830 --> 00:54:02,040 Tiesības? 1125 00:54:02,040 --> 00:54:03,540 Tāpēc, ka mums vēl ir Marcus ideju. 1126 00:54:03,540 --> 00:54:06,870 Mēs varētu iziet šo cilpu, jo mēs beigās sarakstā. 1127 00:54:06,870 --> 00:54:09,308 Tāpēc mēs joprojām vēlamies, lai šī kodu šeit lejā? 1128 00:54:09,308 --> 00:54:10,520 >> Mērķauditorija: Jā. 1129 00:54:10,520 --> 00:54:11,000 >> Jason Hirschhorn: Jā. 1130 00:54:11,000 --> 00:54:14,190 Un ko mums vajag, lai mainītu šo? 1131 00:54:14,190 --> 00:54:15,440 Taisnība. 1132 00:54:15,440 --> 00:54:19,580 1133 00:54:19,580 --> 00:54:21,640 Vai, ka pareizai labi visiem līdz šim? 1134 00:54:21,640 --> 00:54:22,420 Kāds ir jebkurš - 1135 00:54:22,420 --> 00:54:23,480 Avi, jums ir ko piebilst? 1136 00:54:23,480 --> 00:54:23,920 >> Mērķauditorija: Nē. 1137 00:54:23,920 --> 00:54:25,276 >> Jason Hirschhorn: OK. 1138 00:54:25,276 --> 00:54:27,010 Tātad mēs esam veikuši pāris izmaiņas. 1139 00:54:27,010 --> 00:54:29,540 Mēs esam padarījuši šo pārbaudi, pirms mēs devos uz tukšu sarakstu. 1140 00:54:29,540 --> 00:54:31,790 Tāpēc mēs esam parūpējušies par tukšu sarakstu. 1141 00:54:31,790 --> 00:54:35,500 Un šeit mēs rūpējās ievietojot kaut beigās sarakstā. 1142 00:54:35,500 --> 00:54:38,930 Tāpēc šķiet, piemēram, šo, bet cilpas uzņemšanos aprūpe lietas starp, 1143 00:54:38,930 --> 00:54:41,920 kaut sarakstā, ja ir lietas sarakstā. 1144 00:54:41,920 --> 00:54:42,280 >> OK. 1145 00:54:42,280 --> 00:54:44,310 Ļaujiet mums vadīt šo programmu vēlreiz. 1146 00:54:44,310 --> 00:54:50,170 1147 00:54:50,170 --> 00:54:50,755 Nav veiksmīga. 1148 00:54:50,755 --> 00:54:52,190 >> Mērķauditorija: Jums nav darīt to. 1149 00:54:52,190 --> 00:54:53,940 >> Jason Hirschhorn: Ak, Man nebija darīt to. 1150 00:54:53,940 --> 00:54:56,250 Labs punkts, Michael. 1151 00:54:56,250 --> 00:54:57,500 Pieņemsim pievienot marku saistīts. 1152 00:54:57,500 --> 00:55:01,590 1153 00:55:01,590 --> 00:55:04,830 Līnija 87, tur ir kļūda. 1154 00:55:04,830 --> 00:55:05,420 Līnija 87. 1155 00:55:05,420 --> 00:55:06,600 Alden, tas bija līnija jūs man iedeva. 1156 00:55:06,600 --> 00:55:08,962 Kas ir nepareizi? 1157 00:55:08,962 --> 00:55:10,710 >> Mērķauditorija: Ir jābūt null. 1158 00:55:10,710 --> 00:55:11,000 >> Jason Hirschhorn: Excellent. 1159 00:55:11,000 --> 00:55:11,630 Tieši labi. 1160 00:55:11,630 --> 00:55:13,290 Tas būtu nulle. 1161 00:55:13,290 --> 00:55:15,210 Veidosim vēlreiz. 1162 00:55:15,210 --> 00:55:17,220 Sastādīt. 1163 00:55:17,220 --> 00:55:17,890 OK. 1164 00:55:17,890 --> 00:55:19,400 Pieņemsim ievietot trīs. 1165 00:55:19,400 --> 00:55:20,570 Iekļaut bija veiksmīga. 1166 00:55:20,570 --> 00:55:21,660 Let 's to izdrukāt. 1167 00:55:21,660 --> 00:55:23,590 Ak, ja vien mēs varētu pārbaudīt. 1168 00:55:23,590 --> 00:55:25,500 Bet mēs neesam darījuši drukāt funkcija vēl. 1169 00:55:25,500 --> 00:55:27,840 Pieņemsim ievadiet kaut ko citu. 1170 00:55:27,840 --> 00:55:29,090 Ko mums vajadzētu ieiet? 1171 00:55:29,090 --> 00:55:31,120 1172 00:55:31,120 --> 00:55:31,940 >> Mērķauditorija: Seven. 1173 00:55:31,940 --> 00:55:33,340 >> Jason Hirschhorn: Seven? 1174 00:55:33,340 --> 00:55:34,590 >> Mērķauditorija: Jā. 1175 00:55:34,590 --> 00:55:38,680 1176 00:55:38,680 --> 00:55:39,780 >> Jason Hirschhorn: Mums ir seg vaina. 1177 00:55:39,780 --> 00:55:43,760 Tāpēc mums ir viens, bet mēs skaidri nevar saņemt divus. 1178 00:55:43,760 --> 00:55:45,690 Tas ir 05:07. 1179 00:55:45,690 --> 00:55:48,370 Lai mēs varētu atkļūdot šo trīs minūtes. 1180 00:55:48,370 --> 00:55:51,240 Bet es esmu gatavojas atstāt mums šeit un pāriet uz hash tabulas. 1181 00:55:51,240 --> 00:55:54,290 Bet atkal, atbildes uz šo kodu Es e-pastu to jums mazliet. 1182 00:55:54,290 --> 00:55:55,440 Mēs esam ļoti tuvu tai. 1183 00:55:55,440 --> 00:55:58,300 Es ļoti aicinu jūs, lai noskaidrotu kas notiek šeit un salabot. 1184 00:55:58,300 --> 00:56:02,400 Tāpēc es e-pastu jums šo kodu, labi plus risinājums - 1185 00:56:02,400 --> 00:56:03,670 iespējams risinājums vēlāk. 1186 00:56:03,670 --> 00:56:05,110 Pirmais šo kodu. 1187 00:56:05,110 --> 00:56:08,290 >> Otra lieta, ko es gribu darīt, pirms mēs apdare ir, mēs neesam atbrīvojušies neko. 1188 00:56:08,290 --> 00:56:10,370 Tāpēc es vēlos, lai parādītu Jums to, ko Valgrind izskatās. 1189 00:56:10,370 --> 00:56:14,310 Ja mēs palaist Valgrind robežas mūsu programmas. / saistītas. 1190 00:56:14,310 --> 00:56:22,540 Again, saskaņā ar šo slide, mēs vajadzētu palaist Valgrind ar kaut kāda veida 1191 00:56:22,540 --> 00:56:26,410 variants, šajā gadījumā - Noplūdes pārbaude = pilna. 1192 00:56:26,410 --> 00:56:27,660 Tā ļauj rakstīt Valgrind - Noplūdes pārbaude = pilna. 1193 00:56:27,660 --> 00:56:31,910 1194 00:56:31,910 --> 00:56:35,080 Tāpēc tas darbosies Valgrind mūsu programmā. 1195 00:56:35,080 --> 00:56:37,000 Un tagad programma faktiski darbojas. 1196 00:56:37,000 --> 00:56:40,190 Tātad, mēs ejam, lai palaistu to, tāpat kā pirms kaut ko iekšā 1197 00:56:40,190 --> 00:56:40,830 Es esmu gatavojas īstenot trīs. 1198 00:56:40,830 --> 00:56:41,790 , Kas darbojas. 1199 00:56:41,790 --> 00:56:43,202 Es neesmu gatavojas izmēģināt, lai kaut citur, jo mēs gatavojamies 1200 00:56:43,202 --> 00:56:44,710 iegūt seg nepatiesas šajā lietā. 1201 00:56:44,710 --> 00:56:46,700 Tāpēc es esmu tikai gatavojas atmest. 1202 00:56:46,700 --> 00:56:50,160 >> Un tagad jūs redzat šeit lejā noplūdes un kaudze kopsavilkums. 1203 00:56:50,160 --> 00:56:52,310 Tās ir labas lietas, kas vēlaties pārbaudīt out. 1204 00:56:52,310 --> 00:56:56,780 Tāpēc kaudze kopsavilkums - tā saka, lietošanas pie izejas - astoņi biti vienā blokā. 1205 00:56:56,780 --> 00:56:58,370 Ka viens bloks ir mezglā mēs malloced. 1206 00:56:58,370 --> 00:57:02,230 Michael, jūs teicāt, pirms mezgls ir astoņi kodumi, jo tā ir vesels skaitlis 1207 00:57:02,230 --> 00:57:02,680 un rādītāju. 1208 00:57:02,680 --> 00:57:04,550 Tātad tas ir mūsu mezglā. 1209 00:57:04,550 --> 00:57:08,170 Un tad saka, ka mēs izmantojām malloc septiņas reizes, un mēs atbrīvojušies 1210 00:57:08,170 --> 00:57:08,940 kaut sešas reizes. 1211 00:57:08,940 --> 00:57:13,680 Bet mēs nekad sauc brīva, tāpēc man nav Nesaprotu, par ko tas runā. 1212 00:57:13,680 --> 00:57:18,490 >> Bet pietiek pateikt, ka tad, kad jūsu programma darbojas, malloc tiek saukta 1213 00:57:18,490 --> 00:57:20,330 dažās citās vietās, kas mums nav jāuztraucas par. 1214 00:57:20,330 --> 00:57:22,460 Tāpēc malloc bija iespējams saukt dažās vietās. 1215 00:57:22,460 --> 00:57:24,480 Mums nav jāuztraucas, ja. 1216 00:57:24,480 --> 00:57:26,240 Bet tas ir patiešām mums. 1217 00:57:26,240 --> 00:57:27,380 Šī pirmā līnija ir mums. 1218 00:57:27,380 --> 00:57:28,320 Mēs atstājām šo bloku. 1219 00:57:28,320 --> 00:57:30,330 Un jūs varat redzēt, ka šeit ar noplūdes kopsavilkumā. 1220 00:57:30,330 --> 00:57:31,950 Still sasniedzams - 1221 00:57:31,950 --> 00:57:32,930 astoņi biti vienā blokā. 1222 00:57:32,930 --> 00:57:34,100 Tas nozīmē, ka atmiņa - 1223 00:57:34,100 --> 00:57:35,730 mums ir noplūdis šo atmiņu. 1224 00:57:35,730 --> 00:57:37,570 Galīgi zaudējis - 1225 00:57:37,570 --> 00:57:38,770 kaut kas ir zaudēti par labu. 1226 00:57:38,770 --> 00:57:40,590 Vispār, jums nav redzēt kaut ko tur. 1227 00:57:40,590 --> 00:57:44,780 Joprojām sasniedzams parasti, ja jūs redzēsiet lietas, kur jūs vēlaties 1228 00:57:44,780 --> 00:57:48,900 meklēt, lai redzētu, kas kods, jums būtu ir atbrīvoti, bet jūs aizmirsāt, lai atbrīvotu. 1229 00:57:48,900 --> 00:57:53,170 >> Un tad, ja tas nav gadījums, ja mēs darījām bez visu, 1230 00:57:53,170 --> 00:57:54,360 mēs varam pārbaudīt, ka. 1231 00:57:54,360 --> 00:57:57,330 Pieņemsim tikai palaist programmu nevis liekot neko. 1232 00:57:57,330 --> 00:57:59,800 Jūs redzēsiet noteikti šeit lietošanai pie izejas - 1233 00:57:59,800 --> 00:58:01,310 nulles baiti nulles blokiem. 1234 00:58:01,310 --> 00:58:06,310 Tas nozīmē, ka mums bija nekas pa kreisi kad šī programma izbrauc. 1235 00:58:06,310 --> 00:58:12,090 Tātad, pirms pagrieziena pset6, palaist Valgrind un pārliecinieties, ka jums nav 1236 00:58:12,090 --> 00:58:15,310 kāda atmiņas noplūde jūsu programmā. 1237 00:58:15,310 --> 00:58:17,910 Ja Jums ir kādi jautājumi ar Valgrind, justies brīvi aizsniegt. 1238 00:58:17,910 --> 00:58:18,700 Bet tas ir, kā jūs to izmantot. 1239 00:58:18,700 --> 00:58:20,890 Ļoti vienkārši - redzēt, ja jūs ir izmanto pie izejas - 1240 00:58:20,890 --> 00:58:22,270 kādi baiti jebkuriem blokiem. 1241 00:58:22,270 --> 00:58:27,890 1242 00:58:27,890 --> 00:58:29,580 >> Tāpēc mēs strādājam pie ievietot mezglā. 1243 00:58:29,580 --> 00:58:33,840 Man bija divas citas funkcijas šeit - drukāt mezglu un bezmaksas mezgliem. 1244 00:58:33,840 --> 00:58:37,780 Atkal, tās ir funkcijas, kas būs labi, lai jūs varētu praksē 1245 00:58:37,780 --> 00:58:40,990 jo tās palīdzēs jums ne tikai šīs izlases vingrinājumi, bet arī 1246 00:58:40,990 --> 00:58:42,180 uz problēmu komplektu. 1247 00:58:42,180 --> 00:58:44,230 Viņi kartē diezgan cieši, lai lietas jūs nāksies darīt 1248 00:58:44,230 --> 00:58:45,010 problēma noteikti. 1249 00:58:45,010 --> 00:58:47,640 Bet es gribu, lai pārliecinātos, ka mēs pieskarties par visu. 1250 00:58:47,640 --> 00:58:50,400 Un hash tabulas ir arī ļoti svarīgi, lai tas, ko mēs darām sadaļā šajā 1251 00:58:50,400 --> 00:58:51,980 nedēļa - vai problēmu kopumu. 1252 00:58:51,980 --> 00:58:55,200 >> Tātad, mēs ejam, lai pabeigtu sadaļu runājot par hash tabulas. 1253 00:58:55,200 --> 00:58:58,140 Ja jūs novērojat es maz hash tabulu. 1254 00:58:58,140 --> 00:59:00,020 Tas nav tas, ko mēs runājam par, tomēr. 1255 00:59:00,020 --> 00:59:03,540 Mēs runājam par atšķirīgu hash tabulas veidu. 1256 00:59:03,540 --> 00:59:07,300 Un tās kodols, hash tabulas ir nekas vairāk kā 1257 00:59:07,300 --> 00:59:08,860 masīvs plus hash funkciju. 1258 00:59:08,860 --> 00:59:11,150 Mēs ejam runāt mazliet tikai pārliecinieties, vai visi saprot to, ko 1259 00:59:11,150 --> 00:59:12,110 hash funkcija. 1260 00:59:12,110 --> 00:59:15,420 Un es jums saku tagad, ka tas ir nekas vairāk par divām lietām - 1261 00:59:15,420 --> 00:59:18,590 masīvs un hash funkciju. 1262 00:59:18,590 --> 00:59:20,716 Un šeit ir pasākumus, izmantojot kas tas darbojas. 1263 00:59:20,716 --> 00:59:31,560 1264 00:59:31,560 --> 00:59:32,810 >> Tur ir mūsu masīvs. 1265 00:59:32,810 --> 00:59:38,460 1266 00:59:38,460 --> 00:59:39,460 Tur ir mūsu funkcija. 1267 00:59:39,460 --> 00:59:43,180 Jo īpaši, hash funkciju nepieciešams darīt pāris lietas ar to. 1268 00:59:43,180 --> 00:59:45,040 Es esmu gatavojas runāt konkrēti par šo problēmu noteikti. 1269 00:59:45,040 --> 00:59:46,450 Tas ir iespējams, gatavojas veikt virkni. 1270 00:59:46,450 --> 00:59:50,570 1271 00:59:50,570 --> 00:59:51,770 Un to, kas tas notiek, lai atgrieztos? 1272 00:59:51,770 --> 00:59:52,640 Kādi datu tips? 1273 00:59:52,640 --> 00:59:54,260 Alden? 1274 00:59:54,260 --> 00:59:55,760 Jūsu hash funkciju atgriezties? 1275 00:59:55,760 --> 00:59:58,760 Skaitlis. 1276 00:59:58,760 --> 01:00:01,700 Tātad šis ir tas, ko hash tabula sastāv no - 1277 01:00:01,700 --> 01:00:05,430 tabula formā masīva un hash funkciju. 1278 01:00:05,430 --> 01:00:06,010 Kā tas darbojas? 1279 01:00:06,010 --> 01:00:07,300 Tas darbojas trīs posmos. 1280 01:00:07,300 --> 01:00:08,740 Mēs to atslēgu. 1281 01:00:08,740 --> 01:00:11,470 Šajā gadījumā, mēs arī tā virkni. 1282 01:00:11,470 --> 01:00:18,140 Mēs aicinām hash funkciju par vienu soli par atslēgu, un mēs iegūstam vērtību. 1283 01:00:18,140 --> 01:00:20,310 >> Konkrētāk, mēs sakām mēs iegūstam skaitli. 1284 01:00:20,310 --> 01:00:25,630 Ka vesels skaitlis, ir ļoti specifiski ierobežojumi, ko tas skaitlis varētu būt. 1285 01:00:25,630 --> 01:00:28,880 Šajā piemērā, mūsu masīvs ir lieluma trīs. 1286 01:00:28,880 --> 01:00:32,330 Tātad, kādi skaitļi var ka skaitlis būt. 1287 01:00:32,330 --> 01:00:35,970 Kas ir diapazons derīgo vērtībām ka skaitlis, atgriešanās tips ar šo 1288 01:00:35,970 --> 01:00:37,220 hash funkcija? 1289 01:00:37,220 --> 01:00:40,440 1290 01:00:40,440 --> 01:00:42,110 Nulle, viens un divi. 1291 01:00:42,110 --> 01:00:46,060 No hash funkciju punkts ir izrēķināt vietu masīvā 1292 01:00:46,060 --> 01:00:47,790 kur mūsu galvenais notiek. 1293 01:00:47,790 --> 01:00:51,290 Ir tikai trīs iespējas vietas šeit - 1294 01:00:51,290 --> 01:00:52,130 nulle, viens vai divi. 1295 01:00:52,130 --> 01:00:55,360 Tāpēc šī funkcija labāk atgriešanās nulle, viens vai divi. 1296 01:00:55,360 --> 01:00:58,740 Daži derīgi Indice šajā masīvā. 1297 01:00:58,740 --> 01:01:02,770 >> Un tad, atkarībā no tā, kur tas atgriežas, Jūs varat redzēt, tur masīvs atvērts 1298 01:01:02,770 --> 01:01:03,730 Bracket vērtību. 1299 01:01:03,730 --> 01:01:05,800 Tas ir, ja mēs ieliekam atslēgu. 1300 01:01:05,800 --> 01:01:11,280 Tātad mēs iemest ķirbju, mēs izkļūt nulle. 1301 01:01:11,280 --> 01:01:15,540 Pie masīva grupā 0, mēs ieliekam ķirbi. 1302 01:01:15,540 --> 01:01:21,070 Mēs mest kaķiem, mēs izkļūt vienu. 1303 01:01:21,070 --> 01:01:24,110 Mēs ieliekam kaķis vienā. 1304 01:01:24,110 --> 01:01:25,480 Mēs ieliekam zirneklis. 1305 01:01:25,480 --> 01:01:26,710 Mēs izkļūt divi. 1306 01:01:26,710 --> 01:01:30,200 Mēs ieliekam zirnekli pie masīva grupā divi. 1307 01:01:30,200 --> 01:01:32,300 Tas būtu tik jauki, ja tā strādāja, piemēram, ka. 1308 01:01:32,300 --> 01:01:35,570 Bet, diemžēl, kā mēs redzēsim, tas ir nedaudz sarežģītāka. 1309 01:01:35,570 --> 01:01:37,570 >> Pirms mēs nokļūt, kādi jautājumi par šī pamata 1310 01:01:37,570 --> 01:01:38,820 set-up of a hash tabulu? 1311 01:01:38,820 --> 01:01:49,050 1312 01:01:49,050 --> 01:01:51,940 Tas ir attēls tieši ko mēs vērsa uz kuģa. 1313 01:01:51,940 --> 01:01:55,420 Bet, tā kā mēs izvilka to uz klāja, es neesmu gatavojas iedziļināties to tālāk. 1314 01:01:55,420 --> 01:02:00,430 Būtībā atslēgas, maģija melnā kaste - vai šajā gadījumā, krīklis box - no 1315 01:02:00,430 --> 01:02:02,410 hash funkcija liek tos spaiņos. 1316 01:02:02,410 --> 01:02:04,690 Un šajā piemērā mēs esam nevis liekot vārdu. 1317 01:02:04,690 --> 01:02:07,880 Mēs esam liekot ar to saistīto tālruni numurs nosaukuma spainī. 1318 01:02:07,880 --> 01:02:10,430 Bet jūs varētu ļoti labi vienkārši likts nosaukums spainī. 1319 01:02:10,430 --> 01:02:12,950 >> Tas ir tikai priekšstatu par to, kas mēs vērsa uz kuģa. 1320 01:02:12,950 --> 01:02:14,460 Mums ir iespējamo apdraudējumu, though. 1321 01:02:14,460 --> 01:02:17,470 Un tur ir divi īpaši slaidi, ka es gribu iet pāri. 1322 01:02:17,470 --> 01:02:20,230 Pirmais ir aptuveni hash funkciju. 1323 01:02:20,230 --> 01:02:22,620 Tāpēc man uzdeva jautājumu, ko padara labu hash funkciju? 1324 01:02:22,620 --> 01:02:24,220 Es dodu divas atbildes. 1325 01:02:24,220 --> 01:02:26,630 Pirmais ir, ka tas ir deterministisko. 1326 01:02:26,630 --> 01:02:29,660 Saistībā ar hash funkciju, Ko tas nozīmē? 1327 01:02:29,660 --> 01:02:37,840 1328 01:02:37,840 --> 01:02:39,282 Jā? 1329 01:02:39,282 --> 01:02:42,850 >> Mērķauditorija: To var atrast indekss pastāvīgu laiku? 1330 01:02:42,850 --> 01:02:43,810 >> Jason Hirschhorn: Ka nav tas, ko tas nozīmē. 1331 01:02:43,810 --> 01:02:44,725 Bet tas ir labs minējums. 1332 01:02:44,725 --> 01:02:46,100 Kāds cits ir minējums ko tas nozīmē? 1333 01:02:46,100 --> 01:02:47,780 Ka labs hash funkcija ir deterministisko? 1334 01:02:47,780 --> 01:02:48,280 Annie? 1335 01:02:48,280 --> 01:02:51,680 >> Mērķauditorija: Ka atslēgu var nodibināt vienīgi vienā vietā hash tabulā. 1336 01:02:51,680 --> 01:02:53,070 >> Jason Hirschhorn: Tas ir tieši labi. 1337 01:02:53,070 --> 01:02:57,430 Katru reizi, kad jūs nodot ķirbju, tā vienmēr atgriež nulli. 1338 01:02:57,430 --> 01:03:01,660 Ja jūs nodot ķirbju un jūsu hash funkcija atgriež nulli, bet ir 1339 01:03:01,660 --> 01:03:06,060 varbūtība atgriezties kaut cits lielāks par nulli - 1340 01:03:06,060 --> 01:03:09,280 tāpēc varbūt tā var atgriezties vienu dažkārt vai divas citas reizes - 1341 01:03:09,280 --> 01:03:11,100 , kas nav laba hash funkciju. 1342 01:03:11,100 --> 01:03:11,800 Tu esi tieši labi. 1343 01:03:11,800 --> 01:03:15,680 Jūsu hash funkcija jāatgriežas pašā precīzu vesels skaitlis, šajā gadījumā, lai 1344 01:03:15,680 --> 01:03:17,780 pats precīzu string. 1345 01:03:17,780 --> 01:03:22,210 >> Iespējams, ka atgriež to pašu precīzu vesels skaitlis tajā pašā precīzu virknes 1346 01:03:22,210 --> 01:03:24,430 neatkarīgi no kapitalizācijas. 1347 01:03:24,430 --> 01:03:27,980 Bet tādā gadījumā tas joprojām deterministiskā jo vairākas lietas 1348 01:03:27,980 --> 01:03:29,350 tiek plānots uz to pašu vērtību. 1349 01:03:29,350 --> 01:03:30,170 Tas ir jauki. 1350 01:03:30,170 --> 01:03:32,615 Tik ilgi, kamēr ir tikai viens izeja dotā ieguldījuma. 1351 01:03:32,615 --> 01:03:35,630 1352 01:03:35,630 --> 01:03:36,350 >> OK. 1353 01:03:36,350 --> 01:03:38,340 Otra lieta ir tā, ka atgriežas spēkā rādītājus. 1354 01:03:38,340 --> 01:03:40,220 Mēs audzināti, ka agrāk. 1355 01:03:40,220 --> 01:03:41,860 Šī hash funkcija - 1356 01:03:41,860 --> 01:03:43,710 oh boy - 1357 01:03:43,710 --> 01:03:46,840 hash funkcija būtu atgriezties spēkā rādītājus. 1358 01:03:46,840 --> 01:03:47,740 Tā teikt - 1359 01:03:47,740 --> 01:03:48,990 iesim atpakaļ uz šo piemēru. 1360 01:03:48,990 --> 01:03:52,580 1361 01:03:52,580 --> 01:03:57,540 Mana hash funkciju skaita up burti vārda. 1362 01:03:57,540 --> 01:03:58,380 Tas ir hash funkciju. 1363 01:03:58,380 --> 01:03:59,740 Un atgriež ka skaitlis. 1364 01:03:59,740 --> 01:04:04,280 Tātad, ja man ir vārdu A, tas ir gatavojas atgriezties vienu. 1365 01:04:04,280 --> 01:04:06,900 Un tas notiek, lai izveidotu šeit. 1366 01:04:06,900 --> 01:04:09,430 Ko darīt, ja man ar vārdu sikspārnis? 1367 01:04:09,430 --> 01:04:11,310 Tas notiek, lai atgrieztos trīs. 1368 01:04:11,310 --> 01:04:12,560 Kur tas bat doties? 1369 01:04:12,560 --> 01:04:18,730 1370 01:04:18,730 --> 01:04:19,750 >> Tas nav piemērots. 1371 01:04:19,750 --> 01:04:21,000 Bet tas ir kaut kur aiziet. 1372 01:04:21,000 --> 01:04:23,340 Šī ir mana hash tabulu, galu galā, un viss ir jāiet kaut kur. 1373 01:04:23,340 --> 01:04:24,590 Tātad, ja ir nūja doties? 1374 01:04:24,590 --> 01:04:28,020 1375 01:04:28,020 --> 01:04:28,710 Jebkurš domas? 1376 01:04:28,710 --> 01:04:29,450 Guesses? 1377 01:04:29,450 --> 01:04:30,280 Labas guesses? 1378 01:04:30,280 --> 01:04:31,220 >> Mērķauditorija: Zero. 1379 01:04:31,220 --> 01:04:32,120 >> Jason Hirschhorn: Kāpēc nulle? 1380 01:04:32,120 --> 01:04:35,990 >> Mērķauditorija: Tā kā trīs moduļa trīs ir nulle? 1381 01:04:35,990 --> 01:04:38,620 >> Jason Hirschhorn: Three moduļa trīs ir nulle. 1382 01:04:38,620 --> 01:04:40,810 Tas ir liels minējums, un tas ir pareizi. 1383 01:04:40,810 --> 01:04:43,870 Tātad, šajā gadījumā tas būtu iespējams, iet uz nulli. 1384 01:04:43,870 --> 01:04:51,080 Tik labs veids, lai nodrošinātu, ka šis hash Funkcija atgriež vienīgi spēkā indeksi tiek 1385 01:04:51,080 --> 01:04:54,580 līdz modulēt to ar izmēru tabulā. 1386 01:04:54,580 --> 01:04:57,360 Ja jūs modulēt neatkarīgi šo peļņu, trīs, jūs vienmēr gatavojas saņemt 1387 01:04:57,360 --> 01:05:00,930 kaut kas starp nulli, viens un divi. 1388 01:05:00,930 --> 01:05:05,160 Un, ja tas vienmēr atgriežas septiņi, un Jūs vienmēr modulēt, trīs, tu esi 1389 01:05:05,160 --> 01:05:06,030 vienmēr gatavojas saņemt to pašu. 1390 01:05:06,030 --> 01:05:09,270 >> Tāpēc tas joprojām ir deterministisko Ja jūs modulo. 1391 01:05:09,270 --> 01:05:11,420 Bet tas nodrošinās, ka jums nekad kaut ko - 1392 01:05:11,420 --> 01:05:12,940 nederīgs nozare. 1393 01:05:12,940 --> 01:05:16,840 Parasti, ka moduļa vajadzētu notikt iekšpusē jūsu hash funkciju. 1394 01:05:16,840 --> 01:05:18,240 Tātad jums nav jāuztraucas par to. 1395 01:05:18,240 --> 01:05:20,555 Jūs vienkārši nevar nodrošināt, ka tas ir derīgs Indice. 1396 01:05:20,555 --> 01:05:23,700 1397 01:05:23,700 --> 01:05:26,700 Kādi jautājumi par šo potenciāls pitfall? 1398 01:05:26,700 --> 01:05:36,590 1399 01:05:36,590 --> 01:05:39,060 >> OK. 1400 01:05:39,060 --> 01:05:40,290 Un tur mēs ejam. 1401 01:05:40,290 --> 01:05:42,890 Nākamais potenciālu pitfall, un tas ir liels vienu. 1402 01:05:42,890 --> 01:05:46,880 Ko darīt, ja divas atslēgas karti pašu vērtību? 1403 01:05:46,880 --> 01:05:49,350 Tāpēc ka ir divi veidi, kā rīkoties šajā. 1404 01:05:49,350 --> 01:05:53,140 1405 01:05:53,140 --> 01:05:56,020 Pirmais sauc lineāra zondēšana, kas es esmu 1406 01:05:56,020 --> 01:05:57,300 nav iet pār. 1407 01:05:57,300 --> 01:06:01,120 Bet jums vajadzētu būt pazīstams ar to, kā , kas darbojas un kas tas ir. 1408 01:06:01,120 --> 01:06:05,610 >> Otrs es esmu gatavojas iet pāri jo tas ir viens, ka daudzi 1409 01:06:05,610 --> 01:06:08,290 cilvēki, iespējams, galu galā pieņemot lēmumu izmantot savu problēmu kopumu. 1410 01:06:08,290 --> 01:06:09,820 Protams, jums nav. 1411 01:06:09,820 --> 01:06:15,280 Bet problēmu kopumu, daudzi cilvēki mēdz izvēlēties, lai radītu hash tabulu 1412 01:06:15,280 --> 01:06:17,950 ar atsevišķu Virknējuma īstenot savu vārdnīcu. 1413 01:06:17,950 --> 01:06:21,390 Tāpēc mēs esam gatavojas iet pār to, ko tas nozīmē lai radītu hash tabulu ar 1414 01:06:21,390 --> 01:06:23,890 atsevišķa Ķēžu. 1415 01:06:23,890 --> 01:06:26,260 >> Tāpēc man ir ķirbju. 1416 01:06:26,260 --> 01:06:29,560 Tā atgriež nulli. 1417 01:06:29,560 --> 01:06:31,410 Un man ķirbju šeit. 1418 01:06:31,410 --> 01:06:35,880 1419 01:06:35,880 --> 01:06:37,930 Tad man ir - 1420 01:06:37,930 --> 01:06:39,922 kas ir vēl viens Halloween tēmu lieta? 1421 01:06:39,922 --> 01:06:42,200 >> Mērķauditorija: Candy. 1422 01:06:42,200 --> 01:06:42,770 >> Jason Hirschhorn: Candy! 1423 01:06:42,770 --> 01:06:43,910 Tas ir liels vienu. 1424 01:06:43,910 --> 01:06:47,760 Man konfektes, un konfektes arī dod man nulle. 1425 01:06:47,760 --> 01:06:49,350 Ko man darīt? 1426 01:06:49,350 --> 01:06:51,940 Jebkuras idejas? 1427 01:06:51,940 --> 01:06:53,940 Jo jūs visi veida zinām kāda atsevišķa virknes intervāli ir. 1428 01:06:53,940 --> 01:06:55,190 Tātad, kādas idejas, ko darīt? 1429 01:06:55,190 --> 01:06:58,170 1430 01:06:58,170 --> 01:06:59,110 Jā. 1431 01:06:59,110 --> 01:07:03,810 >> Mērķauditorija: Liekot virkni faktiski hash tabulā. 1432 01:07:03,810 --> 01:07:08,910 >> Jason Hirschhorn: Tātad mēs ejam izdarīt labu priekšstatu nekā šeit. 1433 01:07:08,910 --> 01:07:09,340 OK. 1434 01:07:09,340 --> 01:07:12,290 >> Mērķauditorija: Vai Hashtable [Dzirdams] 1435 01:07:12,290 --> 01:07:16,640 rādītājs, kas norāda uz sākums saraksta. 1436 01:07:16,640 --> 01:07:20,930 Un tad ir ķirbju būt pirmā vērtība šajā saistīts sarakstā un konfektes būt 1437 01:07:20,930 --> 01:07:22,800 otrā vērtība šajā saistīts sarakstā. 1438 01:07:22,800 --> 01:07:23,420 >> Jason Hirschhorn: OK. 1439 01:07:23,420 --> 01:07:24,670 Marcus, tas bija izcils. 1440 01:07:24,670 --> 01:07:26,160 Es esmu gatavojas lauzt, ka uz leju. 1441 01:07:26,160 --> 01:07:28,890 Marcus saka nav pārrakstīt ķirbju. 1442 01:07:28,890 --> 01:07:30,660 Tas būtu slikti. 1443 01:07:30,660 --> 01:07:33,640 Nelieciet konfektes kaut kur citur. 1444 01:07:33,640 --> 01:07:35,390 Mēs ejam, lai viņus gan nullei. 1445 01:07:35,390 --> 01:07:37,770 Bet mēs ejam, lai risinātu liekot tos nullei 1446 01:07:37,770 --> 01:07:39,395 izveidojot sarakstu nulles līmenī. 1447 01:07:39,395 --> 01:07:42,430 Un mēs spēsim izveidot sarakstu viss, kas plānots līdz nullei. 1448 01:07:42,430 --> 01:07:47,960 Un labākais veids, kā mēs uzzinājām, lai radītu sarakstu, kas var augt un sarauties 1449 01:07:47,960 --> 01:07:49,840 dinamiski neatrodas cits masīvs. 1450 01:07:49,840 --> 01:07:51,510 Tāpēc ne daudzdimensiju masīvu. 1451 01:07:51,510 --> 01:07:54,080 Bet vienkārši izveidot saistīts saraksts. 1452 01:07:54,080 --> 01:07:55,330 >> Tātad, ko viņš ierosināja - 1453 01:07:55,330 --> 01:07:57,950 1454 01:07:57,950 --> 01:07:59,200 Es esmu gatavojas saņemt jaunu - 1455 01:07:59,200 --> 01:08:15,380 1456 01:08:15,380 --> 01:08:19,689 ir izveidot masīvu ar norādes, masīvs norādes. 1457 01:08:19,689 --> 01:08:20,580 OK. 1458 01:08:20,580 --> 01:08:24,180 Jebkura ideja, vai mājienu, kāda veida no šīs norādes vajadzētu būt? 1459 01:08:24,180 --> 01:08:26,290 Marcus? 1460 01:08:26,290 --> 01:08:27,250 >> Mērķauditorija: norādes uz - 1461 01:08:27,250 --> 01:08:28,609 >> Jason Hirschhorn: jo jūs teica saistīts saraksts, tā - 1462 01:08:28,609 --> 01:08:29,520 >> Mērķauditorija: Mezgls norādes? 1463 01:08:29,520 --> 01:08:30,670 >> Jason Hirschhorn: Mezgls norādes. 1464 01:08:30,670 --> 01:08:32,830 Ja lietas mūsu saistīts saraksts ir mezgli, tad tie 1465 01:08:32,830 --> 01:08:34,370 būtu mezglu norādes. 1466 01:08:34,370 --> 01:08:35,939 Un ko viņi ir vienādi sākotnēji? 1467 01:08:35,939 --> 01:08:36,990 >> Mērķauditorija: Null. 1468 01:08:36,990 --> 01:08:38,240 >> Jason Hirschhorn: Null. 1469 01:08:38,240 --> 01:08:44,540 1470 01:08:44,540 --> 01:08:46,080 Tātad tur ir mūsu tukša lieta. 1471 01:08:46,080 --> 01:08:47,170 Ķirbju atgriežas nulles. 1472 01:08:47,170 --> 01:08:48,569 Ko mēs darām? 1473 01:08:48,569 --> 01:08:49,609 Staigāt mani caur to? 1474 01:08:49,609 --> 01:08:50,810 Patiesībā, Marcus jau man iedeva. 1475 01:08:50,810 --> 01:08:52,439 Kāds cits staigāt mani caur to. 1476 01:08:52,439 --> 01:08:54,760 Ko mēs darām, kad mēs - 1477 01:08:54,760 --> 01:08:56,609 Tas izskatās ļoti līdzīgi ko mēs tikai darot. 1478 01:08:56,609 --> 01:08:57,396 Avi. 1479 01:08:57,396 --> 01:08:59,090 >> Mērķauditorija: Es esmu gatavojas pieņemt minējums. 1480 01:08:59,090 --> 01:09:01,250 Tātad, ja jums Candy. 1481 01:09:01,250 --> 01:09:01,640 >> Jason Hirschhorn: Jā. 1482 01:09:01,640 --> 01:09:03,120 Nu, mēs saņēmām ķirbi. 1483 01:09:03,120 --> 01:09:03,870 Būsim mūsu pirmā. 1484 01:09:03,870 --> 01:09:04,324 Mēs saņēmām ķirbju. 1485 01:09:04,324 --> 01:09:04,779 >> Mērķauditorija: OK. 1486 01:09:04,779 --> 01:09:05,880 Ķirbju atgriežas nulles. 1487 01:09:05,880 --> 01:09:08,770 Tātad jūs ievietojiet to, ka. 1488 01:09:08,770 --> 01:09:10,810 Vai tiešām jūs ielieciet to saistītajā sarakstā. 1489 01:09:10,810 --> 01:09:13,550 >> Jason Hirschhorn: Kā mēs ielieciet to saistītajā sarakstā? 1490 01:09:13,550 --> 01:09:15,479 >> Mērķauditorija: Ak, faktiskais sintakse? 1491 01:09:15,479 --> 01:09:16,240 >> Jason Hirschhorn: Just staigāt - 1492 01:09:16,240 --> 01:09:16,740 pateikt vairāk. 1493 01:09:16,740 --> 01:09:19,310 Ko mēs darām? 1494 01:09:19,310 --> 01:09:22,100 >> Mērķauditorija: Jūs vienkārši ievietot tā kā pirmo mezglu. 1495 01:09:22,100 --> 01:09:22,675 >> Jason Hirschhorn: OK. 1496 01:09:22,675 --> 01:09:29,069 Tāpēc mums ir mūsu mezglu, ķirbju. 1497 01:09:29,069 --> 01:09:31,560 Un tagad, kā es varu ievietot to? 1498 01:09:31,560 --> 01:09:34,590 1499 01:09:34,590 --> 01:09:37,090 >> Mērķauditorija: Jūs piešķirat to rādītāja. 1500 01:09:37,090 --> 01:09:37,970 >> Jason Hirschhorn: Kurš rādītājs? 1501 01:09:37,970 --> 01:09:39,620 >> Mērķauditorija: rādītājs ir nulle. 1502 01:09:39,620 --> 01:09:41,420 >> Jason Hirschhorn: Tātad, ja vai tas punkts? 1503 01:09:41,420 --> 01:09:42,810 >> Mērķauditorija: Lai null tiesības tagad. 1504 01:09:42,810 --> 01:09:43,529 >> Jason Hirschhorn: Nu, tas norāda uz null. 1505 01:09:43,529 --> 01:09:44,499 Bet es esmu liekot ķirbju. 1506 01:09:44,499 --> 01:09:46,053 Tātad, kur ir tas punkts? 1507 01:09:46,053 --> 01:09:46,880 >> Mērķauditorija: Lai ķirbju. 1508 01:09:46,880 --> 01:09:47,399 >> Jason Hirschhorn Lai ķirbi. 1509 01:09:47,399 --> 01:09:48,760 Tieši tā. 1510 01:09:48,760 --> 01:09:50,010 Tāpēc tas norāda uz ķirbi. 1511 01:09:50,010 --> 01:09:52,500 1512 01:09:52,500 --> 01:09:54,250 Un kur šis rādītājs ķirbju punktu? 1513 01:09:54,250 --> 01:09:57,986 1514 01:09:57,986 --> 01:09:58,340 Līdz 1515 01:09:58,340 --> 01:09:58,590 >> Mērķauditorija: Null. 1516 01:09:58,590 --> 01:09:59,210 >> Jason Hirschhorn Lai null. 1517 01:09:59,210 --> 01:10:00,460 Tieši tā. 1518 01:10:00,460 --> 01:10:03,570 1519 01:10:03,570 --> 01:10:05,140 Tātad mēs vienkārši ievietot kaut ko uz saistītajā sarakstā. 1520 01:10:05,140 --> 01:10:07,210 Mēs tikko uzrakstīju šo kodu, lai to izdarītu. 1521 01:10:07,210 --> 01:10:09,520 Gandrīz mēs gandrīz got it pilnīgi ieplaisājusi. 1522 01:10:09,520 --> 01:10:10,790 Tagad mēs ievietotu konfektes. 1523 01:10:10,790 --> 01:10:13,480 Mūsu Candy arī iet uz nulli. 1524 01:10:13,480 --> 01:10:16,100 Tātad, ko mēs darām ar Candy? 1525 01:10:16,100 --> 01:10:18,790 >> Mērķauditorija: Tas ir atkarīgs no tā, vai ne mēs cenšamies, lai sakārtotu to. 1526 01:10:18,790 --> 01:10:19,640 >> Jason Hirschhorn: Tas ir tieši labi. 1527 01:10:19,640 --> 01:10:21,070 Tas ir atkarīgs no tā, vai Mēs cenšamies, lai sakārtotu to. 1528 01:10:21,070 --> 01:10:22,660 Pieņemsim, ka mēs neesam gatavojas, lai sakārtotu to. 1529 01:10:22,660 --> 01:10:24,880 >> Mērķauditorija: Nu tad, kā mēs apspriedām pirms, tas ir vienkāršākais vienkārši nodot to 1530 01:10:24,880 --> 01:10:28,590 labi sākumā, lai rādītājs no nulles punkta līdz konfektes. 1531 01:10:28,590 --> 01:10:29,020 >> Jason Hirschhorn: OK. 1532 01:10:29,020 --> 01:10:29,380 Turiet par. 1533 01:10:29,380 --> 01:10:30,630 Ļaujiet man radīt konfektes šeit. 1534 01:10:30,630 --> 01:10:34,030 1535 01:10:34,030 --> 01:10:35,150 Tāpēc šis rādītājs - 1536 01:10:35,150 --> 01:10:37,590 >> Mērķauditorija: Jā, tagad ir vērsta uz konfektes. 1537 01:10:37,590 --> 01:10:40,580 Tad rādītāju no Candy norāda uz ķirbi. 1538 01:10:40,580 --> 01:10:43,140 1539 01:10:43,140 --> 01:10:44,560 >> Jason Hirschhorn: piemēram, ka? 1540 01:10:44,560 --> 01:10:47,380 Un teikt, mēs saņēmām citu lieta karti līdz nullei? 1541 01:10:47,380 --> 01:10:48,660 >> Mērķauditorija: Nu, jūs vienkārši darīt to pašu? 1542 01:10:48,660 --> 01:10:50,290 >> Jason Hirschhorn: Vai pats. 1543 01:10:50,290 --> 01:10:53,700 Tātad šajā gadījumā, ja mums nav vēlas, lai saglabātu to sakārtoti to 1544 01:10:53,700 --> 01:10:55,270 izklausās diezgan vienkārši. 1545 01:10:55,270 --> 01:10:59,920 Ņemam rādītāju uz Indice ņemot vērā mūsu hash funkciju. 1546 01:10:59,920 --> 01:11:03,830 Mums, kas norāda uz mūsu jauno mezglu. 1547 01:11:03,830 --> 01:11:07,830 Un tad kāds tas bija vērsta iepriekš - 1548 01:11:07,830 --> 01:11:10,620 šajā gadījumā Null, jo Otrajā gadījumā ķirbju - 1549 01:11:10,620 --> 01:11:15,310 ka, neatkarīgi no tā, norādot uz iepriekš, mēs pievienot uz tuvāko 1550 01:11:15,310 --> 01:11:17,810 Mūsu jaunā mezglu. 1551 01:11:17,810 --> 01:11:19,650 Mēs ievietojot kaut sākumā. 1552 01:11:19,650 --> 01:11:22,900 Faktiski tas ir daudz vienkāršāk, nekā cenšoties saglabāt sarakstu sakārtoti. 1553 01:11:22,900 --> 01:11:25,340 Bet atkal, meklēšana būs vairāk sarežģī šeit. 1554 01:11:25,340 --> 01:11:28,300 Mēs vienmēr ir iet uz beigām. 1555 01:11:28,300 --> 01:11:29,650 >> OK. 1556 01:11:29,650 --> 01:11:32,750 Visus jautājumus par atsevišķu Virknējuma? 1557 01:11:32,750 --> 01:11:34,690 Kā tas darbojas? 1558 01:11:34,690 --> 01:11:35,820 Lūdzu, pajautājiet viņiem tagad. 1559 01:11:35,820 --> 01:11:39,260 Es tiešām gribu, lai pārliecinātos, ka jūs visi saprast pirms mēs galvu. 1560 01:11:39,260 --> 01:11:48,410 1561 01:11:48,410 --> 01:11:52,060 >> Mērķauditorija: Kāpēc jūs nodot ķirbi un konfektes vienā un tajā pašā 1562 01:11:52,060 --> 01:11:54,108 daļa hash tabulu? 1563 01:11:54,108 --> 01:11:55,860 >> Jason Hirschhorn: Labs jautājums. 1564 01:11:55,860 --> 01:11:59,140 Kāpēc mēs viņus pats daļa hash tabulu? 1565 01:11:59,140 --> 01:12:03,200 Nu, šajā gadījumā mūsu hash funkcija atgriežas nulles gan no tiem. 1566 01:12:03,200 --> 01:12:05,310 Tāpēc viņiem ir nepieciešams doties pie Indice nullei jo tas ir, ja mēs ejam uz 1567 01:12:05,310 --> 01:12:07,420 meklēt viņiem, ja mēs kādreiz vēlas, lai tos uzmeklēt. 1568 01:12:07,420 --> 01:12:11,750 Atkal, ar lineāro zondēšana pieeju mēs nevarētu nodot tos gan ir nulle. 1569 01:12:11,750 --> 01:12:13,900 Bet atsevišķā ķēdes pieeja, Mēs ejam, lai viņus abus uz nulli 1570 01:12:13,900 --> 01:12:16,620 un pēc tam izveidot sarakstu nost no nulles. 1571 01:12:16,620 --> 01:12:20,140 >> Un mēs negribam, lai pārrakstīt ķirbju tikai par to, jo tad mēs 1572 01:12:20,140 --> 01:12:21,860 pieņemu, ka ķirbju bija nekad nav ievietota. 1573 01:12:21,860 --> 01:12:25,230 Ja mēs vienkārši turēt viena lieta vieta, kas varētu būt slikti. 1574 01:12:25,230 --> 01:12:28,590 Tad nebūtu iespēja mums jebkad - 1575 01:12:28,590 --> 01:12:31,660 Ja mēs kādreiz bija dublikātu, tad mēs vienkārši izdzēst savu sākotnējo vērtību. 1576 01:12:31,660 --> 01:12:34,090 Tātad, tas ir iemesls, kāpēc mēs to darām šo pieeju. 1577 01:12:34,090 --> 01:12:36,580 Vai tas ir iemesls, kāpēc mēs izvēlējāmies - bet atkal, mēs izvēlējās atsevišķu Ķēžu rādītāju pieeju, 1578 01:12:36,580 --> 01:12:39,670 kas ir vēl daudzas citas metodes varētu izvēlēties. 1579 01:12:39,670 --> 01:12:41,185 Tas, ka atbildi uz savu jautājumu? 1580 01:12:41,185 --> 01:12:41,660 >> OK. 1581 01:12:41,660 --> 01:12:42,910 Carlos. 1582 01:12:42,910 --> 01:12:46,130 1583 01:12:46,130 --> 01:12:47,720 Linear zondēšana nozīmētu - 1584 01:12:47,720 --> 01:12:51,913 ja mēs atradām sadursmes nulles līmenī, mēs izskatītos nākamajā vietas, lai redzētu, vai 1585 01:12:51,913 --> 01:12:54,310 tas bija atvērts, un nodot to tur. 1586 01:12:54,310 --> 01:12:57,320 Un tad mēs skatāmies nākamajā sportā un redzēt, ja tas ir atvērts, un nodot to tur. 1587 01:12:57,320 --> 01:12:59,780 Tāpēc mēs atrast nākamo pieejamo atvērt vietas un nodot to tur. 1588 01:12:59,780 --> 01:13:02,580 1589 01:13:02,580 --> 01:13:03,890 Kādi citi jautājumi? 1590 01:13:03,890 --> 01:13:05,370 Jā, Avi. 1591 01:13:05,370 --> 01:13:07,490 >> Mērķauditorija: Kā sekot tam, Ko jūs saprotat ar nākamo vietas? 1592 01:13:07,490 --> 01:13:10,250 Hash galda vai saistītajā sarakstā. 1593 01:13:10,250 --> 01:13:12,100 >> Jason Hirschhorn: lineārajiem programmēšana, nav saistīti sarakstus. 1594 01:13:12,100 --> 01:13:13,400 Nākamais plankums uz hash tabulu. 1595 01:13:13,400 --> 01:13:13,820 >> Mērķauditorija: OK. 1596 01:13:13,820 --> 01:13:17,570 Tāpēc hash tabulu būtu inicializēts lielumam - 1597 01:13:17,570 --> 01:13:19,560 piemēram skaita virknes ka jums bija ievietot? 1598 01:13:19,560 --> 01:13:22,170 >> Jason Hirschhorn: Jūs būtu vēlas, lai būtu tiešām liels. 1599 01:13:22,170 --> 01:13:23,910 Jā. 1600 01:13:23,910 --> 01:13:27,900 Šeit ir priekšstatu par to, ko mēs tikai vērsa uz kuģa. 1601 01:13:27,900 --> 01:13:29,470 Atkal, mums ir sadursmes šeit. 1602 01:13:29,470 --> 01:13:30,710 pie 152. 1603 01:13:30,710 --> 01:13:33,570 Un jūs redzēsiet, mēs izveidojām saistīts saraksts off no tā. 1604 01:13:33,570 --> 01:13:38,200 1605 01:13:38,200 --> 01:13:41,850 Atkal, hash tabulu atsevišķu ķēžu pieeja nav viens no jums 1606 01:13:41,850 --> 01:13:45,590 ir jāveic, lai uzstādītu problēmas seši, bet ir viens, ka daudzi 1607 01:13:45,590 --> 01:13:47,100 skolēni mēdz lietot. 1608 01:13:47,100 --> 01:13:51,140 Tāpēc uz šo piezīmi, parunāsim īsumā pirms mēs galvu par problēmu seši, 1609 01:13:51,140 --> 01:13:52,160 un tad es jums dalīties ar jums stāstu. 1610 01:13:52,160 --> 01:13:55,120 Mums ir trīs minūtes. 1611 01:13:55,120 --> 01:13:55,750 >> Problēma noteikti seši. 1612 01:13:55,750 --> 01:13:57,790 Jums ir četras funkcijas - 1613 01:13:57,790 --> 01:14:02,430 slodze, pārbaudiet, izmērs un izkraut. 1614 01:14:02,430 --> 01:14:03,380 Slodze - 1615 01:14:03,380 --> 01:14:07,120 labi, mēs esam iet vairāk nekā slodzi tikai tagad. 1616 01:14:07,120 --> 01:14:09,330 Mēs vērsa slodzi uz kuģa. 1617 01:14:09,330 --> 01:14:13,230 Un mēs pat sākām kodēšanas daudz ievietojot saistītajā sarakstā. 1618 01:14:13,230 --> 01:14:18,020 Tāpēc slodze ir ne daudz vairāk nekā tas, ko mēs esam tikko dara. 1619 01:14:18,020 --> 01:14:21,070 >> Pārbaude ir, kad esat kaut kas piekrauts. 1620 01:14:21,070 --> 01:14:22,580 Tas ir tas pats process, kā šī. 1621 01:14:22,580 --> 01:14:26,845 Tās pašas pirmās divas daļas, kur mest kaut uz hash funkciju 1622 01:14:26,845 --> 01:14:29,190 un saņemt savu vērtību. 1623 01:14:29,190 --> 01:14:30,700 Bet tagad mēs esam ne ievietošanas. 1624 01:14:30,700 --> 01:14:33,350 Tagad mēs meklējam to. 1625 01:14:33,350 --> 01:14:37,130 Man ir parauga kods rakstīts, lai atrastu kaut saistītajā sarakstā. 1626 01:14:37,130 --> 01:14:38,250 Es aicinu jūs, lai praksē to. 1627 01:14:38,250 --> 01:14:43,000 Bet intuitīvi atrast kaut ko ir diezgan līdzīgs ievietojot kaut ko. 1628 01:14:43,000 --> 01:14:46,540 Patiesi, mēs zīmējis atrast kaut saistītajā sarakstā, kas pārvietojas 1629 01:14:46,540 --> 01:14:48,910 līdz kamēr jums līdz galam. 1630 01:14:48,910 --> 01:14:52,430 Un, ja jums ir līdz galam un nevarēja atrast, tad tas nav tur. 1631 01:14:52,430 --> 01:14:55,400 Tātad tas ir pārbaude, būtībā. 1632 01:14:55,400 --> 01:14:57,030 >> Nākamais ir izmērs. 1633 01:14:57,030 --> 01:14:57,910 Pieņemsim izlaist izmēru. 1634 01:14:57,910 --> 01:15:00,040 Beidzot esat izkraut. 1635 01:15:00,040 --> 01:15:02,890 Izkraut ir viens mēs neesam sagatavoti uz kuģa vai kodēta vēl. 1636 01:15:02,890 --> 01:15:05,990 Bet es aicinu jūs izmēģināt kodēšanas to mūsu izlases saistīts saraksta piemērs. 1637 01:15:05,990 --> 01:15:11,440 Bet izkraut intuitīvi ir līdzīgs free - 1638 01:15:11,440 --> 01:15:14,010 un es domāju, ir līdzīgs, lai pārbaudītu. 1639 01:15:14,010 --> 01:15:17,350 Izņemot tagad katru reizi, kad ejam izmantojot, jūs ne tikai pārbaudīt uz 1640 01:15:17,350 --> 01:15:19,090 redzēt, ja jums ir jūsu vērtība tur. 1641 01:15:19,090 --> 01:15:22,490 Bet jūs lietojat šo mezglu un atbrīvojot to būtībā. 1642 01:15:22,490 --> 01:15:23,610 Tas ir tas, ko izkraut lūdz, lai jūs darīt. 1643 01:15:23,610 --> 01:15:24,670 Bezmaksas visu, ko esat malloced. 1644 01:15:24,670 --> 01:15:27,480 Tātad jūs iet cauri visam sarakstam atkal iet cauri visam hash 1645 01:15:27,480 --> 01:15:27,760 tabula vēlreiz. 1646 01:15:27,760 --> 01:15:29,240 Šoreiz nav pārbaudīt lai redzētu, kas tur ir. 1647 01:15:29,240 --> 01:15:31,080 Tikai brīvi, kas ir tur. 1648 01:15:31,080 --> 01:15:33,260 >> Un, visbeidzot, izmērs. 1649 01:15:33,260 --> 01:15:34,350 Izmērs būtu jāīsteno. 1650 01:15:34,350 --> 01:15:35,590 Ja jums nav ieviest izmērs - 1651 01:15:35,590 --> 01:15:36,250 Es saku to, kā šis. 1652 01:15:36,250 --> 01:15:39,740 Ja jums nav ieviest izmēru precīzi vienu rindiņu kodu, ieskaitot 1653 01:15:39,740 --> 01:15:43,760 atpakaļ paziņojumu, jūs esat nepareizi dara izmēru. 1654 01:15:43,760 --> 01:15:47,170 Tāpēc pārliecinieties lielumu, lai pilnībā dizainu punktus, jūs darāt to tieši vienā 1655 01:15:47,170 --> 01:15:49,970 līnija koda, ietverot atgriešanās paziņojumu. 1656 01:15:49,970 --> 01:15:52,450 >> Un nav sakravāt vēl Akchar. 1657 01:15:52,450 --> 01:15:53,700 Ieinteresēts bebru. 1658 01:15:53,700 --> 01:15:55,820 1659 01:15:55,820 --> 01:16:01,300 Es gribēju pateikt paldies puiši lai nāk uz sadaļu. 1660 01:16:01,300 --> 01:16:02,550 Ir Happy Halloween. 1661 01:16:02,550 --> 01:16:05,300 1662 01:16:05,300 --> 01:16:05,960 Šis ir mans kostīms. 1663 01:16:05,960 --> 01:16:08,850 Es būšu valkā šo ceturtdien ja es redzu tevi pie darba laika. 1664 01:16:08,850 --> 01:16:14,640 Un, ja jūs esat ieinteresēti par kādu vairāk fons, lai šo kostīms, jūtas 1665 01:16:14,640 --> 01:16:19,135 brīvi, lai pārbaudītu 2011 sadaļu par stāstu par to, kāpēc es esmu 1666 01:16:19,135 --> 01:16:20,900 valkājot ķirbju kostīms. 1667 01:16:20,900 --> 01:16:23,680 Un tas ir skumjš stāsts. 1668 01:16:23,680 --> 01:16:27,050 Tāpēc pārliecinieties, ka Jums ir daži audi tuvumā. 1669 01:16:27,050 --> 01:16:28,680 Bet gan uz to, ja jums ir kāda jautājumi, es stick apkārt 1670 01:16:28,680 --> 01:16:29,960 ārpus pēc sadaļā. 1671 01:16:29,960 --> 01:16:31,510 Good luck par problēmu noteikti seši. 1672 01:16:31,510 --> 01:16:33,540 Un, kā vienmēr, ja jums ir kāda jautājumi, let me know. 1673 01:16:33,540 --> 01:16:35,584