1 00:00:00,000 --> 00:00:13,070 2 00:00:13,070 --> 00:00:13,715 >> ROB BOWDEN: Hi. 3 00:00:13,715 --> 00:00:17,800 Jien Rob, u nispera tiegħek logħba għall-logħba tal-15. 4 00:00:17,800 --> 00:00:22,040 Issa, hemm erba 'funzjonijiet li għandek bżonn biex jimplimentaw dan il-programm - Iniz, 5 00:00:22,040 --> 00:00:24,650 jiġbed, jimxu, u rebaħ. 6 00:00:24,650 --> 00:00:27,230 Allura, ejja nħarsu lejn Iniz. 7 00:00:27,230 --> 00:00:32,930 >> Hawnhekk, naraw l-ewwel ħaġa li aħna qed ser tagħmel hu li tiddikjara varjabbli 8 00:00:32,930 --> 00:00:34,600 imsejħa counter. 9 00:00:34,600 --> 00:00:37,620 Li għaddej biex jiġu initialized għal żminijiet d d minus 1. 10 00:00:37,620 --> 00:00:40,200 Ftakar li d hija d-dimensjoni tal-bord tagħna. 11 00:00:40,200 --> 00:00:43,840 Kif Iniz ikun sejjer jaħdem huwa għaddej li jtenni fuq il-bord kollu 12 00:00:43,840 --> 00:00:46,050 u aħna qed tmur biex tibda fil-quċċata xellug. 13 00:00:46,050 --> 00:00:48,570 >> U ejja biss jgħidu li aħna jkollhom 4 minn 4 bord. 14 00:00:48,570 --> 00:00:51,220 Allura l-quċċata xellug nkunu se ngħid huwa 15. 15 00:00:51,220 --> 00:00:53,960 U allura aħna qed biss se jgħoddu permezz tal-bordijiet, qal 15, 14, 13, 16 00:00:53,960 --> 00:00:58,510 12, 11, 10, 9, 8, 7, 6, 5, 4, u l-bqija. 17 00:00:58,510 --> 00:01:03,780 Allura l-quċċata xellug, nistennew ikunu żminijiet d d minus 1, li fil-4 minn 4 18 00:01:03,780 --> 00:01:08,290 każ se tkun 16 minus 1, li huwa b'mod korrett 15. 19 00:01:08,290 --> 00:01:10,885 >> U issa hawn fejn aħna qed tmur biex jtenni fuq il-bord kollu. 20 00:01:10,885 --> 00:01:14,720 U aħna qed tmur biex jistabbilixxu kull pożizzjoni fil- il-bord għall-valur attwali ta ' 21 00:01:14,720 --> 00:01:19,090 counter tagħna, u mbagħad counter huwa għaddej li decrement, sabiex il-li jmiss 22 00:01:19,090 --> 00:01:22,300 pożizzjoni nilħqu huwa se jkollu counter tkun waħda inqas minn 23 00:01:22,300 --> 00:01:23,690 il-pożizzjoni preċedenti. 24 00:01:23,690 --> 00:01:26,970 Allura aħna inizjalment kellhom 15 u decrement kontro. 25 00:01:26,970 --> 00:01:30,065 Mela allura aħna qed tmur biex tassenja 14 għall- pożizzjoni li jmiss, kontro decrement, 26 00:01:30,065 --> 00:01:33,710 u aħna qed tmur biex assenjat 13, u l-bqija. 27 00:01:33,710 --> 00:01:37,620 >> Fl-aħħarnett, għandna bżonn biex jimmaniġġaw dak kantuniera każ fejn, jekk il-bord għandu anki 28 00:01:37,620 --> 00:01:44,450 dimensjoni, allura biss tagħmel 15, 14, 13, 12, it-triq kollha sa 3, 2, 1, huwa 29 00:01:44,450 --> 00:01:46,780 se leave us ma ' bord unsolvable. 30 00:01:46,780 --> 00:01:49,390 U għandna biex tpartit l-1 u 2. 31 00:01:49,390 --> 00:01:52,930 Għalhekk, jekk d mod 2 egwali għal 0, li kif aħna qed tmur biex jiċċekkjaw 32 00:01:52,930 --> 00:01:54,410 biex tara jekk huwa saħansitra. 33 00:01:54,410 --> 00:01:59,810 Jekk d mod 2 egwali għal 0, imbagħad fir-ringiela d minus 1, li hija l-ringiela tal-qiegħ, u 34 00:01:59,810 --> 00:02:05,430 pożizzjoni d minus 2, jew il-kolonna d minus 2, aħna qed tmur biex ikun stabbilit li għal 2, u 35 00:02:05,430 --> 00:02:07,860 kolonna d minus 3 nkunu se ssettjata għal 1. 36 00:02:07,860 --> 00:02:12,170 Allura li jinsab biss rivers fejn l-1 u 2 bħalissa. 37 00:02:12,170 --> 00:02:16,270 >> Fl-aħħarnett, aħna qed tmur biex jistabbilixxu l-ħafna qiegħ dritt ugwali għal vojt, fejn 38 00:02:16,270 --> 00:02:20,700 vojt jkun hash definit fil-quċċata bħala 0. 39 00:02:20,700 --> 00:02:26,785 Allura, li ma kienx strettament meħtieġ, peress li dan għall loop huwa se jkollu 40 00:02:26,785 --> 00:02:30,610 tistabbilixxi l-qiegħ dritt għal 0, peress counter, naturalment, se jinżel għal 0. 41 00:02:30,610 --> 00:02:34,610 Iżda li jiddependi fuqna jafu li blank ġie hashed biex isibu 0. 42 00:02:34,610 --> 00:02:38,280 Jekk mmur fis dan il-programm u aktar tard bidla vojt fil-quċċata sa 100, dan 43 00:02:38,280 --> 00:02:39,770 xorta għandhom jaħdmu. 44 00:02:39,770 --> 00:02:43,180 >> Allura dan huwa biss tagħmel ċert li l- qiegħ dritt huwa attwalment ugwali għal tagħna 45 00:02:43,180 --> 00:02:44,870 valur vojt. 46 00:02:44,870 --> 00:02:50,270 Fl-aħħarnett, għandna żewġ varjabbli globali, hekk vojta iuj vojta, u naraw 47 00:02:50,270 --> 00:02:53,360 dawk dikjarati fil-quċċata. 48 00:02:53,360 --> 00:02:56,270 U aħna qed tmur biex jużaw dawn iż-żewġ globali varjabbli li jżommu rekord ta 'l- 49 00:02:56,270 --> 00:02:59,040 pożizzjoni tal-vojt, hekk li aħna ma bżonn li tfittex permezz ta 'l kollu 50 00:02:59,040 --> 00:03:03,890 bord biex isibu l-blank kull wieħed ħin aħna nippruvaw nagħmlu pass. 51 00:03:03,890 --> 00:03:08,450 Allura l-pożizzjoni tal-vojt dejjem ser tibda fil-qiegħ dritt. 52 00:03:08,450 --> 00:03:13,270 Allura l-qiegħ dritt huwa mogħti bi indiċi 1 d minus 1, d minus. 53 00:03:13,270 --> 00:03:14,880 Allura, li Iniz. 54 00:03:14,880 --> 00:03:17,040 >> Issa nimxu fuq li tiġbed. 55 00:03:17,040 --> 00:03:19,370 Għalhekk, tiġbed se tkun simili fejn aħna qed tmur biex jtenni 56 00:03:19,370 --> 00:03:20,970 fuq il-bord kollu. 57 00:03:20,970 --> 00:03:25,400 U aħna biss tixtieq li jistampaw il-valur dan huwa f'kull pożizzjoni tal-bord. 58 00:03:25,400 --> 00:03:29,580 Allura hawn, aħna qed istampar l-valur li l- f'kull pożizzjoni tal-bord. 59 00:03:29,580 --> 00:03:32,280 U tinnota li aħna qed tagħmel -. 60 00:03:32,280 --> 00:03:37,410 U li jinsab biss javżak printf li irrispettivament minn jekk huwa ċifri waħda jew 61 00:03:37,410 --> 00:03:42,010 numru żewġ ċifri, aħna xorta tixtieq li jieħdu żewġ kolonni fil-print out, 62 00:03:42,010 --> 00:03:46,290 b'tali mod li jekk għandna żewġ ċifri u wieħed numri ċifri fl-istess bord, tagħna 63 00:03:46,290 --> 00:03:49,450 board xorta se tfittex sbieħ u kwadri. 64 00:03:49,450 --> 00:03:54,190 >> Allura rridu nagħmlu li għal kull valur fil-bord, ħlief għall-blank. 65 00:03:54,190 --> 00:03:58,260 Għalhekk, jekk il-pożizzjoni fil-bord ugwali il-vojt, allura aħna speċifikament 66 00:03:58,260 --> 00:04:01,730 tixtieq li jistampa biss underscore biex jirrappreżentaw il-vojt, minflok 67 00:04:01,730 --> 00:04:05,150 ikun x'ikun il-valur tal- blank fatt hu. 68 00:04:05,150 --> 00:04:08,500 >> Fl-aħħarnett, irridu li jistampaw out linja ġdida. 69 00:04:08,500 --> 00:04:11,970 Avviż li dan għadu ġewwa l barra għal loop, iżda barra 70 00:04:11,970 --> 00:04:13,200 il-ġewwa għall-loop. 71 00:04:13,200 --> 00:04:17,930 Peress li dan ta 'barra għal loop hija mtennija fillieri kollha, u għalhekk dan printf huwa 72 00:04:17,930 --> 00:04:22,130 ser biss print linja ġdida, hekk aħna jimxu fuq jistampa l-ringiela li jmiss. 73 00:04:22,130 --> 00:04:23,910 U li hu għal tiġbed. 74 00:04:23,910 --> 00:04:27,770 >> Allura, issa ejja jimxu fuq li jiċċaqalqu. 75 00:04:27,770 --> 00:04:32,590 Issa, aħna jgħaddu mossa, il-maduma li l- utent hija mdaħħla fil-logħba - huma 76 00:04:32,590 --> 00:04:36,360 jidħol il-maduma jkunu jridu jimxu - u int suppost jirritornaw bool, hekk 77 00:04:36,360 --> 00:04:39,300 jew vera jew falza, jiddependi fuq jekk dan pass kien attwalment 78 00:04:39,300 --> 00:04:43,360 valida - jekk dan maduma jista 'jkun mċaqalqa fl-ispazju vojt. 79 00:04:43,360 --> 00:04:48,340 >> Allura hawn, aħna niddikjaraw varjabbli lokali, tile_1 u tile_j, li ser 80 00:04:48,340 --> 00:04:52,150 jkun simili għal blank_i u blank_j, ħlief li għaddej biex iżommu kont ta 'l- 81 00:04:52,150 --> 00:04:54,910 pożizzjoni tal-maduma. 82 00:04:54,910 --> 00:05:00,370 Issa hawnhekk, aħna qed tmur biex jużaw blank_i u blank_j u jgħidu id-dritt, hekk 83 00:05:00,370 --> 00:05:01,930 hawn l-vojt fuq il-bord. 84 00:05:01,930 --> 00:05:04,420 >> Issa, hija l-madum fuq l-vojt? 85 00:05:04,420 --> 00:05:06,210 Huwa l-maduma għall-xellug tal-vojt? 86 00:05:06,210 --> 00:05:07,420 Huwa l-maduma fuq il-lemin tal-vojt? 87 00:05:07,420 --> 00:05:08,970 Huwa l-maduma taħt il-vojt? 88 00:05:08,970 --> 00:05:13,330 Għalhekk, jekk il-maduma fi kwalunkwe minn dawk pożizzjonijiet, allura aħna nafu li l-maduma 89 00:05:13,330 --> 00:05:16,390 jista 'jiġi mċaqlaq fil-post vojt u il-vojt jista 'jiġi mċaqlaq li meta l- 90 00:05:16,390 --> 00:05:18,240 maduma bħalissa. 91 00:05:18,240 --> 00:05:26,400 >> So here, ngħidu jekk board fil-pożizzjoni blank_i minus 1 blank_j. 92 00:05:26,400 --> 00:05:31,120 Allura dan huwa qal huwa l-maduma fuq il-vojt attwali? 93 00:05:31,120 --> 00:05:34,350 U jekk iva, aħna qed tmur biex tiftakar li hija l-pożizzjoni tal-maduma. 94 00:05:34,350 --> 00:05:37,870 Il-madum ikun fil-pożizzjoni blank_i minus 1 u blank_j. 95 00:05:37,870 --> 00:05:40,660 issa ewwel, irridu wkoll din il-verifika dritt hawn, hekk blank_i huwa 96 00:05:40,660 --> 00:05:41,760 akbar minn 0. 97 00:05:41,760 --> 00:05:43,410 >> Għaliex irridu li tagħmel dan? 98 00:05:43,410 --> 00:05:47,290 Ukoll, jekk il-vojt huwa fil-filliera ta 'fuq tal-bord, allura ma rridux li 99 00:05:47,290 --> 00:05:51,240 ħarsa fuq il-vojt għall-maduma peress m'hemm xejn fuq mill-quċċata 100 00:05:51,240 --> 00:05:52,430 ringiela tal-bord. 101 00:05:52,430 --> 00:05:55,950 Din hija kif inti tista 'tispiċċa jkollna xi ħaġa bħal tort segmentazzjoni jew 102 00:05:55,950 --> 00:05:59,030 program tiegħek jista 'biss xogħol b'mod mhux mistenni. 103 00:05:59,030 --> 00:06:04,310 Għalhekk, dan qed tagħmel ċert li aħna ma tfittex fil-postijiet li ma jkunux validi. 104 00:06:04,310 --> 00:06:08,470 >> Issa aħna qed tmur biex jagħmlu l-istess ħaġa għall- kollha kombinazzjonijiet possibbli oħra. 105 00:06:08,470 --> 00:06:13,250 Allura hawn, aħna qed tfittex taħt il-vojt biex tara jekk dan huwa l-maduma. 106 00:06:13,250 --> 00:06:16,950 U għandna wkoll biex niżguraw li qed mhux fuq il-filliera qiegħ, jew inkella aħna 107 00:06:16,950 --> 00:06:18,910 m'għandhiex tfittex l-maduma. 108 00:06:18,910 --> 00:06:25,040 Hawnhekk, aħna qed tmur biex tħares lejn ix-xellug tal- l-vojt biex tara jekk huwa l-maduma. 109 00:06:25,040 --> 00:06:27,860 U aħna ma nħarsu lejn ix-xellug jekk aħna qed fil-kolonna fuq ix-xellug. 110 00:06:27,860 --> 00:06:30,100 U hawn aħna qed tmur biex tħares lill- dritt tal-vojt, u aħna ma nistgħux 111 00:06:30,100 --> 00:06:33,340 tħares lejn il-lemin jekk aħna qed fil-kolonna lemini. 112 00:06:33,340 --> 00:06:37,820 >> Għalhekk, jekk ebda waħda minn dawn l-affarijiet kienu vera, li tfisser il-maduma ma kienx maġenb 113 00:06:37,820 --> 00:06:39,640 għall-vojt u nistgħu ritorn foloz. 114 00:06:39,640 --> 00:06:41,230 Il-pass ma kienx validu. 115 00:06:41,230 --> 00:06:47,010 Iżda, jekk waħda minn dawn kienu veru, imbagħad fuq dan il-punt, aħna nafu li tile_i u 116 00:06:47,010 --> 00:06:50,540 tile_j huma ugwali għall- pożizzjoni tal-maduma. 117 00:06:50,540 --> 00:06:55,210 U hekk, aħna tista 'taġġorna l-bord fil- pożizzjonijiet tile_i u tile_j. 118 00:06:55,210 --> 00:06:59,820 Nafu l-valur il-ġdid se jkun l-vojt u li l-blank_i pożizzjoni 119 00:06:59,820 --> 00:07:02,950 blank_j, li kienet l-oriġinali blank - nafu l-maduma se 120 00:07:02,950 --> 00:07:04,030 joqogħdu hemm. 121 00:07:04,030 --> 00:07:07,610 >> Avviż aħna ma attwalment ikollhom jagħmlu tpartit reali hawnhekk, peress li nafu l- 122 00:07:07,610 --> 00:07:09,850 valuri li jeħtieġ li jiddaħħlu f'dawk il-pożizzjonijiet. 123 00:07:09,850 --> 00:07:13,780 Aħna ma bżonn temporanju varjabbli madwar. 124 00:07:13,780 --> 00:07:16,920 >> Fl-aħħarnett, għandna bżonn li wieħed jiftakar li aħna jkollhom varjabbli globali tagħna li huma 125 00:07:16,920 --> 00:07:18,980 iżżomm rekord tal-pożizzjoni tal-vojt. 126 00:07:18,980 --> 00:07:22,780 Allura aħna tixtieq li taġġorna l-pożizzjoni ta ' l-vojt li jkun fejn l-maduma 127 00:07:22,780 --> 00:07:24,190 oriġinarjament kienet. 128 00:07:24,190 --> 00:07:27,680 Fl-aħħarnett, nerġgħu lura minnu peress il-pass kien suċċess. 129 00:07:27,680 --> 00:07:31,110 Aħna b'suċċess tpartit l- blank bl-maduma. 130 00:07:31,110 --> 00:07:34,890 >> Kull dritt, hekk aħħar aħna bżonn li jiċċekkja won. 131 00:07:34,890 --> 00:07:39,900 Allura, rebaħ simili jirritorna bool fejn vera se jindikaw li l- 132 00:07:39,900 --> 00:07:41,460 utent rebaħ il-logħba. 133 00:07:41,460 --> 00:07:43,780 U falza li tindika li il-logħba għadu għaddej. 134 00:07:43,780 --> 00:07:46,340 L-utent ma rebaħ. 135 00:07:46,340 --> 00:07:52,100 Għalhekk, din se tkun pretty ħafna l-oppost ta 'Iniz, fejn Iniz, 136 00:07:52,100 --> 00:07:56,920 ftakar, aħna initialize-bord sa 15, 14, 13, 12, eċċ. 137 00:07:56,920 --> 00:08:03,000 Billi rebaħ, irridu li jiċċekkjaw jekk il- board huwa 1, 2, 3, 4, 5, u l-bqija. 138 00:08:03,000 --> 00:08:06,600 >> Allura, aħna qed tmur biex initialize tagħna kontra l-1 peress li dan huwa dak il-quċċata 139 00:08:06,600 --> 00:08:08,400 xellug tal-bord għandu jkun. 140 00:08:08,400 --> 00:08:10,860 U allura aħna qed tmur għal-linja fuq il-bord kollu. 141 00:08:10,860 --> 00:08:13,690 Ejja jinjora din il-kundizzjoni għat-tieni. 142 00:08:13,690 --> 00:08:18,410 U din il-kundizzjoni huwa biss se verifika huwa l-bord f'din il-pożizzjoni 143 00:08:18,410 --> 00:08:20,790 ugwali għall-għadd attwali? 144 00:08:20,790 --> 00:08:27,040 Jekk iva, inkrement l-għadd sabiex il- pożizzjoni li jmiss aħna nħarsu lejn huwa wieħed ogħla 145 00:08:27,040 --> 00:08:29,690 mill-pożizzjoni aħna fid-dritt issa. 146 00:08:29,690 --> 00:08:32,700 >> Allura li kif irridu jiksbu l- top xellug għandha tkun l-1. 147 00:08:32,700 --> 00:08:33,950 Inkrement l-għadd għal 2. 148 00:08:33,950 --> 00:08:35,010 Ħares lejn il-pożizzjoni li jmiss. 149 00:08:35,010 --> 00:08:35,690 Huwa dan 2? 150 00:08:35,690 --> 00:08:37,659 Jekk iva, inkrement l-għadd sa 3. 151 00:08:37,659 --> 00:08:39,179 Pożizzjoni Sussegwentement, hija din 3? 152 00:08:39,179 --> 00:08:42,440 Jekk iva, inkrement l-għadd sa 4, u l-bqija. 153 00:08:42,440 --> 00:08:49,190 Għalhekk, jekk ikun hemm xi pożizzjoni fuq il- bord li ma ugwali għadd tagħna, 154 00:08:49,190 --> 00:08:52,640 allura aħna rridu li jirritornaw falza peress li ifisser hemm xi maduma li huwa 155 00:08:52,640 --> 00:08:55,490 mhux fil-pożizzjoni korretta. 156 00:08:55,490 --> 00:08:58,810 >> Allura hawnhekk, dak li huwa din il-kundizzjoni tagħmel? 157 00:08:58,810 --> 00:09:02,170 Ukoll, ftakar li l-bjank ikun suppost li jmorru fuq il-lemin tal-qiegħ. 158 00:09:02,170 --> 00:09:06,180 U l-valur tal-vojt ma tista ' neċessarjament daqs il-valur tal- 159 00:09:06,180 --> 00:09:11,080 kontra li se jintlaħaq fil-qiegħ dritt. 160 00:09:11,080 --> 00:09:15,760 Allura aħna tixtieq speċifikament biex jiċċekkjaw jekk i ugwali ugwali d minus 1 u j ugwali 161 00:09:15,760 --> 00:09:19,470 ugwali d minus 1 - li qed tgħid jekk aħna qed iħarsu lejn il-lemin t'isfel tal- 162 00:09:19,470 --> 00:09:22,050 il-bord - allura aħna biss jridu jkomplu. 163 00:09:22,050 --> 00:09:26,200 Aħna rridu li skip dan partikulari iterazzjoni ta 'l-għall-loop. 164 00:09:26,200 --> 00:09:31,250 >> U hekk, jekk aħna jirnexxilhom jiksbu permezz ta 'dan nested għal loop, dan ifisser li 165 00:09:31,250 --> 00:09:34,690 ma kien hemm ebda maduma li kien il-pożizzjoni żbaljata. 166 00:09:34,690 --> 00:09:38,900 U aħna break out tal-linja u jiġu hawn, fejn nistgħu ritorn vera. 167 00:09:38,900 --> 00:09:41,800 Madum kollha kienu fil-pożizzjonijiet korretta u dan ifisser l-utent għandu 168 00:09:41,800 --> 00:09:43,230 rebaħ il-logħba. 169 00:09:43,230 --> 00:09:44,460 U thats it. 170 00:09:44,460 --> 00:09:46,550 Jisimni Rob Bowden, u dan kien ta '15. 171 00:09:46,550 --> 00:09:52,726