ROB BOWDEN: Hi. Jien Rob, u nispera tiegħek logħba għall-logħba tal-15. Issa, hemm erba 'funzjonijiet li għandek bżonn biex jimplimentaw dan il-programm - Iniz, jiġbed, jimxu, u rebaħ. Allura, ejja nħarsu lejn Iniz. Hawnhekk, naraw l-ewwel ħaġa li aħna qed ser tagħmel hu li tiddikjara varjabbli imsejħa counter. Li għaddej biex jiġu initialized għal żminijiet d d minus 1. Ftakar li d hija d-dimensjoni tal-bord tagħna. Kif Iniz ikun sejjer jaħdem huwa għaddej li jtenni fuq il-bord kollu u aħna qed tmur biex tibda fil-quċċata xellug. U ejja biss jgħidu li aħna jkollhom 4 minn 4 bord. Allura l-quċċata xellug nkunu se ngħid huwa 15. U allura aħna qed biss se jgħoddu permezz tal-bordijiet, qal 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, u l-bqija. Allura l-quċċata xellug, nistennew ikunu żminijiet d d minus 1, li fil-4 minn 4 każ se tkun 16 minus 1, li huwa b'mod korrett 15. U issa hawn fejn aħna qed tmur biex jtenni fuq il-bord kollu. U aħna qed tmur biex jistabbilixxu kull pożizzjoni fil- il-bord għall-valur attwali ta ' counter tagħna, u mbagħad counter huwa għaddej li decrement, sabiex il-li jmiss pożizzjoni nilħqu huwa se jkollu counter tkun waħda inqas minn il-pożizzjoni preċedenti. Allura aħna inizjalment kellhom 15 u decrement kontro. Mela allura aħna qed tmur biex tassenja 14 għall- pożizzjoni li jmiss, kontro decrement, u aħna qed tmur biex assenjat 13, u l-bqija. Fl-aħħarnett, għandna bżonn biex jimmaniġġaw dak kantuniera każ fejn, jekk il-bord għandu anki dimensjoni, allura biss tagħmel 15, 14, 13, 12, it-triq kollha sa 3, 2, 1, huwa se leave us ma ' bord unsolvable. U għandna biex tpartit l-1 u 2. Għalhekk, jekk d mod 2 egwali għal 0, li kif aħna qed tmur biex jiċċekkjaw biex tara jekk huwa saħansitra. Jekk d mod 2 egwali għal 0, imbagħad fir-ringiela d minus 1, li hija l-ringiela tal-qiegħ, u pożizzjoni d minus 2, jew il-kolonna d minus 2, aħna qed tmur biex ikun stabbilit li għal 2, u kolonna d minus 3 nkunu se ssettjata għal 1. Allura li jinsab biss rivers fejn l-1 u 2 bħalissa. Fl-aħħarnett, aħna qed tmur biex jistabbilixxu l-ħafna qiegħ dritt ugwali għal vojt, fejn vojt jkun hash definit fil-quċċata bħala 0. Allura, li ma kienx strettament meħtieġ, peress li dan għall loop huwa se jkollu tistabbilixxi l-qiegħ dritt għal 0, peress counter, naturalment, se jinżel għal 0. Iżda li jiddependi fuqna jafu li blank ġie hashed biex isibu 0. Jekk mmur fis dan il-programm u aktar tard bidla vojt fil-quċċata sa 100, dan xorta għandhom jaħdmu. Allura dan huwa biss tagħmel ċert li l- qiegħ dritt huwa attwalment ugwali għal tagħna valur vojt. Fl-aħħarnett, għandna żewġ varjabbli globali, hekk vojta iuj vojta, u naraw dawk dikjarati fil-quċċata. U aħna qed tmur biex jużaw dawn iż-żewġ globali varjabbli li jżommu rekord ta 'l- pożizzjoni tal-vojt, hekk li aħna ma bżonn li tfittex permezz ta 'l kollu bord biex isibu l-blank kull wieħed ħin aħna nippruvaw nagħmlu pass. Allura l-pożizzjoni tal-vojt dejjem ser tibda fil-qiegħ dritt. Allura l-qiegħ dritt huwa mogħti bi indiċi 1 d minus 1, d minus. Allura, li Iniz. Issa nimxu fuq li tiġbed. Għalhekk, tiġbed se tkun simili fejn aħna qed tmur biex jtenni fuq il-bord kollu. U aħna biss tixtieq li jistampaw il-valur dan huwa f'kull pożizzjoni tal-bord. Allura hawn, aħna qed istampar l-valur li l- f'kull pożizzjoni tal-bord. U tinnota li aħna qed tagħmel -. U li jinsab biss javżak printf li irrispettivament minn jekk huwa ċifri waħda jew numru żewġ ċifri, aħna xorta tixtieq li jieħdu żewġ kolonni fil-print out, b'tali mod li jekk għandna żewġ ċifri u wieħed numri ċifri fl-istess bord, tagħna board xorta se tfittex sbieħ u kwadri. Allura rridu nagħmlu li għal kull valur fil-bord, ħlief għall-blank. Għalhekk, jekk il-pożizzjoni fil-bord ugwali il-vojt, allura aħna speċifikament tixtieq li jistampa biss underscore biex jirrappreżentaw il-vojt, minflok ikun x'ikun il-valur tal- blank fatt hu. Fl-aħħarnett, irridu li jistampaw out linja ġdida. Avviż li dan għadu ġewwa l barra għal loop, iżda barra il-ġewwa għall-loop. Peress li dan ta 'barra għal loop hija mtennija fillieri kollha, u għalhekk dan printf huwa ser biss print linja ġdida, hekk aħna jimxu fuq jistampa l-ringiela li jmiss. U li hu għal tiġbed. Allura, issa ejja jimxu fuq li jiċċaqalqu. Issa, aħna jgħaddu mossa, il-maduma li l- utent hija mdaħħla fil-logħba - huma jidħol il-maduma jkunu jridu jimxu - u int suppost jirritornaw bool, hekk jew vera jew falza, jiddependi fuq jekk dan pass kien attwalment valida - jekk dan maduma jista 'jkun mċaqalqa fl-ispazju vojt. Allura hawn, aħna niddikjaraw varjabbli lokali, tile_1 u tile_j, li ser jkun simili għal blank_i u blank_j, ħlief li għaddej biex iżommu kont ta 'l- pożizzjoni tal-maduma. Issa hawnhekk, aħna qed tmur biex jużaw blank_i u blank_j u jgħidu id-dritt, hekk hawn l-vojt fuq il-bord. Issa, hija l-madum fuq l-vojt? Huwa l-maduma għall-xellug tal-vojt? Huwa l-maduma fuq il-lemin tal-vojt? Huwa l-maduma taħt il-vojt? Għalhekk, jekk il-maduma fi kwalunkwe minn dawk pożizzjonijiet, allura aħna nafu li l-maduma jista 'jiġi mċaqlaq fil-post vojt u il-vojt jista 'jiġi mċaqlaq li meta l- maduma bħalissa. So here, ngħidu jekk board fil-pożizzjoni blank_i minus 1 blank_j. Allura dan huwa qal huwa l-maduma fuq il-vojt attwali? U jekk iva, aħna qed tmur biex tiftakar li hija l-pożizzjoni tal-maduma. Il-madum ikun fil-pożizzjoni blank_i minus 1 u blank_j. issa ewwel, irridu wkoll din il-verifika dritt hawn, hekk blank_i huwa akbar minn 0. Għaliex irridu li tagħmel dan? Ukoll, jekk il-vojt huwa fil-filliera ta 'fuq tal-bord, allura ma rridux li ħarsa fuq il-vojt għall-maduma peress m'hemm xejn fuq mill-quċċata ringiela tal-bord. Din hija kif inti tista 'tispiċċa jkollna xi ħaġa bħal tort segmentazzjoni jew program tiegħek jista 'biss xogħol b'mod mhux mistenni. Għalhekk, dan qed tagħmel ċert li aħna ma tfittex fil-postijiet li ma jkunux validi. Issa aħna qed tmur biex jagħmlu l-istess ħaġa għall- kollha kombinazzjonijiet possibbli oħra. Allura hawn, aħna qed tfittex taħt il-vojt biex tara jekk dan huwa l-maduma. U għandna wkoll biex niżguraw li qed mhux fuq il-filliera qiegħ, jew inkella aħna m'għandhiex tfittex l-maduma. Hawnhekk, aħna qed tmur biex tħares lejn ix-xellug tal- l-vojt biex tara jekk huwa l-maduma. U aħna ma nħarsu lejn ix-xellug jekk aħna qed fil-kolonna fuq ix-xellug. U hawn aħna qed tmur biex tħares lill- dritt tal-vojt, u aħna ma nistgħux tħares lejn il-lemin jekk aħna qed fil-kolonna lemini. Għalhekk, jekk ebda waħda minn dawn l-affarijiet kienu vera, li tfisser il-maduma ma kienx maġenb għall-vojt u nistgħu ritorn foloz. Il-pass ma kienx validu. Iżda, jekk waħda minn dawn kienu veru, imbagħad fuq dan il-punt, aħna nafu li tile_i u tile_j huma ugwali għall- pożizzjoni tal-maduma. U hekk, aħna tista 'taġġorna l-bord fil- pożizzjonijiet tile_i u tile_j. Nafu l-valur il-ġdid se jkun l-vojt u li l-blank_i pożizzjoni blank_j, li kienet l-oriġinali blank - nafu l-maduma se joqogħdu hemm. Avviż aħna ma attwalment ikollhom jagħmlu tpartit reali hawnhekk, peress li nafu l- valuri li jeħtieġ li jiddaħħlu f'dawk il-pożizzjonijiet. Aħna ma bżonn temporanju varjabbli madwar. Fl-aħħarnett, għandna bżonn li wieħed jiftakar li aħna jkollhom varjabbli globali tagħna li huma iżżomm rekord tal-pożizzjoni tal-vojt. Allura aħna tixtieq li taġġorna l-pożizzjoni ta ' l-vojt li jkun fejn l-maduma oriġinarjament kienet. Fl-aħħarnett, nerġgħu lura minnu peress il-pass kien suċċess. Aħna b'suċċess tpartit l- blank bl-maduma. Kull dritt, hekk aħħar aħna bżonn li jiċċekkja won. Allura, rebaħ simili jirritorna bool fejn vera se jindikaw li l- utent rebaħ il-logħba. U falza li tindika li il-logħba għadu għaddej. L-utent ma rebaħ. Għalhekk, din se tkun pretty ħafna l-oppost ta 'Iniz, fejn Iniz, ftakar, aħna initialize-bord sa 15, 14, 13, 12, eċċ. Billi rebaħ, irridu li jiċċekkjaw jekk il- board huwa 1, 2, 3, 4, 5, u l-bqija. Allura, aħna qed tmur biex initialize tagħna kontra l-1 peress li dan huwa dak il-quċċata xellug tal-bord għandu jkun. U allura aħna qed tmur għal-linja fuq il-bord kollu. Ejja jinjora din il-kundizzjoni għat-tieni. U din il-kundizzjoni huwa biss se verifika huwa l-bord f'din il-pożizzjoni ugwali għall-għadd attwali? Jekk iva, inkrement l-għadd sabiex il- pożizzjoni li jmiss aħna nħarsu lejn huwa wieħed ogħla mill-pożizzjoni aħna fid-dritt issa. Allura li kif irridu jiksbu l- top xellug għandha tkun l-1. Inkrement l-għadd għal 2. Ħares lejn il-pożizzjoni li jmiss. Huwa dan 2? Jekk iva, inkrement l-għadd sa 3. Pożizzjoni Sussegwentement, hija din 3? Jekk iva, inkrement l-għadd sa 4, u l-bqija. Għalhekk, jekk ikun hemm xi pożizzjoni fuq il- bord li ma ugwali għadd tagħna, allura aħna rridu li jirritornaw falza peress li ifisser hemm xi maduma li huwa mhux fil-pożizzjoni korretta. Allura hawnhekk, dak li huwa din il-kundizzjoni tagħmel? Ukoll, ftakar li l-bjank ikun suppost li jmorru fuq il-lemin tal-qiegħ. U l-valur tal-vojt ma tista ' neċessarjament daqs il-valur tal- kontra li se jintlaħaq fil-qiegħ dritt. Allura aħna tixtieq speċifikament biex jiċċekkjaw jekk i ugwali ugwali d minus 1 u j ugwali ugwali d minus 1 - li qed tgħid jekk aħna qed iħarsu lejn il-lemin t'isfel tal- il-bord - allura aħna biss jridu jkomplu. Aħna rridu li skip dan partikulari iterazzjoni ta 'l-għall-loop. U hekk, jekk aħna jirnexxilhom jiksbu permezz ta 'dan nested għal loop, dan ifisser li ma kien hemm ebda maduma li kien il-pożizzjoni żbaljata. U aħna break out tal-linja u jiġu hawn, fejn nistgħu ritorn vera. Madum kollha kienu fil-pożizzjonijiet korretta u dan ifisser l-utent għandu rebaħ il-logħba. U thats it. Jisimni Rob Bowden, u dan kien ta '15.