[CHWARAE CERDDORIAETH] ROB BOWDEN: Hi. Rwy'n Rob. A gadewch i ni ateb hyn. Felly dyma ni yn mynd i weithredu tabl cyffredinol. Rydym yn gweld bod y nod strwythur ein tabl yn mynd i edrych fel hyn. Felly, mae'n mynd i gael gair torgoch amrywiaeth o faint HYD + 1. Peidiwch ag anghofio y + 1, gan fod yr uchafswm gair yn y geiriadur yn 45 cymeriadau. Ac yna rydym yn mynd i angen un ychwanegol cymeriad ar gyfer y sero slaes. Ac yna mae ein hashtable ym mhob bwced yn mynd i storio rhestr gysylltiedig o nodau. Nid ydym yn gwneud llinol dreiddgar yma. Ac felly er mwyn cysylltu i'r nesaf elfen yn y bwced, mae angen nod strwythur * nesaf. OK. Felly, dyna beth yw nod yn edrych. Nawr dyma yw'r datganiad ein hashtable. Mae'n mynd i gael 16,834 bwcedi. Ond nid y rhif hwnnw yn wirioneddol bwysig. Ac yn olaf, rydym yn mynd i gael y maint hashtable amrywiol byd-eang, sy'n yn mynd i ddechrau i ffwrdd fel sero. Ac mae'n mynd i gadw golwg ar faint llawer o eiriau yn ein geiriadur. Felly, gadewch i ni edrych ar lwyth. Hysbysiad bod llwyth, mae'n dychwelyd i bool. Byddwch yn dychwelyd yn wir os oedd yn llwyddiannus llwytho, a ffug fel arall. Ac mae'n cymryd * torgoch Etholaeth geiriadur, sef y geiriadur yr ydym am ei agor. Felly, dyna'r peth cyntaf rydym yn mynd i'w wneud. Rydym yn mynd i fopen y geiriadur ar gyfer darllen. Ac rydym yn mynd i gael i wneud sicrhau ei fod yn llwyddo. Felly, os bydd yn dychwelyd NULL, yna ni wnaethom agor y geiriadur yn llwyddiannus. Ac mae angen i ddychwelyd ffug. Ond gan dybio bod y gwnaeth yn llwyddiannus agored, yna rydym yn awyddus i ddarllen y geiriadur. Felly cadwch dolennu nes i ni ddod o hyd i rheswm i dorri allan o'r cylch hwn, y byddwn yn ei weld. Felly cadwch dolennu. Ac yn awr rydym yn mynd i malloc un nod sengl. Ac wrth gwrs, mae angen i wyntyllu'r wirio eto. Felly, os nad mallocing yn llwyddo, yna rydym am i ddadlwytho unrhyw nod yr ydym yn ddigwyddodd i malloc o'r blaen, cau'r geiriadur a dychwelyd ffug. Ond ac anwybyddu hynny, gan dybio ein bod llwyddo, yna rydym eisiau defnyddio fscanf i ddarllen un gair gan ein eiriadur yn ein nod. Felly cofiwch fod cofnod> gair yn y torgoch byffer gair o faint LENGHTH + 1 ein bod yn mynd i storio'r gair i mewn Felly fscanf yn mynd i ddychwelyd 1, ar yr amod gan ei fod yn gallu llwyddo i ddarllen gair o'r ffeil. Os yw naill ai gwall yn digwydd, neu os byddwn yn cyrraedd diwedd y ffeil, mae'n Ni fydd yn dychwelyd 1. Ac yn yr achos nid yw'n dychwelyd 1, rydym yn olaf yn mynd i dorri allan o'r hwn dolen amser. Felly, rydym yn gweld bod unwaith y byddwn wedi llwyddo i darllen gair yn mynediad> gair, yna rydym yn mynd i'r geiriau gan ddefnyddio ein swyddogaeth hash. Gadewch i ni edrych ar y swyddogaeth hash. Felly peidiwch 'n sylweddol angen i chi i ddeall hyn. Ac mewn gwirionedd rydym yn unig tynnu hash hwn gweithredu oddi ar y rhyngrwyd. Yr unig beth sydd angen i chi ei gydnabod yn bod hyn yn cymryd torgoch * gair Etholaeth. Felly, mae'n cymryd llinyn fel mewnbwn, a dychwelyd yn int heb eu harwyddo fel allbwn. Felly dyna i gyd swyddogaeth hash yw, a yw'n cymryd mewn mewnbwn ac yn rhoi i chi yn mynegai i mewn i'r hashtable. Sylwch ein bod yn moding gan NUM_BUCKETS, fel bod gwerth a ddychwelwyd mewn gwirionedd yn fynegai i'r hashtable ac nid yw'n mynegai y tu hwnt i'r ffiniau y rhesi. Felly, o ystyried swyddogaeth honno, rydym yn mynd i hash y gair yr ydym yn darllen y geiriadur. Ac yna rydym yn mynd i ddefnyddio y hash i mewnosoder y mynediad i mewn i'r hashtable. Hash Nawr hashtable yw'r cerrynt rhestr gysylltiedig yn y tabl. Ac mae'n bosib iawn mai dim ond NULL. Rydym am i fewnosod ein cofnod yn y dechrau y rhestr gysylltiedig. Ac felly rydym yn mynd i gael ein cyfredol pwynt mynediad i'r hyn y mae'r hashtable ar hyn o bryd yn cyfeirio at. Ac yna rydym yn mynd i storio, yn y hashtable yn y hash, y cofnod ar hyn o bryd. Felly mae'r rhain ddwy linell mewnosod yn llwyddiannus y cofnod ar ddechrau'r rhestr gysylltiedig ar y mynegai yn y hashtable. Unwaith y byddwn yn ei wneud â hynny, rydym yn gwybod ein bod yn dod o hyd i air arall yn y geiriadur, ac yr ydym yn cynyddiad eto. Felly rydym yn cadw gwneud hynny hyd nes y fscanf yn olaf dychwelyd rhywbeth nad ydynt yn-1 yn mae pwynt cofiwch fod mae angen i fynediad am ddim. Felly i fyny yma rydym yn malloced cofnod. Ac rydym yn ceisio darllen rhywbeth gan y geiriadur. Ac nid ydym yn darllen yn llwyddiannus rhywbeth o'r geiriadur, yn ac os felly mae angen i ni ryddhau'r cofnod nad ydym byth yn rhoi mewn gwirionedd yn y hashtable, ac yn olaf torri. Unwaith y byddwn yn torri allan mae angen i ni weld, yn dda, wnaethom ni dorri allan oherwydd nad Roedd gwall wrth ddarllen o'r ffeil? Neu wnaethon ni dorri allan oherwydd ein bod yn cyrraedd diwedd y ffeil? Os oedd camgymeriad, yna rydym yn awyddus i ddychwelyd ffug. Oherwydd nad llwyth lwyddodd. Ac yn y broses yr ydym am i ddadlwytho holl eiriau a ydym yn darllen yn, a cau'r ffeil geiriadur. Gan dybio y byddwn yn llwyddo, yna rydym yn unig dal i fod angen i gau'r geiriadur ffeilio, ac yn olaf yn dychwelyd yn wir ers i ni llwytho y geiriadur yn llwyddiannus. A dyna ni ar gyfer llwyth. Felly nawr gwirio, yn cael hashtable llwytho, yn mynd i edrych fel hyn. Felly siec, mae'n dychwelyd i bool, sy'n mynd i nodi a yw'r basio yn torgoch * gair, a oedd y pasio yn llinyn yn ein geiriadur. Felly, os yw yn y geiriadur, os yw yn ein hashtable, byddwn yn dychwelyd yn wir. Ac os nad yw'n, byddwn yn dychwelyd ffug. O ystyried hyn a basiwyd mewn gair, rydym yn mynd i hash y gair. Nawr yn beth pwysig i'w gydnabod yw bod yn llwyth rydym yn gwybod bod pob un o'r geiriau rydym yn mynd i fod yn llythrennau bach. Ond yma nid ydym yn mor siŵr. Os byddwn yn edrych ar ein swyddogaeth hash, ein swyddogaeth hash mewn gwirionedd yn casin is pob cymeriad y gair. Felly, beth bynnag y cyfalafu gair, ein swyddogaeth hash yw'r elw yr un mynegai ar gyfer beth bynnag fo'r cyfalafu yw, gan y byddai'n cael dychwelyd ar gyfer hollol llythrennau bach fersiwn o'r gair. Alright. Dyna ein mynegai cael i mewn i'r hashtable gyfer y gair hwn. Nawr mae hyn ar gyfer dolen yn mynd i ailadrodd dros y rhestr gysylltiedig a oedd ar y mynegai. Felly, yn sylwi ein bod yn ymgychwyn mynediad i dynnu sylw at y mynegai. Rydym yn mynd i barhau tra bod mynediad! = NULL. A chofiwch fod ddiweddaru'r pwyntydd yn ein rhestr mynediad cysylltiedig = cofnod> nesaf. Felly, rhaid ein man mynediad presennol i yr eitem nesaf yn y rhestr cysylltiedig. Felly, ar gyfer pob cofnod yn y rhestr gysylltiedig, rydym yn mynd i ddefnyddio strcasecmp. Dyw hi ddim yn strcomp. Oherwydd unwaith eto, rydym am wneud pethau achos ansensitif. Felly, rydym yn defnyddio strcasecmp i gymharu gair a basiwyd drwy'r swyddogaeth yn erbyn y gair sydd yn y cofnod hwn. Os bydd yn dychwelyd sero, mae hynny'n golygu nad oedd gêm, ac yn yr achos yr ydym am ei dychwelyd yn wir. Rydym yn dod o hyd yn llwyddiannus y gair yn ein hashtable. Os nad oedd yn cyfateb, yna rydym yn mynd i'r ddolen eto ac edrych ar y cofnod nesaf. A byddwn yn parhau dolennu er bod yn cofnodion yn y rhestr cysylltiedig. Beth fydd yn digwydd os byddwn yn torri allan o hyn ar gyfer dolen? Mae hynny'n golygu nad ydym yn dod o hyd i gofnod y cyfateb gair hwn, ac yn yr achos byddwn yn dychwelyd ffug i ddangos bod ein Nid hashtable oedd yn cynnwys y gair hwn. Ac mae hynny'n siec. Felly, gadewch i ni edrych ar faint. Nawr maint yn mynd i fod yn eithaf syml. Ers cofio yn llwyth, i bob gair rydym yn dod o hyd, rydym yn gynyddrannedig yn fyd-eang maint hashtable amrywiol. Felly, y swyddogaeth maint yn unig yw mynd i ddychwelyd amrywiol byd-eang. A dyna ni. Nawr yn olaf, mae angen i ddadlwytho'r geiriadur unwaith popeth ei wneud. Felly, sut ydym yn mynd i wneud hynny? I'r dde yma rydym yn dolennu dros pob bwcedi o ein bwrdd. Felly mae bwcedi NUM_BUCKETS. Ac ar gyfer pob rhestr gysylltiedig yn ein hashtable, rydyn ni'n mynd i ddolen dros y cyfan y rhestr cysylltiedig, rhyddhau pob elfen. Nawr mae angen i ni fod yn ofalus. Felly dyma gennym newidyn dros dro sy'n cael ei storio y pwyntydd i'r nesaf elfen yn y rhestr cysylltiedig. Ac yna rydym yn mynd i rhad ac am ddim yr elfen gyfredol. Mae angen i ni fod yn sicr rydym yn gwneud hyn ers i ni Ni all dim ond rhad ac am ddim yr elfen gyfredol ac yna ceisiwch i gael mynediad i'r pwyntydd nesaf, ers unwaith rydym wedi rhyddhau ei, y cof yn dod yn annilys. Felly mae angen i gadw o gwmpas pwyntydd i i'r elfen nesaf, yna gallwn ryddhau'r elfen ar hyn o bryd, ac yna gallwn ddiweddaru ein bodd yn bresennol i dynnu sylw at i'r elfen nesaf. Rydym yn bydd dolen er bod elfennau yn y rhestr gysylltiedig. Byddwn yn gwneud hynny ar gyfer pob cysylltiedig rhestrau yn yr hashtable. Ac unwaith y byddwn yn ei wneud â hynny, rydym wedi dadlwytho y hashtable yn gyfan gwbl, a rydym yn ei wneud. Felly, mae'n amhosibl i dadlwytho i byth yn dychwelyd ffug. A phan rydym yn ei wneud, rydym yn dim ond dychwelyd yn wir. Gadewch i ni roi cynnig ateb hwn. Felly, gadewch i ni edrych ar yr hyn y mae ein Bydd nod strwythur yn edrych fel. Yma rydym yn gweld ein bod yn mynd i gael bool gair a nod strwythur * plant ALPHABET braced. Felly, y peth cyntaf efallai y byddwch yn meddwl, pam fod ALPHABET ed a ddiffinnir fel 27? Wel, cofiwch ein bod yn mynd i angen i gael ei drin y collnod. Felly, mae hynny'n mynd i fod yn dipyn o achos arbennig drwy gydol y rhaglen hon. Nawr cofio sut mae trie yn gweithio mewn gwirionedd. Gadewch i ni ddweud ein bod yn mynegeio y gair "Cathod." Yna o wraidd trie, rydym yn mynd i edrych ar y plant amrywiaeth, ac rydym yn mynd i edrych ar y mynegai sy'n cyfateb i'r llythyr C. Felly a fydd yn cael ei fynegeio 2. Felly o ystyried, bydd hynny rhoi nod newydd. Ac yna byddwn yn gweithio o'r nod. Felly, o ystyried bod nod, rydym yn unwaith eto mynd i edrych ar yr amrywiaeth plant. Ac rydym yn mynd i edrych ar y mynegai sero i gyfateb i'r A mewn cath. Felly, yna rydym yn mynd i fynd i'r nod, ac o gofio bod nod rydym yn mynd i edrych ar y diwedd ei fod yn cyfateb i T. Ac yn symud ymlaen i'r nod, yn olaf, rydym wedi edrych yn gyfan gwbl drwy ein gair "cath." Ac yn awr bool gair i fod i nodi a y gair a roddir mewn gwirionedd gair. Felly, pam mae angen yr achos arbennig? Wel beth am y gair "trychineb" yn ein geiriadur, ond mae'r Nid yw gair "cath" yw? Felly, ac yn edrych i weld a yw'r gair "cath" yn yn ein geiriadur, rydym yn mynd i edrych llwyddiannus drwy mynegeion C-A-T yn rhanbarth nod. Ond mae hynny'n unig oherwydd trychineb ddigwyddodd i greu nodau ar y ffordd o C-A-T, yr holl ffordd i ddiwedd y gair. Felly bool gair yn cael ei ddefnyddio i nodi a y lleoliad penodol hwn mewn gwirionedd yn dangos gair. Mae pob hawl. Felly nawr ein bod yn gwybod beth mae'n ei trie yn mynd i edrych fel, gadewch i ni edrych ar y llwytho swyddogaeth. Felly, llwyth yn mynd i ddychwelyd bool am a ydym yn llwyddiannus neu aflwyddiannus llwytho y geiriadur. Ac mae hyn yn mynd i fod y geiriadur yr ydym am i lwytho. Beth felly yn gyntaf rydym yn ei wneud yw agor i fyny y geiriadur hwnnw ar gyfer darllen. Ac mae'n rhaid i wneud yn siŵr doedden ni ddim yn methu. Felly, os nad y geiriadur oedd agor yn llwyddiannus, bydd yn dychwelyd null, ac os felly rydym yn mynd i ddychwelyd ffug. Ond gan dybio ei fod yn llwyddo i agor, yna gallwn mewn gwirionedd yn darllen trwy y geiriadur. Beth felly yn gyntaf rydym yn mynd i eisiau ei wneud yw gennym y gwraidd amrywiol byd-eang. Nawr gwraidd yn mynd i fod yn nod *. Mae'n frig ein trie ein bod ni'n mynd i gael ei bwysleisio'r drwy. Felly, y peth cyntaf yr ydym yn mynd i am ei wneud yw dyrannu cof am ein gwreiddiau. Sylwch ein bod yn defnyddio'r calloc swyddogaeth, sydd yn y bôn yr un fath gan fod y swyddogaeth malloc, ac eithrio ei fod yn sicr o ddychwelyd rhywbeth sy'n zeroed allan yn gyfan gwbl. Felly, os ydym yn defnyddio malloc, byddai angen i ni mynd drwy bob un o'r awgrymiadau yn ein nod, a sicrhau bod maen nhw i gyd null. Felly, bydd calloc wneud hynny i ni. Nawr yn union fel malloc, mae angen i ni wneud yn siŵr bod y dyraniad oedd mewn gwirionedd yn llwyddiannus. Os bydd hyn yn dychwelyd null, yna rydym yn Mae angen i gau neu geiriadur ffeilio a dychwelyd ffug. Felly, gan dybio dyraniad a oedd yn llwyddiannus, rydym yn mynd i ddefnyddio nod * cyrchwr i ailadrodd drwy ein trie. Felly mae ein gwreiddiau byth yn mynd i newid, ond rydym yn mynd i ddefnyddio cyrchwr i mewn gwirionedd yn mynd o nod i nod. Felly, yn hyn ar gyfer dolen rydym yn ei ddarllen trwy'r ffeil geiriadur. Ac rydym yn defnyddio fgetc. Fgetc yn mynd i fachu un cymeriad o'r ffeil. Rydym yn mynd i barhau grabbing cymeriadau er nad ydym yn cyrraedd y ddiwedd y ffeil. Mae dau achos mae angen i ni drin. Y cyntaf, os yw'r cymeriad Nid oedd llinell newydd. Felly rydym yn gwybod os oedd yn llinell newydd, yna rydym chi ar fin i symud ymlaen i gair newydd. Ond gan dybio nad oedd yn llinell newydd, yna yma rydym am i chyfrif i maes y mynegai rydyn ni'n mynd i mynegai i yn yr arae plant buom yn edrych ar blaen. Felly, fel y dywedais o'r blaen, mae angen i ni achos arbennig y collnod. Sylwi ein bod yn defnyddio'r deiran gweithredwr yma. Felly, rydym yn mynd i ddarllen hwn oherwydd, os cymeriad ydym yn darllen yn yn collnod, yna rydym yn mynd i osod mynegai = "ALPHABET" -1, a fydd yn fydd y mynegai 26. Else, os nad oedd yn collnod, mae rydym yn mynd i osod y mynegai cyfartal i c - a. Felly cofiwch ôl o p-setiau o'r blaen, c - mae yn mynd i roi i ni y sefyllfa yn nhrefn yr wyddor o C. Felly, os C yw'r llythyren A, bydd hyn yn rhoi mynegai sero ni. Am y llythyr B, bydd yn rhoi i ni y mynegai 1, ac yn y blaen. Felly, mae hyn yn rhoi mynegai yn y ni plant amrywiaeth yr ydym am. Nawr, os mynegai hwn yn null hyn o bryd yn y plant, mae hynny'n golygu bod nod yn bodoli ar hyn o bryd o'r llwybr. Felly mae angen i ddyrannu yn nod ar gyfer y llwybr hwnnw. Dyna beth y byddwn yn ei wneud yma. Felly, rydym yn mynd eto i ddefnyddio'r calloc swyddogaeth, fel nad oes rhaid i ni sero allan yr holl awgrymiadau. Ac unwaith eto mae angen i ni wirio nad yw calloc oedd yn methu. Os calloc oedd yn methu, yna mae angen i ddadlwytho popeth, cau ein geiriadur, a dychwelyd ffug. Felly gan dybio nad oedd yn methu, yna Bydd hyn yn creu plentyn newydd i ni. Ac yna byddwn yn mynd i'r plentyn hwnnw. Bydd ein cyrchwr ailadrodd i lawr i'r plentyn hwnnw. Nawr, os nad oedd hyn yn null i ddechrau, yna gall y cyrchwr yn unig ailadrodd i lawr i'r plentyn hwnnw heb holi i gorfod i ddyrannu unrhyw beth. Mae hyn yn wir lle'r ydym digwydd gyntaf dyrannu y gair "cath." A mae hynny'n golygu pan fyddwn yn mynd i ddyrannu "Trychineb," Nid oes angen i ni greu nodau ar gyfer C-A-T eto. Maent eisoes yn bodoli. Beth mae hyn yn arall? Mae hyn yn y cyflwr lle c yn slaes n, lle mae c yn llinell newydd. Mae hyn yn golygu ein bod wedi llwyddo i cwblhau gair. Nawr beth ydym ni eisiau ei wneud pan fyddwn yn cwblhau gair yn llwyddiannus? Rydym yn mynd i ddefnyddio y maes hwn gair tu mewn ein nod strwythur. Rydym yn awyddus i sefydlu hynny yn wir. Felly mae hynny'n dangos bod nod hwn yn dangos llwyddiannus geiriau, air go iawn. Nawr sefydlu hynny yn wir. Rydym am i ailosod ein cyrchwr i bwynt i ddechrau'r trie eto. Ac yn olaf, cynyddiad ein geiriadur maint, ers i ni o hyd i waith arall. Felly, rydym yn mynd i barhau i wneud hynny, darllen o ran cymeriad gan gymeriad, adeiladu nodau newydd yn ein trie a ar gyfer pob gair yn y geiriadur, hyd nes y rydym o'r diwedd yn cyrraedd C! = EOF, lle ofn y byddwn dorri allan y ffeil. Erbyn hyn mae dau achos o dan y gallem fod wedi taro EOF. Y cyntaf yw os bu camgymeriad darllen o'r ffeil. Felly, os oedd camgymeriad, rydym yn hangen i wneud y nodweddiadol. Dadlwytho popeth, yn agos y ffeil, yn dychwelyd ffug. Gan dybio nad oedd camgymeriad, bod yn unig yn golygu ein bod mewn gwirionedd yn cyrraedd y diwedd y ffeil, ac os felly, yr ydym yn cau'r ffeilio a dychwelyd yn wir ers i ni geiriadur llwytho yn llwyddiannus yn ein trie. Felly nawr gadewch i ni edrych ar siec. O edrych ar y swyddogaeth siec, rydym yn gweld y siec yn mynd i ddychwelyd bool. Mae'n dychwelyd wir os gair hwn ei fod yn yn cael eu trosglwyddo yn ein trie. Mae'n dychwelyd ffug fel arall. Felly, sut ydych chi'n penderfynu a gair hwn yn ein trie? Rydym yn gweld yma fod, yn union fel o'r blaen, rydym yn mynd i ddefnyddio cyrchwr i ailadrodd drwy ein trie. Nawr dyma ni yn mynd i ailadrodd dros ein gair cyfan. Felly bwysleisio'r dros y gair yr ydym yn y gorffennol, rydyn ni'n mynd i benderfynu ar y mynegai i'r amrywiaeth blant sy'n yn cyfateb i air I. braced Felly, mae hyn yn mynd i edrych yn union fel llwyth, lle os air [i] yn collnod, yna rydym am i ddefnyddio mynegai "ALPHABET" - 1. Oherwydd ein bod yn benderfynol bod lle rydym yn mynd i storio collnodau. Arall rydym yn mynd i ddefnyddio dau air is braced I. Felly cofiwch y gair hwnnw yn gallu cael cyfalafu mympwyol. Ac felly rydym yn awyddus i wneud yn siŵr ein bod ni'n gan ddefnyddio fersiwn lythrennau bach o bethau. Ac yna tynnu o hynny 'a' i unwaith unwaith eto yn rhoi i ni yn nhrefn yr wyddor sefyllfa cymeriad hwnnw. Felly, mae hynny'n mynd i fod yn ein mynegai i mewn i'r amrywiaeth plant. Ac yn awr os yw'r mynegai i'r plant amrywiaeth yn null, sy'n golygu ein bod yn gallu parhau bwysleisio'r mwyach i lawr ein trie. Os yw hynny'n wir, ni all y gair hwn o bosibl fod yn ein trie. Oherwydd os petai, byddai hynny'n yn golygu y byddai llwybr i lawr at y gair hwnnw. Ac ni fyddech byth yn dod ar draws null. Felly dod ar draws null, byddwn yn dychwelyd ffug. Nid yw'r gair yn y geiriadur. Os nad yw'n yn null, yna rydym yn mynd i barhau bwysleisio'r. Felly, rydym yn mynd allan yno cyrchwr i dynnu sylw at y manylyn hwnnw nod ar y mynegai. Rydym yn cadw gwneud hynny drwy gydol y gair cyfan, gan dybio yr ydym byth yn taro null. Mae hynny'n golygu ein bod wedi gallu i gael drwy y gair cyfan a dod o hyd yn nod yn ein cais. Ond nid ydym yn hollol wneud eto. Nid ydym am i ddim ond dychwelyd yn wir. Rydym yn awyddus i ddychwelyd cyrchwr> gair. Ers cofio eto, yw "cath" Nid yw yn ein geiriadur, a "trychineb" yw, yna byddwn yn llwyddiannus byddwn yn cael trwy'r gair "cath." Ond cyrchwr Bydd geiriau yn ffug ac ddim yn wir. Felly, byddwn yn dychwelyd gair cyrchwr i nodi boed nod hwn mewn gwirionedd yn air. A dyna ni am siec. Felly, gadewch i ni edrych ar maint. Felly, maint yn mynd i fod yn eithaf hawdd ers hynny, cofio yn llwyth, rydym yn incrementing maint y geiriadur ar gyfer pob gair yr ydym yn dod ar eu traws. Felly, maint yn unig yn mynd i dychwelyd maint geiriadur. A dyna ni. Felly, yn olaf, rydym wedi dadlwytho. Felly dadlwytho, rydym yn mynd i ddefnyddio swyddogaeth ailadroddus i wneud mewn gwirionedd yn yr holl o'r gwaith i ni. Felly mae ein swyddogaeth yn mynd i cael eu galw ar unloader. Beth yw unloader mynd i'w wneud? Rydym yn gweld yma fod unloader yn mynd i ailadrodd dros bob un o'r plant yn hwn nod penodol. Ac os nad yw'r nod plentyn yn null, yna rydym yn mynd i dadlwytho'r nôd plentyn. Felly, mae hyn yw eich recursively ddadlwytho bob un o'n plant. Unwaith y byddwn yn sicr bod pob un o'n plant wedi cael eu dadlwytho, yna rydym yn Gall rhad ac am ddim ni ein hunain, felly dadlwytho ein hunain. Bydd hyn yn gweithio'n recursively dadlwytho'r trie cyfan. Ac yna unwaith sy'n cael ei wneud, allwn ei ddychwelyd yn wir. Ni all dadlwytho yn methu. Rydym yn unig rhyddhau pethau. Felly, ar ôl i ni yn ei wneud rhyddhau popeth, yn dychwelyd yn wir. A dyna ni. Fy enw i yw Rob. Ac roedd hyn yn sillafu. [CHWARAE CERDDORIAETH]