[CHWARAE CERDDORIAETH] DOUG LLOYD: Felly rydym wedi bod yn inching yn nes ac yn nes bod greal sanctaidd o ddata strwythurau, un y gallwn fewnosod i mewn, dileu o, ac yn edrych i fyny mewn amser cyson. Hawl. Dyna fath o nod. Rydym am fod yn gallu ei wneud pethau iawn, yn gyflym iawn. Ydyn ni wedi ei chael yn fan hyn pan fydd ydym yn sôn am geisiau? Wel, gadewch i ni edrych. Felly, rydym wedi gweld nifer o strwythurau data gwahanol sy'n trin mapio hyn a elwir yn barau gwerth allweddol, mapio rhyw darn o ddata i ryw ddarn arall o ddata felly rydym yn gwybod ble i ddod o hyd gwybodaeth yn y strwythur. Felly, ar gyfer amrywiaeth, er enghraifft, y allweddol yw'r mynegai elfen neu amrywiaeth Lleoliad 0 neu 1 amrywiaeth ac yn y blaen. Ac mae'r gwerth yn y data sy'n bodoli yn y lleoliad hwnnw. Felly, beth yn cael ei storio mewn amrywiaeth 0? Beth sy'n cael ei storio mewn amrywiaeth 1 yn erbyn unig 0 ac 1, a fyddai'n yr allweddi. Gyda bwrdd hash 'i' math o yr un syniad. Gyda bwrdd hash, rydym wedi hash hwn swyddogaeth sy'n cynhyrchu codau hash. Felly yr allwedd yw'r cod hash y data. Ac mae'r gwerth, yn enwedig buom yn siarad am gadwyno yn y fideo ar fyrddau hash, yw bod rhestr gysylltiedig o ddata hynny hashes at y hashcode. Hawl. Beth am ymagwedd arall dull hwn, er bod? Beth am ddull lle mae'r allweddol yn sicr o fod yn unigryw, yn wahanol i dabl hash, lle y gallem darfod i fyny ag ddau ddarn o ddata cael yr un hashcode. Ac yna mae'n rhaid i ni ddelio â hynny naill ai trwy stilio neu fwy gorau oll os gadwyno i atgyweiria bod problem. Felly nawr allwn warantu y bydd ein prif yn unigryw. A beth os yw ein gwerth yn dim ond rhywbeth mor hawdd fel gwir a gau sy'n dweud wrthym p'un neu os nad y darn hwnnw o wybodaeth yn bodoli yn y strwythur? Gallai Boolean fod mor syml â ychydig. Yn realistig, mae'n fwy na thebyg yn Beit yn fwy tebygol na ychydig. Ond mae hynny'n llawer llai na'r storio efallai llinyn 50-cymeriad, er enghraifft. Felly ceisiau, yn debyg i hash tablau, sy'n cyfuno araeau a rhestr gysylltiedig, geisiau cyfuno arrays, strwythurau, ac awgrymiadau at ei gilydd i storio data mewn ffordd ddiddorol sy'n 'n bert wahanol i unrhyw beth yr ydym wedi ei weld hyd yn hyn. Nawr rydym yn defnyddio'r data fel map ffordd i lywio y strwythur data. Ac os gallwn ddilyn y map ffyrdd, os gallwn dilynwch y data o dechrau i'r diwedd, yr ydym chi helpu gwybod a data hwnnw bodoli yn y trie. Ac os na allwn ddilyn y map o ystyr i ben o gwbl, ni all y data bodoli. Unwaith eto, yr allweddi dyma sicr o fod yn unigryw. Ac felly yn wahanol i dabl hash, nid ydym erioed chi helpu gorfod delio â gwrthdrawiadau yma. Ac ni ddau ddarn o ddata yn union yr un map oni bai bod y data sydd ar union yr un fath. Os byddwn yn mewnosod John, yna rydym yn chwilio am John. Dyna dau ddarn union yr un fath o data, ar y dde, rydym yn edrych drwy'r. Ond fel arall, mae unrhyw ddau ddarn o ddata yn sicr o gael mapiau unigryw drwy'r strwythur data. Ac rydym yn mynd i gymryd golwg ar yn weledol o hyn mewn dim ond hyn o bryd. Byddwn yn gwneud hyn drwy geisio creu strwythur data newydd, mapio'r parau gwerth allweddol canlynol. Yn yr achos hwn, nid ydym yn mynd i ddefnyddio rhywbeth mor syml â Boolean. Rydym mewn gwirionedd bydd yn storio'r y llinyn. A bod llinyn yn mynd i fod yn enw prifysgol. Ac yr allwedd yn mynd i fod y flwyddyn pan fydd y brifysgol ei sefydlu. Pob blwyddyn ar gyfer prifysgolion yn mynd i fod pedwar digid. Ac felly byddwn yn defnyddio rhai pedwar digidau ar lywio drwy'r strwythur data. A byddwn yn gweld, unwaith eto, sut rydym yn gwneud hynny mewn dim ond eiliad. Ar ddiwedd y llwybr, byddwn yn gweld yr enw y brifysgol sy'n cyfateb at hynny allweddol, y rhai pedwar digid. Y syniad sylfaenol y tu ôl i trie yw bod gennym lwybr ganolog. Felly, meddyliwch am y peth fel coeden. Ac mae hyn yn debyg o ran sillafu ac o ran cysyniad i goeden. Yn gyffredinol, pan fyddwn yn meddwl am coed yn y byd go iawn, mae ganddynt wreiddyn sydd yn y ddaear ac maent yn tyfu i fyny ac mae ganddynt ganghennau ac mae ganddynt ddail. Ac yn y bôn y syniad o mae trie yn union yr un fath, ac eithrio bod gwreiddyn yn cael ei angori rhywle yn yr awyr. Ac mae'r dail ar y gwaelod. Felly mae'n fath o fel cymryd coeden a dim ond flipping ei ben i lawr. Ond mae canghennau o hyd. A byddai hynny yn ein llwybrau, Bydd hynny yn ein cysylltiadau o'r gwraidd i'r dail. Yn yr achos hwn, y rhai llwybrau, canghennau hynny yn cael eu labelu gyda digidau bod yn dweud wrthym pa ffordd i fynd o sefyllfa yr ydym ynddi. Os byddwn yn gweld 0, rydym yn mynd i lawr y gangen hon, os byddwn yn gweld 1, rydym yn mynd i lawr y gangen hon, ac yn y blaen ac yn y blaen. Wel, beth mae hyn yn ei olygu? Wel, mae hynny'n golygu bod ar bob pwynt gyffordd a phob nod yn y canol a phob cangen, mae 10 y bo modd lleoedd y gallwn fynd. Felly mae 10 awgrymiadau o bob lleoliad. A dyma lle y gall cais gael ychydig bach codi ofn ar rywun pwy sydd nad oes gan lawer o profiad mewn cyfrifiadureg o'r blaen. Ond geisiau yn wir yn eithaf anhygoel. Ac os ydych yn cael y cyfle i weithio gyda nhw ac rydych yn barod i gloddio i mewn ac yn arbrofi â hwy, eu bod yn wir yn eithaf diddorol strwythurau data i weithio gyda. Os ydym am i fewnosod elfen i mewn i'r trie, pob mae angen i ni ei wneud yn adeiladu'r llwybr cywir o'r gwraidd i'r ddeilen. Dyma beth pob cam ar hyd Efallai y ffordd yn edrych fel. Rydym yn mynd i ddiffinio ddata newydd strwythur ar gyfer cainc newydd o'r enw trie. Ac tu mewn data hwnnw Strwythur mae dau ddarn. Rydym yn mynd i storio'r enwi prifysgol. Ac rydym yn mynd i storio amrywiaeth o awgrymiadau i nodau eraill o'r un math. Felly, unwaith eto, mae hyn yn y math o gysyniad o bob man ydym, yr ydym yn 10 bosib llefydd gallwn fynd. Os byddwn yn gweld 0, rydym yn mynd i lawr gangen hon. Os byddwn yn gweld 1, gangen hon, ac yn y blaen ac yn y blaen ac yn y blaen. Os dywedwn 9, rydym yn mynd i lawr gangen hon. Felly, ar bob pwynt gyffordd, gallwn fynd 10 lle posibl. Felly bob nod wedi i gynnwys 10 o awgrymiadau at ganolfannau eraill, i 10 nodau eraill. Ac mae'r data yr ydym yn storio yn dim ond enw'r brifysgol. Felly gadewch i ni adeiladu trie. Gadewch i ni mewnosod cwpl o eitemau yn ein trie. Felly, ar y brig, mae hyn yn ein nod gwraidd. Mae'n debyg bod hyn yn mynd i fod yn rhywbeth ydych yn mynd i fyd-eang ddatgan. A ydych yn mynd i fyd-eang cynnal pwyntydd i'r nod hwn bob amser. Rydych yn mynd i ddweud, gwraidd hafal, ac rydych yn mynd i malloc eich hun nod trie. A byth rydych yn mynd i gyffwrdd gwraidd eto. Bob tro y byddwch eisiau dechrau lywio trwy, chi osod pwyntydd arall cyfartal i gwraidd, megis Trav, sef yr enghraifft yr wyf yn defnyddio mewn llawer o fy fideos yma ar y staciau a ciwiau a rhestrau cyswllt ac yn y blaen. Rydych yn gosod pwyntydd arall Gelwir Trav ar gyfer llwybro. A ydych yn defnyddio Trav i lywio drwy'r strwythur data. Felly, gadewch i ni weld sut y gallai hyn edrych. Felly ar hyn o bryd, beth mae cainc yn edrych? Wel, yn union fel ein data Nododd datganiad strwythur, mae gennym llinyn, a oedd yn yn yr achos hwn yn wag. Does dim byd yma. Ac amrywiaeth o 10 o awgrymiadau. Ac yn hyn o bryd, rydym yn unig wedi 1 nod yn y trie hwn. Does dim byd arall ynddo. Felly yr holl 10 o'r rheiny awgrymiadau pwynt i'w null. Dyna beth y coch yn dangos. Gadewch i mewnosoder y llinyn Harvard. Gadewch i mewnosoder y Brifysgol Harvard i mewn i trie hwn, a oedd yn ei sefydlu yn y flwyddyn 1636. Rydym am ddefnyddio'r allweddol, 1636, i ddweud wrthym ble rydym yn mynd i storio Harvard yn y trie. Yn awr, sut y gallem wneud hynny? Gallai fod yn edrych yn debyg i hyn. Rydym yn dechrau yn y gwraidd. Ac mae gennym y 10 o leoedd gallwn fynd. Mae'r gwreiddyn yn union fel unrhyw nod arall y trie. Mae 10 o leoedd gallwn fynd oddi yma. Ble rydym yn fwy na thebyg eisiau i fynd os yw'r allwedd yw 1636? Mae 'n sylweddol ddau opsiwn. Hawl. Gallwn adeiladu y allweddol o'r dde i'r chwith a dechrau gyda 6. Neu gallem adeiladu allweddol o'r chwith i'r dde ac yn dechrau gyda 1. Mae'n fwy na thebyg yn fwy sythweledol fel bod dynol er mwyn deall ein bod fe dim ond ewch i'r chwith i'r dde. Ac felly os ydw i eisiau i fewnosod Harvard i mewn i trie hwn, Mae'n debyg fy mod am ddechrau drwy ddechrau yn y gwraidd, edrych ar fy 10 opsiynau o fy mlaen, ac yn dweud Dw i eisiau mynd i lawr y llwybr 1. IAWN. Yn awr, 1 llwybr yn null hyn o bryd. Felly, os ydw i am fynd ymlaen i lawr y llwybr hwnnw i fewnosod elfen hon yn y trie, Mae'n rhaid i mi malloc cainc newydd, wedi 1 pwyntio yno, ac yna rwy'n da i fynd. Felly, yr wyf yn y bôn mod mewn pwynt lle Dwi'n sefyll wrth wraidd y goeden neu'r trie ac mae 10 o ganghennau. Ond mae gan bob cangen mae gan giât o'i flaen. Hawl. Gan nad oes unrhyw beth arall mae 'na. Dim taith ddiogel. Mae hynny'n golygu nad oes dim byd i lawr unrhyw un o'r canghennau hynny. Os wyf am ddechrau adeiladu rhywbeth, yr wyf am gael gwared ar y giât. Rwyf am gael gwared ar y giât o flaen rhif 1. Ac yr wyf yn awyddus i gerdded i lawr hynny. Ac yr wyf am adeiladu lle arall i mi fynd. A dyna beth yr wyf wedi ei wneud yma. Felly 1 bellach yn cyfeirio at null. Rwyf wedi dweud ei fod yn ddiogel i fynd i lawr yma nawr. Yr wyf yn adeiladu nôd arall. A pan fyddaf yn cyrraedd y nod, yr wyf yn rhaid i benderfyniad arall i'w wneud. Ble ydw i'n mynd i fynd o fan hyn? Wel, yr wyf eisoes wedi mynd i lawr yr 1. Felly, yn awr yr wyf yn ôl pob tebyg am fynd i lawr y 6. Hawl. Unwaith eto, mae gennyf 10 lleoliad y gallaf ddewis. Felly, gadewch i ni yn awr yn mynd i lawr rhif 6. Felly, yr wyf clirio'r giât o flaen rhif 6. Ac yr wyf yn cerdded i lawr yno. Ac yr wyf yn adeiladu nôd arall. Ac yr wyf i wedi cyrraedd pwynt cyffordd arall. Unwaith eto, mae gennyf 10 o ddewisiadau am ble alla i fynd. Rydw i wedi symud 1-6. Felly, yn awr yr wyf yn ôl pob tebyg am fynd i 3. 3, does unman gallaf fynd. Felly, rhaid i mi glirio'r ffordd ac adeiladu fy hun yn lle newydd. Ac yna o 3, ble ydw i am fynd? Dw i eisiau mynd i lawr 6. Ac, unwaith eto, roedd yn rhaid i I clirio'r ffordd i wneud hynny. Felly nawr Rwyf wedi defnyddio fy allwedd i fewnosod creu nodau a dechrau adeiladu trie hwn. Rydw i wedi dechrau yn y gwraidd. Rydw i wedi mynd i lawr 1636. Ac yn awr rwy'n ar y gwaelod yno ar y nod. Ac efallai y byddwch yn gallu ei weld ar eich sgrîn. Mae'n hamlygu mewn melyn. Dyna lle yr wyf ar hyn o bryd. Mae fy allwedd yn cael ei wneud. Rydw i wedi blino'n lân pob sefyllfa yn fy allweddol. Felly, ni allaf fynd ymhellach. Felly, yn y fan hon, popeth o fewn fy 'n sylweddol angen ei wneud yw dweud, OK. Mae'n fath o debyg chwilio i lawr ar y ddaear, os ydych yn Envisioning eich hun fel y math hwn o lwybr gyda gwahanol gysylltiadau. Trefnu yn edrych i lawr ac yn fath o chwistrellu peintio Harvard ar lawr gwlad. Dyna enw'r hwn. Gwybod dyna beth sydd yn y lleoliad hwn. Os byddwn yn dechrau wrth wraidd ac rydym yn mynd i lawr 1 ac yna 6 ac yna 3 ac yna 6, ble rydym ni? Wel, os ydym yn edrych i lawr ac rydym yn gweld Harvard, ac yna rydym yn gwybod bod Harvard oedd a sefydlwyd yn 1636 yn seiliedig ar y ffordd rydym yn gweithredu'r strwythur data. Felly dyna oedd, gobeithio syml. Rydym yn mynd i wneud dau mewnosodiadau mwy. A gobeithio y bydd yn helpu i gweld hyn ei wneud ddwywaith yn fwy. Yn awr, gadewch i ni mewnosod brifysgol arall. Gadewch i ni mewnosod Iâl i mewn i trie hwn. Roedd Yale sefydlu ym 1701. Felly byddwn yn dechrau ar y gwraidd, fel yr ydym bob amser yn gwneud. Ac rydym yn gosod pwyntydd llwybro. Rydym yn mynd i ddefnyddio hynny i symud drwy'r. Y peth cyntaf yr ydym am ei ei wneud yw mynd i lawr y llwybr 1. Dyna y digid cyntaf ein allweddol. Yn ffodus, fodd bynnag, nid ydym yn ei wneud rhaid i wneud unrhyw waith y tro hwn. Mae'r llwybr 1 eisoes wedi cael ei glirio. Yr wyf yn clirio ei fod o'r blaen pan oeddwn yn mewnosod Harvard yn 1636. Felly gallaf symud yn ddiogel i lawr 1 a dim ond yn mynd yno. Os gall symud i lawr y 1. Yn awr, fodd bynnag, yr wyf eisiau mynd i 7. Yr wyf yn clirio'r ffordd ar 6. Rwy'n gwybod y gallaf ddiogel ewch ymlaen i lawr y llwybr 6. Ond mae angen i mi fynd ymlaen ar y llwybr 7. Felly beth sydd angen imi ei wneud? Wel, yn union fel o'r blaen, yr wyf yn jyst angen i glirio'r giât, ewch allan o'r ffordd, ac adeiladu nod newydd o'r llwybr 7. Yn union fel hyn. Felly nawr rwyf wedi symud 1 ac yna 7. Ac yn awr yn sylwi, rwy'n didoli y ar y subbranch newydd. Hawl. Popeth arall o 16 ar, nid wyf yn poeni am. Dydw i ddim yn gwneud 16 unrhyw beth. Rwy'n gwneud 17 o stwff. Felly nawr o 17 ymlaen, rhaid i mi math o tân llwybrau newydd yma. Y digid nesaf fy allwedd yw 0. Rwy'n amlwg na allwn gael unrhyw le. Fi jyst adeiladwyd nod hwn. Felly, yr wyf yn gwybod nad oes llwybrau ymlaen o fan hyn. Felly, rhaid i mi wneud un fy hun. Felly yr wyf yn malloc yn nod newydd ac mae ganddynt 0 phwynt yno. Ac yna un mwy o amser, yr wyf yn malloc yn nod newydd ac yn cael un pwynt yno. Unwaith eto, yr wyf wedi blino'n lân fy allwedd, 1701. Felly yr wyf yn edrych i lawr ac yr wyf yn chwistrellu paent Iâl. Dyna enw'r nôd hwn. Ac felly yn awr os oes angen erioed i weld a oes Iâl yn yn y trie hwn, yr wyf yn dechrau yn y gwraidd, Rwy'n mynd i lawr 1701, ac yn edrych i lawr. Ac os wyf yn gweld Iâl chwistrellu paentio ar y ddaear, ac yna Rwy'n gwybod Iâl yn bodoli yn trie hwn. Gadewch i ni wneud un yn fwy. Gadewch i ni mewnosod Dartmouth i mewn i hyn trie, a sefydlwyd yn 1769. Dechreuwch wrth wraidd eto. Fy digid cyntaf fy allwedd yw 1. Gallaf symud yn ddiogel i lawr y llwybr hwnnw. Mae hynny eisoes yn bodoli. Mae'r digid nesaf fy allwedd yw 7. Gallaf symud yn ddiogel i lawr y llwybr hwnnw. Mae'n bodoli hefyd. Fy nesaf yw 6. Oddi yma, o'r lle yr wyf ar hyn o bryd mewn melyn yno yn y nod canol, 6 yn cael ei gloi i ffwrdd ar hyn o bryd. Os ydw i eisiau mynd i lawr y llwybr, Mae'n rhaid i mi adeiladu fy hun. Felly byddaf yn malloc yn nod newydd ac wedi 6 phwynt yno. Ac yna, unwaith eto, rwy'n ffaglu llwybrau newydd yma. Felly yr wyf yn malloc cainc newydd fel bod gan y rhif y llwybr node-- 9-- ac yna nawr os byddaf yn teithio 1769, ac yr wyf yn edrych i lawr. Does dim byd ar hyn o bryd chwistrellu paentio yno. Gallaf ysgrifennu Dartmouth. Ac yr wyf i wedi mewnosod Dartmouth i mewn i'r trie. Felly dyna mewnosod pethau i mewn i'r trie. Nawr rydym am i chwilio am bethau. Sut ydym yn chwilio am bethau yn y trie? Wel, mae'n 'n bert lawer yr un syniad. Nawr rydym jyst arfer y digidau ar yr allwedd i weld os gallwn lywio gan y gwraidd i ble rydym am fynd yn y trie. Os byddwn yn taro pen marw ar unrhyw adeg, yna gwyddom na all yr elfen honno yn bodoli neu fel arall a fyddai llwybr eisoes wedi eu clirio. Os byddwn yn ei wneud yn yr holl ffordd i y diwedd, i gyd mae angen i ni ei wneud yn edrych i lawr a gweld os yw hynny'n yr elfen rydym yn chwilio am. Os ydyw, llwyddiant. Os nad yw'n, yn methu. Felly gadewch i ni chwilio am Harvard yn y trie hwn. Rydym yn dechrau yn y gwraidd. Ac, unwaith eto, rydyn ni'n mynd i creu pwyntydd llwybro i wneud ein symudiadau i ni. O'r gwraidd rydym yn gwybod bod y lle cyntaf mae angen i ni fynd yn 1, gallwn wneud hynny? Oes, gallwn. Os bodoli yn ddiogel. Gallwn fynd yno. Yn awr, y lle nesaf, mae angen i ni fynd yw 6. A yw'r llwybr 6 yn bodoli o fan hyn? Yeah, mae'n ei wneud. Gallwn fynd i lawr y llwybr 6. Ac rydym yn y pen draw fan hyn. A allwn ni fynd i lawr y llwybr 3 o fan hyn? Wel, gan ei fod yn troi allan, ie, sy'n bodoli hefyd. A gallwn fynd ar y llwybr 6 o fan hyn? Oes, gallwn. Nid ydym wedi ateb yn eithaf y cwestiwn eto. Mae dal un yn fwy cam, sydd bellach mae angen i ni edrych i lawr a weld os dyna actually-- os ydym yn chwilio am Harvard, yw bod yr hyn yr ydym yn dod o hyd ar ôl i ni gwacáu y allweddol? Yn yr enghraifft rydym yn ei ddefnyddio yma, y blynyddoedd yw pedwar digid bob amser. Ond efallai y byddwch yn defnyddio'r enghraifft lle ydych yn storio geiriadur o eiriau. Ac felly yn lle cael 10 o awgrymiadau ar gyfer fy lleoliad, efallai y byddwch yn cael 26. Un ar gyfer pob llythyren o'r wyddor. Ac mae rhai geiriau fel ystlumod, sydd yn is-set o swp, er enghraifft. Ac felly hyd yn oed os ydych yn cyrraedd y diwedd y cyfnod allweddol ac yr ydych yn edrych i lawr, efallai nad ydych yn gweld yr hyn rydych chi'n chwilio amdano. Felly, mae'n rhaid i chi bob amser dramwy y llwybr cyfan ac yna os oeddech yn gallu llwyddo i groesi'r llwybr cyfan, edrych i lawr ac yn gwneud un cadarnhad terfynol. Ai dyna beth rwy'n chwilio amdano? Wel, yr wyf yn edrych i lawr ar ôl dechrau ar y brig ac yn mynd 1636. Yr wyf yn edrych i lawr. Rwy'n gweld Harvard. Felly, ie, yr wyf yn llwyddo. Beth os yw'r hyn dwi'n chwilio am Nid yw yn y trie, er. Beth os ydw i'n chwilio am Princeton, a sefydlwyd yn 1746. Ac felly yn dod yn 1746 fy allwedd i lywio drwy'r trie. Wel, yr wyf yn dechrau yn y gwraidd. Ac y lle cyntaf i mi eisiau i yn mynd i lawr y llwybr 1. A allaf ei wneud? Ie, yr wyf yn gallu. A allaf fynd i lawr y llwybr 7 oddi yno? Yeah, gallaf. Sy'n bodoli hefyd. Ond gall yr wyf yn mynd i lawr y llwybr 4 o fan hyn? Dyna fel gofyn y cwestiwn, gall Yr wyf yn symud ymlaen i lawr mai ychydig sgwâr fy mod i wedi hamlygu mewn melyn? Does dim byd yno. Hawl. Does dim ffordd ymlaen i lawr y llwybr 4. Os oedd Princeton yn y trie hwn, fod 4 Byddai wedi cael eu clirio i ni yn barod. Ac felly yn y fan hon rydym wedi cyrraedd diwedd marw. Ni allwn fynd ymhellach. Ac felly gallwn ddweud, yn bendant, dim. Nid yw Princeton yn bodoli yn trie hwn. Felly beth mae hyn i gyd yn ei olygu? Hawl. Mae llawer yn digwydd yma. Mae awgrymiadau i gyd dros y lle. Ac, fel y gwelwch yn unig gan y diagram, mae llawer o nodau sy'n yn fath o hedfan o gwmpas. Ond sylwi bob tro y byddwn yn awyddus i gwirio a oedd rhywbeth yn y trie, byddwn ond roedd yn rhaid i wneud 4 symudiadau. Bob tro y byddwn yn awyddus i mewnosoder rhywbeth yn y trie, rhaid i ni wneud 4 symudiadau, o bosibl mallocing rhai pethau ar hyd y ffordd. Ond fel y gwelsom pan fyddwn yn mewnosod Dartmouth i mewn i'r trie, Weithiau mae rhai o'r llwybr Efallai eisoes yn cael ei glirio i ni. Ac felly fel ein trie mynd yn fwy a mwy, rydym wedi gwneud llai o waith bob tro i fewnosod pethau newydd oherwydd ein bod i wedi eisoes Adeiladwyd llawer o'r canolradd canghennau ar hyd y ffordd. Os ydym wedi dim ond erioed i edrych ar 4 bethau, 4 yn unig yw gyson. Rydym wir yn fath o agosáu mewnosod amser cyson a am-edrych o amser yn gyson. Mae tradeoff, wrth gwrs, yw y trie hwn, fel y mae'n debyg y gallwch ddweud, yn enfawr. Mae pob un o'r nodau hyn cymryd llawer o le. Ond dyna y tradeoff. Os ydym am wirioneddol gyflym mewnosod, dileu 'n sylweddol yn gyflym, a am-edrych 'n sylweddol yn gyflym, mae'n rhaid i ni yn cael llawer o ddata yn hedfan o gwmpas. Mae'n rhaid i neilltuo llawer o le a chof am y strwythur data i fodoli. Ac felly dyna y tradeoff. Ond mae'n edrych fel ein bod allai fod wedi dod o hyd iddo. Efallai y byddwn wedi canfod bod greal sanctaidd o strwythurau data gyda mewnosod cyflym, dileu, ac am-edrych. Ac efallai y bydd hyn yn strwythur data priodol i'w ddefnyddio ar gyfer pa bynnag wybodaeth ydym yn ceisio ei siop. Rwy'n Doug Lloyd, mae hyn yn cs50.