>> [MUSIC PLAYING]
>> ANDI PENG: hiss蓹sinin h蓹ft蓹 6 xo艧 g蓹lmisiniz.
Biz standart yoldan 脟蓹r艧蓹nb蓹 ax艧am谋 b枚lm蓹 vaxt
Bu sevimli bazar g眉n眉 s蓹h蓹r g眉norta.
H蓹r k蓹s 眉莽眉n t蓹艧蓹kk眉r edirik ki, bu g眉n, lakin ciddi m蓹n蓹 qo艧ulub
alq谋艧 d蓹yirmi.
>> Bu, olduqca b枚y眉k s蓹y var.
M蓹n dem蓹k olar ki, h蓹tta etm蓹yib vaxt up, lakin OK idi.
Bel蓹 ki, M蓹n siz蓹 ki, b眉t眉n bilirik yaln谋z viktorina etdik.
陌lk n枚vb蓹d蓹, xo艧 g蓹lmisiniz ki, flip yan.
>> 陌kincisi, biz bu bar蓹d蓹 dan谋艧aca臒谋q.
Biz viktorina haqq谋nda dan谋艧maq laz谋md谋r.
Biz haqq谋nda dan谋艧maq laz谋md谋r Siz sinif edirik.
Siz g枚z蓹l olacaq.
M蓹n sizin viktorina 眉莽眉n Burada sonunda,
Bel蓹 ki, u艧aqlar almaq ist蓹yirsinizs蓹 a, ona tamamil蓹 g枚z蓹l baxmaq.
>> Bel蓹 ki, tez biz ba艧lamaq 蓹vv蓹l a艧a臒谋dak谋 kimi bu g眉n 眉莽眉n g眉nd蓹md蓹.
G枚rd眉y眉n眉z kimi, biz ist蓹yirik 蓹sas蓹n s眉r蓹tli at蓹艧
data strukturlar谋 b眉t眉n d蓹st蓹 vasit蓹sil蓹 h蓹qiq蓹t蓹n, h蓹qiq蓹t蓹n, h蓹qiq蓹t蓹n tez.
Kimi Bel蓹 ki, olmayacaq super interaktiv g眉n.
Bu, yaln谋z m蓹n蓹 c眉r q谋艧q谋r谋r olacaq 艧eyi, v蓹 m蓹n siz蓹 莽a艧d谋rmaq 蓹g蓹r,
M蓹n 莽ox s眉r蓹tli gedir蓹m 蓹g蓹r M蓹n蓹 bildirin.
Onlar yaln谋z m眉xt蓹lif data ist蓹yirik strukturlar谋 v蓹 bir hiss蓹si kimi
bu sizin pset Qar艧谋dan g蓹l蓹n h蓹ft蓹, siz laz谋md谋r
onlardan biri h蓹yata ke莽irilm蓹si 眉莽眉n t蓹l蓹b oluna, b蓹lk蓹 onlara iki Odur iki
Sizin pset.
OK, bel蓹 ki, m蓹n yaln谋z gedir蓹m B蓹zi elanlar il蓹 ba艧lay谋n.
Biz 莽谋xar谋c谋 borular v蓹 daha 莽ox s谋ralar谋nda art谋q getm蓹k laz谋md谋r biz viktorina 蓹vv蓹l n蓹 莽ox d蓹rinliyi.
Biz art谋q getm蓹k ba臒l谋 olacaq yenid蓹n, bir daha sadalamaq
daha d蓹rin daha n蓹 biz viktorina 蓹vv蓹l idi.
V蓹 sonra biz hash haqq谋nda dan谋艧maq laz谋md谋r masalar, a臒ac v蓹 莽al谋艧谋r olan
b眉t眉n pset 眉莽眉n olduqca z蓹ruridir.
V蓹 sonra biz bir art谋q getm蓹k laz谋md谋r pset5 眉莽眉n faydal谋 ipu莽lar谋.
>> OK, bel蓹 ki, viktorina 0.
orta 58% olmu艧dur.
Bu, 莽ox a艧a臒谋 idi, bel蓹 ki, u艧aqlar b眉t眉n olaraq 莽ox, 莽ox yax艧谋 idi
ki,.
>> Siz 蓹g蓹r olduqca 莽ox, thumb qayda orta bir standart sapma 蓹rzind蓹
biz bir az ist蓹yirik, x眉susil蓹, 莽眉nki rahat ikib枚lm蓹li, siz tamamil蓹 g枚z蓹l ist蓹yirik.
Siz yolda ist蓹yirik.
H蓹yat yax艧谋d谋r.
>> M蓹n hesab edir蓹m ki, scary bilirik M蓹n bu viktorina 40% kimi var.
Bu sinif u臒ursuz gedir蓹m.
M蓹n siz蓹 s枚z verir蓹m, siz deyilik sinif u臒ursuz olacaq.
Siz tamamil蓹 g枚z蓹l ist蓹yirik.
>> Art谋q var olan sizin 眉莽眉n orta, t蓹sirli, t蓹sirli,
kimi ciddi yax艧谋.
M蓹n onlara var.
Onlar谋 almaq g蓹lm蓹k 眉莽眉n 莽ekinmeyin b枚l眉m眉n sonunda.
茝g蓹r varsa M蓹n蓹 bildirin m蓹s蓹l蓹l蓹r, onlara suallar.
Biz hesab 蓹lav蓹 edin yanl谋艧, biz蓹 bildirin.
>> OK, pset5 ki, bu, h蓹qiq蓹t蓹n deyil m蓹nada Yale 眉莽眉n q蓹rib蓹 h蓹ft蓹
Bizim pset g枚r蓹 ki, O c眉ml蓹d蓹n g眉norta saatlar谋nda 脟蓹r艧蓹nb蓹
gec g眉n, bel蓹 ki, h蓹qiq蓹t蓹n var g眉norta saatlar谋nda 莽蓹r艧蓹nb蓹 ax艧am谋 n蓹z蓹ri g枚r蓹.
Y蓹qin ki, he莽 bir ba艧a g眉norta saatlar谋nda 脟蓹r艧蓹nb蓹 ax艧am谋.
Ki, tamamil蓹 g枚z蓹l var.
Biz ofis saat olacaq gec蓹 el蓹c蓹 d蓹 bazar ert蓹si gec蓹.
V蓹 b枚lm蓹l蓹r b眉t眉n bu h蓹ft蓹 olacaq h蓹qiq蓹t蓹n seminarlar 莽evrilmi艧dir,
bel蓹 pop 莽ekinmeyin Siz ist蓹diyiniz h蓹r hans谋 bir ikib枚lm蓹li,
v蓹 onlar n枚v mini-pset olacaq ki, yard谋m 眉莽眉n seminarlar.
Bel蓹 ki, kimi, bu, yaln谋z b枚lm蓹 biz material t蓹dris edirik.
B眉t眉n dig蓹r b枚lm蓹l蓹r diqq蓹t edil蓹c蓹k yaln谋z pset 眉莽眉n k枚m蓹k.
Evet?
>> Auditoriya: Harada ofis saat var?
>> ANDI PENG: Office saat , oh yax艧谋 sual tonight--.
M蓹n hesab edir蓹m ki ofis saat gec蓹 Teal ya Commons var.
Siz online CS50 yoxlamaq 蓹g蓹r v蓹 siz ofis saat getm蓹k
c蓹dv蓹li olmal谋d谋r ki, Onlar谋n ham谋s谋 deyir.
>> M蓹n bu ax艧am ya bilir蓹m v蓹 ya sabah Q蓹hv蓹yi edir
v蓹 biz ola bil蓹r edir蓹m dig蓹r gec蓹 commons.
茝min deyil蓹m.
Yax艧谋 suald谋r.
CS50 haqq谋nda yoxlay谋n.
>> Ba臒l谋 Cool, h蓹r hans谋 bir sual谋n谋z 眉莽 g眉n kimi n枚vb蓹ti c蓹dv蓹li?
Davud kimi u艧aqlar s枚z bu t蓹p蓹nin 眉st etdi.
Siz u艧aqlar dem蓹k olar ki, var.
Yaln谋z 眉莽 g眉n daha.
Orada almaq, sonra biz b眉t眉n a艧a臒谋 g蓹lm蓹k laz谋md谋r.
Biz g枚z蓹l CS-free fasil蓹 laz谋md谋r.
Biz geri g蓹lm蓹k laz谋md谋r.
Biz web daxil dal谋艧 laz谋md谋r proqramla艧d谋rma v蓹 inki艧af,
莽ox 蓹yl蓹nc蓹 var 艧eyi m眉qayis蓹 dig蓹r psets b蓹zi.
V蓹 soyuq olacaq v蓹 biz 蓹yl蓹nc蓹 莽ox olacaq.
Biz daha 莽ox konfet laz谋md谋r.
Konfet 眉莽眉n 眉zr ist蓹yirik.
M蓹n konfet unuttum.
Bu kobud s蓹h蓹r idi.
Bel蓹 ki, u艧aqlar, dem蓹k olar ki, var v蓹 M蓹n siz蓹 u艧aqlar f蓹xr edir蓹m.
>> OK, bel蓹 ki, 莽谋xar谋c谋 borular.
Kim Jack bar蓹d蓹 suala sevil蓹n v蓹 viktorina onun geyim?
He莽 kim?
OK, ki, g枚z蓹l.
>> Bel蓹 ki, mahiyy蓹tc蓹 bil蓹rsiniz kimi 艧蓹kil Jack, burada bu o臒lan,
geyim almaq 眉莽眉n sevir y谋臒谋n谋 眉st h蓹yata,
v蓹 o, 眉z蓹rin蓹 geri qoyur o sonra y谋臒谋n谋 h蓹yata.
Bu 艧蓹kild蓹 Bel蓹 ki, o, he莽 vaxt 蓹ld蓹 olunmas谋 g枚r眉n眉r
alt Onun geyim y谋臒谋n.
Bel蓹 ki, bu c眉r t蓹svir edir 茝sas data structure
bir y谋臒谋n h蓹yata nec蓹.
>> 茝sas蓹n, bir hesab obyektl蓹rin h蓹r hans谋 bir y谋臒谋n谋 kimi y谋臒谋n
Siz 眉st 眉z蓹rind蓹 艧eyi qoymaq v蓹 harada sonra 眉st onlar谋 pop.
Bel蓹 ki LIFO biz kimi kisaltmasidir son, ilk use-- 眉莽眉n.
V蓹 bel蓹 眉st davam y谋臒谋n谋 莽谋x谋r ilk biridir.
V蓹 bel蓹 ki, iki 艧蓹rtl蓹ri biz birl蓹艧m蓹k ist蓹yir蓹m
ki, push v蓹 pop adlan谋r.
Zaman 眉z蓹rin蓹 bir 艧ey t蓹kan d蓹st蓹, v蓹 geri onu a莽谋l谋r.
>> V蓹 m蓹n bu c眉r tapmaq sizin 眉莽眉n abstrakt anlay谋艧
Kim kimi g枚rm蓹k ist蓹yir蓹m Bu faktiki h蓹yata ke莽irilm蓹si
real d眉nyada.
Nec蓹 bir 莽ox in艧a yaz谋blar b蓹lk蓹 bir saat kimi, s蓹b蓹biyl蓹 蓹vv蓹l
v蓹 t蓹sad眉f蓹n bir b枚y眉k silinmi艧 t蓹sad眉f蓹n kimi onun y谋臒谋n?
V蓹 sonra n蓹 n蓹zar蓹t yoxdur biz onu geri qoymaq 眉莽眉n istifad蓹?
Control-Z, yeah?
Control-Z, bel蓹 ki, d蓹f蓹 m蓹bl蓹臒i Control-Z m蓹nim h蓹yat xilas ki,
, h蓹r zaman m蓹nim ass xilas ki, bir y谋臒谋n谋 vasit蓹sil蓹 h蓹yata edir.
>> 茝sas蓹n b眉t眉n m蓹lumat ki, sizin Word s蓹n蓹d var
Bu basd谋 v蓹 irad蓹si il蓹 atd谋 olur.
V蓹 bel蓹 mahiyy蓹tc蓹 zaman siz蓹 bir 艧ey silm蓹k, siz geri a莽谋l谋r.
V蓹 sonra geri ehtiyac varsa, Control-C n蓹 olan bas谋n.
V蓹 bel蓹 real d眉nya funksiyas谋 q蓹d蓹r sad蓹 data strukturu
Sizin g眉nd蓹lik h蓹yat k枚m蓹k ed蓹 bil蓹r.
>> Bel蓹 ki, bir struct yoldur ki, biz, h蓹qiq蓹t蓹n, bir y谋臒谋n yaratmaq.
Biz sonra struct m眉蓹yy蓹n yaz谋n, biz alt谋ndak谋 y谋臒谋n z蓹ng.
V蓹 y谋臒谋n谋 莽蓹r莽iv蓹sind蓹, biz iki parametrl蓹ri var
biz mahiyy蓹tc蓹 manipulyasiya ed蓹 bil蓹r ki, bel蓹 ki, biz char star strings g眉c眉 var.
>> Bu edir B眉t眉n bir s谋ra yarad谋r
biz ist蓹diyiniz n蓹 bil蓹rsiniz ki, olan biz onun potensial谋n谋n m眉蓹yy蓹n ed蓹 bil蓹r.
Capacity yaln谋z max m蓹bl蓹臒i m谋 madd蓹l蓹r, biz bu array daxil qoya bil蓹r.
int 枚l莽眉s眉 saxlay谋r counter ne莽蓹 madd蓹l蓹r track haz谋rda
y谋臒谋n谋.
Bel蓹 ki, sonra biz, A, takip ed蓹 bil蓹rsiniz faktiki y谋臒谋n谋 nec蓹 b枚y眉k,
v蓹, B, nec蓹 y谋臒谋n谋 莽ox biz ist蓹mirik, 莽眉nki biz dolu
Bizim g眉c眉 n蓹 眉z蓹rind蓹 da艧q谋n.
>> M蓹s蓹l蓹n, bu sevimli So sual viktorina idi.
茝sas蓹n nec蓹 t蓹kan yoxdur bir y谋臒谋n 眉st 眉z蓹rind蓹.
Pretty sad蓹.
Siz baxmaq 蓹g蓹r, bu vasit蓹sil蓹 g蓹zm蓹k laz谋md谋r.
[I艧itilemez] size-- 蓹g蓹r zaman unutmay谋n,
h蓹r hans谋 daxil olmaq ist蓹yir蓹m bir struct 蓹rzind蓹 parametri,
Siz struct.parameter ad谋 yoxdur.
>> Bu halda, s y谋臒谋n谋 ad谋.
Biz 枚l莽眉s眉 daxil olmaq 眉莽眉n ist蓹diyiniz bu, bel蓹 ki, biz s.size yoxdur.
脰l莽眉s眉 deyil kimi uzun g眉c眉 v蓹 ya uzun b蓹rab蓹r
Bu g眉c眉 daha az kimi, ya burada i艧l蓹m蓹k olard谋.
>> 茝g蓹r daxili daxil ist蓹yir蓹m Sizin y谋臒谋n谋, s.strings ki,
v蓹 bu yeni say谋 qoymaq olacaq Orada daxil etm蓹k ist蓹yir蓹m ki,.
Yaln谋z ist蓹yirik ki, deyirl蓹r y谋臒谋n谋 眉z蓹rin蓹 int n daxil,
biz s.strings ed蓹 bil蓹r M枚t蓹riz蓹d蓹, s.size n b蓹rab蓹rdir.
脰l莽眉s眉 harada 脟眉nki biz Hal-haz谋rda y谋臒谋n谋 var
biz t蓹kan olacaq 蓹g蓹r Bu, biz yaln谋z daxil olmaq
枚l莽眉s眉 yerd蓹, y谋臒谋n谋 cari dol臒unluq,
v蓹 biz bunu 眉z蓹rin蓹 int n bas谋n.
V蓹 sonra biz 蓹min etm蓹k ist蓹yir蓹m biz d蓹 n 枚l莽眉s眉 incrementing edirik
biz bel蓹 biz takip ed蓹 bil蓹rsiniz y谋臒谋n谋 蓹lav蓹 bir 艧ey 蓹lav蓹 edib.
陌ndi biz daha 枚l莽眉s眉 var.
Burada m蓹nada edir ham谋 nec蓹 m蓹ntiqi i艧l蓹yir?
Bu c眉r gecikm蓹di.
Auditoriya: Siz art谋q getm蓹k bil蓹r s.stringss.strings [s.size] yenid蓹n?
ANDI PENG: 茝lb蓹tt蓹, bel蓹 n蓹 biz蓹 Hal-haz谋rda s.size?
Auditoriya: Bu cari 枚l莽眉s眉 var.
ANDI PENG: M蓹hz, bel蓹 ki, Bizim 枚l莽眉s眉 cari index,
v蓹 biz yeni tam qoymaq ist蓹yir蓹m biz s.size daxil etm蓹k ist蓹yir蓹m ki,.
Ki, hissi edirmi?
S.strings, 莽眉nki b眉t眉n ki, edir serial谋n ad谋.
Bu b眉t眉n daxil deyil Bizim struct 蓹rzind蓹 array,
v蓹 biz ist蓹yirsinizs蓹 ki, index daxil n yerl蓹艧dirm蓹k,
biz yaln谋z ged蓹 bil蓹rsiniz istifad蓹 M枚t蓹riz蓹d蓹 s.size.
Cool.
>> B眉t眉n h眉quqlar, pop, m蓹n onu pseudocode Siz u艧aqlar, lakin ox艧ar anlay谋艧 眉莽眉n.
Ki, hissi edirmi?
脰l莽眉s眉 b枚y眉k olduqda sonra s谋f谋r, daha
茝g蓹r bir 艧ey etm蓹k ist蓹yir蓹m ki, bilirik h蓹yata 枚l莽眉s眉 deyil, 莽眉nki
daha 莽ox s谋f谋r, sonra y谋臒谋n谋 he莽 bir 艧ey yoxdur.
>> Bel蓹 ki, yaln谋z icra etm蓹k ist蓹yir蓹m bu kodu, yaln谋z ed蓹 bil蓹rsiniz
pop bir 艧ey varsa a莽谋l谋r.
脰l莽眉s眉 b枚y眉kd眉r Bel蓹 ki 0 daha 莽ox, biz minus 枚l莽眉s眉.
Biz 枚l莽眉s眉 azalma v蓹 sonra qay谋tmaq 莽眉nki daxilind蓹 n蓹 var
yaratma, ist蓹yirik saxlan谋l谋r n蓹 giri艧
y谋臒谋n谋 眉st index.
H蓹r 艧ey m蓹nada?
M蓹n 蓹g蓹r u艧aqlar, bu yazmaq Siz u艧aqlar yazmaq 眉莽眉n ed蓹 bil蓹r?
OK, u艧aqlar il蓹 蓹traf谋nda oynaya bil蓹r.
He莽 bir narahatl谋q onu almaq yoxsa.
Biz kod vaxt yoxdur Bu bu g眉n biz, 莽眉nki
bu strukturlar谋n bir 莽ox var ke莽m蓹k, lakin mahiyy蓹tc蓹 眉莽眉n
pseudocode, 莽ox, 莽ox ox艧ar t蓹kan.
Yaln谋z m蓹ntiq boyunca edin.
B眉t眉n daxil 蓹min olun do臒ru struct x眉susiyy蓹tl蓹ri.
Evet?
>> Auditoriya: bu slaydlar v蓹 bu b眉t眉n 艧ey bu g眉n-ish ola bil蓹rmi?
ANDI PENG: H蓹mi艧蓹, yep.
M蓹n qoymaq 眉莽眉n c蓹hd gedir蓹m Bu q蓹d蓹r sonra bir saat kimi.
M蓹n David e-po莽t laz谋md谋r, David 眉莽眉n 莽al谋艧aca臒谋q Bundan sonra bir saat kimi onu qoymaq.
>> OK, bel蓹 ki, sonra biz bu dig蓹r h蓹r蓹k蓹t sevimli data structure bir s谋ra 莽a臒谋r谋b.
U艧aqlar burada G枚rd眉y眉n眉z kimi, bir queue, aram谋zda Britaniya 眉莽眉n,
bu bir x蓹ttidir.
Bel蓹 ki, 蓹ksin蓹 n蓹 Bir y谋臒谋n hesab edir蓹m
bir s谋ra d蓹qiq n蓹 m蓹ntiqi oldu臒unu d眉艧眉n眉r蓹m.
Bu FIFO qaydalar谋 il蓹 t蓹艧kil edir Hans谋 陌lk olaraq, First Out edir.
Siz ilk edirsinizs蓹 line bir sen
birinci ki, x蓹tti 莽谋x谋r.
>> Bel蓹likl蓹, biz bu z蓹ng etm蓹k ist蓹yir蓹m n蓹 dequeueing v蓹 enqueueing olunur.
Biz bir 艧ey 蓹lav蓹 etm蓹k ist蓹yirsinizs蓹 Bizim n枚vb蓹, biz enqueue.
Biz ist蓹yirsinizs蓹 dequeue, v蓹 ya etm蓹k bir 艧ey 眉z, biz dequeue.
>> Biz n枚v ist蓹yirik Bel蓹 ki, eyni m蓹nada sabit 枚l莽眉s眉 elementl蓹rinin yarad谋lmas谋 ki, biz
m眉蓹yy蓹n bil蓹rsiniz 艧eyi, lakin biz d蓹 ed蓹 bil蓹rsiniz
biz yerl蓹艧dirilm蓹si oldu臒unuz d蓹yi艧iklik onlar谋n i莽蓹risind蓹 parametrl蓹ri
hans谋 n枚v眉 蓹sas谋nda funksionall谋q ist蓹yirik.
脟谋xar谋c谋 borular Bel蓹 ki, biz son ist蓹di bir N birinci olmaq.
Queue biz ilk 艧ey ist蓹yirik h蓹yata ilk 艧ey olmal谋d谋r.
>> Struct tipi So G枚rd眉y眉n眉z kimi, m眉蓹yy蓹n,
bir az f蓹rqli y谋臒谋n谋 idi n蓹
yaln谋z biz saxlamaq 眉莽眉n var, 莽眉nki 枚l莽眉s眉 haz谋rda harada track,
biz d蓹 ba艧 takip etm蓹k ist蓹yir蓹m el蓹c蓹 d蓹 oldu臒u kimi, biz haz谋rda.
Bel蓹likl蓹, m蓹n daha asan hesab edir蓹m M蓹n bu q蓹d蓹r 莽蓹km蓹k 蓹g蓹r.
Bel蓹 ki, biz bir s谋ra var t蓹s蓹vv眉r ed蓹k, bel蓹 ba艧谋 sa臒 burada dey蓹k.
line r蓹hb蓹ri ed蓹k yaln谋z orada haz谋rda dem蓹k
v蓹 biz daxil etm蓹k ist蓹yir蓹m n枚vb蓹 daxil bir 艧ey.
M蓹n mahiyy蓹tc蓹 枚l莽眉s眉 z蓹ng etm蓹k 眉莽眉n gedir蓹m quyruq eyni 艧ey,
Sizin queue yerd蓹 sonu.
Yaln谋z 枚l莽眉s眉 sa臒 burada deyirl蓹r.
>> Bel蓹 ki, nec蓹 bir feasibly yoxdur bir s谋ra bir 艧ey daxil?
N蓹 index biz yerl蓹艧dirm蓹k ist蓹yir蓹m biz daxil etm蓹k ist蓹yir蓹m.
Bu ba艧lan臒谋c谋 茝g蓹r sizin n枚vb蓹 v蓹 bu onun sonu
v蓹 ya onun 枚l莽眉s眉, biz n蓹 n枚vb蓹ti obyekt 蓹lav蓹 etm蓹k ist蓹yirsiniz?
>> Auditoriya: [i艧itilemez]
ANDI PENG: M蓹hz, 蓹lav蓹 etm蓹k ist蓹diyiniz as谋l谋 olaraq onu yaz谋blar.
Ya bu bo艧 v蓹 ya bo艧.
Bel蓹likl蓹, siz y蓹qin ki, 蓹lav蓹 etm蓹k ist蓹yir蓹m 脟眉nki burada size is-- 蓹g蓹r
Bunlar谋n ham谋s谋 tam 蓹g蓹r, ist蓹diyiniz sa臒, burada 蓹lav蓹 etm蓹k 眉莽眉n?
>> V蓹 bel蓹 ki, var, 莽ox is蓹 sad蓹 deyil, kifay蓹t q蓹d蓹r h蓹mi艧蓹 do臒ru
蓹sas f蓹rq, 莽眉nki bir s谋ra v蓹 bir y谋臒谋n aras谋nda
ki, n枚vb蓹 ed蓹 bil蓹rsiniz deyil h蓹qiq蓹t蓹n manipulyasiya etm蓹k
ki, ba艧 d蓹yi艧iklikl蓹r Siz ist蓹diyiniz as谋l谋 olaraq
Sizin replika ba艧lan臒谋c谋 ba艧lamaq 眉莽眉n.
V蓹 n蓹tic蓹 olaraq, sizin quyruq d蓹 d蓹yi艧iklik gedir.
V蓹 bel蓹 bir n蓹z蓹r 陌ndi bu kodu.
Sizl蓹rin d蓹 ist蓹ndi kimi enqueue, viktorina yazmaq.
B蓹lk蓹 biz niy蓹 vasit蓹sil蓹 dan谋艧maq laz谋md谋r cavab idi n蓹 idi.
>> M蓹n, bir bu x蓹tt uy臒un bilm蓹di kod lakin mahiyy蓹tc蓹 bu par莽a
bir x蓹tt olmal谋d谋r.
30 saniy蓹 kimi s蓹rf edirl蓹r.
Bir g枚z at谋n v蓹 n蓹 g枚rm蓹k bu deyil bir yoldur.
>> 脟ox, 莽ox ox艧ar struct, 莽ox, 莽ox 蓹vv蓹lki kimi ox艧ar strukturu
b蓹lk蓹 ba艧qa stack kodu bir x蓹tt.
V蓹 kodu bir line ki, funksionall谋臒谋 m眉蓹yy蓹n edir.
V蓹 h蓹qiq蓹t蓹n f蓹rql蓹ndirir bir y谋臒谋n bir s谋ra.
>> H蓹r k蓹s bir z蓹rb蓹 almaq ist蓹yir蓹m Siz var niy蓹 izah
burada bu m眉r蓹kk蓹b 艧ey var?
Biz geri g枚rm蓹k bizim g枚z蓹l dost modulus.
Sizl蓹rin tezlikl蓹 g蓹l蓹c蓹k kimi proqramla艧d谋rma tan谋maq,
dem蓹k olar ki, ist蓹diyiniz zaman bir 艧ey laz谋md谋r bir 艧ey 蓹traf谋nda kesmek,
modulus bunu yol olacaq.
Bel蓹 ki, bilm蓹d蓹n, h蓹r k蓹s ist蓹yir kodu ki, x蓹tt izah c蓹hd?
B蓹li, b眉t眉n cavablar var q蓹bul v蓹 xo艧.
Auditoriya: Siz m蓹n蓹 s枚hb蓹t edirsiniz?
ANDI PENG: B蓹li.
Auditoriya: Oh, he莽 bir sorry.
ANDI PENG: OK, bel蓹 ki, ed蓹k bu kod vasit蓹sil蓹 g蓹zm蓹k.
Bel蓹 ki, zaman 莽al谋艧d谋臒谋n谋z bir s谋ra 眉z蓹rind蓹 bir 艧ey 蓹lav蓹,
ba艧 olur ki, sevimli halda burada olmaq, bizim 眉莽眉n 莽ox asand谋r
yaln谋z sonuna q蓹d蓹r getm蓹k do臒ru bir 艧ey, daxil?
Amma bir s谋ra b眉t眉n n枚qt蓹sidir ed蓹 h蓹qiq蓹t蓹n dinamik r蓹hb蓹ri
harada as谋l谋 olaraq d蓹yi艧蓹 biz Bizim q ba艧lan臒谋c olmaq ist蓹yir蓹m,
v蓹, quyruq kimi d蓹 d蓹yi艧iklik gedir.
>> V蓹 bu idi ki, t蓹s蓹vv眉r n枚vb蓹 deyil, bu quyru臒u meydana g蓹ldi.
Ba艧谋 sa臒 burada deyirl蓹r.
Bizim queue bu kimi baxd谋 deyirl蓹r.
Biz burada ke莽m蓹k ist蓹yirdi x蓹ttinin ba艧lan臒谋c谋 edir
Biz ba艧 ke莽dikd蓹 dey蓹k Bu 艧蓹kild蓹 v蓹 枚l莽眉l蓹ri.
>> 陌ndi biz bir 艧ey 蓹lav蓹 etm蓹k ist蓹yir蓹m Bu queue, ancaq u艧aqlar G枚rd眉y眉n眉z kimi,
yaln谋z kimi sad蓹 deyil 枚l莽眉s眉 sonra n蓹 蓹lav蓹
sonra biz t枚k眉lm蓹k, 莽眉nki bizim faktiki serial谋n h蓹ddi.
Biz, h蓹qiq蓹t蓹n, 蓹lav蓹 etm蓹k ist蓹diyiniz burada.
Ki, bir s谋ra g枚z蓹llik var ki, vizual, bizim 眉莽眉n
line bu kimi gedir kimi, g枚r眉n眉r, lakin bir data strukturu saxlan谋l谋r zaman,
onlar d枚vr眉 kimi verir.
Bu c眉r 蓹traf谋nda wraps 枚n eyni 艧蓹kild蓹 etm蓹k
x蓹tti d蓹 kesmek olar ki, 蓹traf谋nda harada as谋l谋 olaraq
olmaq X蓹ttin 蓹vv蓹lind蓹 ist蓹yirik.
V蓹 bel蓹 ki, biz bir g枚t眉rs蓹k burada a艧a臒谋 baxmaq, ed蓹k
bir yaratmaq ist蓹yirdi dem蓹k funksiyas谋 enqueue 莽a臒谋r谋b.
Biz bu q daxil int n 蓹lav蓹 etm蓹k ist蓹di.
Q.size biz data ki, z蓹ng ed蓹c蓹yik Q 蓹g蓹r Bizim queue.size deyil, 蓹g蓹r strukturu
g眉c眉 v蓹 ya b蓹rab蓹r Bu, g眉c眉 az deyil
q.strings bizim q 蓹rzind蓹 array edir.
Biz m眉蓹yy蓹n olacaq ki q.heads b蓹rab蓹r,
olan burada, 眉st蓹g蓹l q.size g眉c眉 il蓹 modulus olan
Buralarda biz蓹 geri kesmek.
>> Bu misal, index bel蓹 ba艧谋n谋n sa臒, 1?
枚l莽眉s眉 index 0, 1, 2, 3, 4.
Bel蓹 ki, biz 1 plus 4 modulus ed蓹 bil蓹rsiniz 5 bizim g眉c眉.
N蓹 biz蓹 verir?
Index n蓹dir bu 莽谋x谋r?
>> Auditoriya: 0.
>> ANDI PENG: 0, hans谋 burada olmaq olur,
v蓹 biz etm蓹k ist蓹yir蓹m burada daxil daxil etm蓹k 眉莽眉n.
V蓹 bu t蓹nlik burada c眉r yaln谋z h蓹r hans谋 bir n枚mr蓹l蓹ri il蓹 i艧l蓹yir
harada as谋l谋 olaraq ba艧 v蓹 枚l莽眉s眉 var.
Siz n蓹 o bilirsinizs蓹 h蓹r 艧eyi bilirsiniz, var
d蓹qiq daxil etm蓹k ist蓹diyiniz n蓹 n枚vb蓹 sonra.
Ki, ham谋ya m蓹nada edirmi?
>> M蓹n beyin c眉r bilirik teaser, x眉susil蓹, 莽眉nki bu
Sizin viktorina sonra g蓹ldi.
Lakin 眉mid h蓹r k蓹s 陌ndi ba艧a d眉艧m蓹k olar
niy蓹 bu h蓹ll v蓹 ya bu funksiyas谋 bu yoldur.
H蓹r k蓹s bir az ayd谋n?
OLDU.
>> V蓹 indi, 蓹g蓹r bu dequeue ist蓹di
bizim ba艧 d蓹yi艧k蓹n olacaq harada biz dequeue olsayd谋, 莽眉nki
biz q sonunda off etmirl蓹r.
Biz sa臒, ba艧 莽谋xarmaq ist蓹yirsiniz?
Bel蓹 ki, n蓹tic蓹d蓹 ba艧 d蓹yi艧dirm蓹k 眉莽眉n gedir, Siz enqueue zaman niy蓹 v蓹 ki,
Siz takip var harada ba艧 v蓹 枚l莽眉s眉
daxil ed蓹 olmaq 眉莽眉n d眉zg眉n m枚vqe.
>> V蓹 bel蓹 ki, dequeue zaman, M蓹n d蓹 onu pseudocode.
茝g蓹r siz 莽ekinmeyin bu kodla艧d谋rma c蓹hd.
Siz sa臒, ba艧 h蓹r蓹k蓹t etm蓹k ist蓹yirsiniz?
M蓹n dequeue ist蓹yirdi, m蓹n ba艧 眉z蓹rind蓹 h蓹r蓹k蓹t olard谋.
Bu ba艧 olard谋.
>> V蓹 cari 枚l莽眉s眉 olard谋 莽谋xmaq, 莽眉nki biz art谋q
array d枚rd elementl蓹ri var.
Biz yaln谋z 眉莽 var v蓹 sonra biz ist蓹yirik daxilind蓹 saxlan谋l谋r edilmi艧dir n蓹 qay谋tmaq
ba艧, biz bu almaq ist蓹yir蓹m, 莽眉nki y谋臒谋n谋 莽ox ox艧ar d蓹y蓹ri h蓹yata.
Yaln谋z siz q蓹bul etdiyiniz f蓹rqli bir yerd蓹n,
v蓹 sizin pointer redesign var n蓹tic蓹sind蓹 f蓹rqli bir yer蓹.
M蓹ntiqi, h蓹r k蓹s edin?
Great.
>> OK, bel蓹 ki, biz bir az dan谋艧maq olacaq ba臒l谋 siyah谋lar谋 haqq谋nda daha 蓹trafl谋
onlar 莽ox, 莽ox qiym蓹tli olacaq, 莽眉nki Bu h蓹ft蓹 蓹rzind蓹 sizin 眉莽眉n
psets.
茝laq蓹li siyah谋lar谋, kimi u艧aqlar onlar b眉t眉n var, yadda bil蓹r
m眉蓹yy蓹n qov艧aqlar谋n谋n var qov艧aqlar谋n谋n var bir d蓹y蓹ri v蓹 bir g枚st蓹rici h蓹m d蓹 d蓹y蓹rl蓹ri
birlikd蓹 ba臒l谋d谋r bu g枚st蓹ricil蓹r t蓹r蓹find蓹n.
Nec蓹 v蓹 bel蓹 struct Biz burada bir node biz yaratmaq
olan int n var n蓹 bir ma臒aza v蓹 ya simli n d蓹y蓹ri
v蓹 ya ist蓹diyiniz h蓹r hans谋 char star n, z蓹ng.
G枚st蓹rici struct node ulduz, H蓹r bir node var etm蓹k ist蓹yir蓹m ki,
ki, olacaq n枚vb蓹ti qar艧谋 pointer point.
Siz ba艧 laz谋md谋r bir ba臒l谋 siyah谋
qalan qeyd etm蓹k niyy蓹tind蓹dir s v蓹 s d蓹y蓹rl蓹r
Siz n蓹hay蓹t sonuna 莽atmaq q蓹d蓹r.
V蓹 bu son node yaln谋z bir g枚st蓹rici yoxdur gedir.
Bu qeyd etm蓹k olacaq null, v蓹 zaman var
siz hit etdik bilirik Sizin ba臒l谋 siyah谋 sonunda
zaman son g枚st蓹rici bir 艧ey i艧ar蓹 deyil.
>> Bel蓹likl蓹, biz daha 莽ox bir az getm蓹k olacaq ba臒l谋 d蓹rinliyi nec蓹 bir m眉mk眉n olard谋
bir ba臒l谋 siyah谋s谋 axtar谋艧.
B蓹zi n蓹 saxla ba臒l谋 siyah谋lar谋 莽at谋艧mazl谋qlar
Axtar谋艧a ba臒l谋 bir s谋ra ay蓹l蓹ri.
Bir s谋ra siz ikili axtar谋艧, lakin niy蓹 bir ba臒l谋 siyah谋 ki, ed蓹 bilm蓹z?
>> Auditoriya: onlar b眉t眉n ba臒l谋 oldu臒unuz 脟眉nki, lakin siz kifay蓹t q蓹d蓹r harada bilmir蓹m
[I艧itilemez].
>> ANDI PENG: B蓹li, m蓹hz bel蓹 xat谋rlay谋ram ki, bir s谋ra par谋lt谋
biz idi ki idi 蓹m蓹li yadda艧 harada
M蓹n index d蓹y蓹r ist蓹yirdi alt谋, m蓹n yaln谋z index alt谋 dey蓹 bil蓹r
m蓹n蓹 d蓹y蓹r verir.
Diziler ayr谋l谋r, 莽眉nki ki, yadda艧 biti艧ik m蓹kan谋nda
Bir yerd蓹, halbuki ba臒l谋 siyah谋lar谋 c眉r
olan t蓹sad眉fi 蓹traf谋nda b眉t眉n interspersed v蓹 yaln谋z yol tapa bil蓹rsiniz
siz蓹 deyir bir g枚st蓹rici vasit蓹sil蓹 ki, n枚vb蓹ti node oldu臒u 眉nvan谋.
>> V蓹 bel蓹 bir n蓹tic蓹 kimi, yegan蓹 yolu bir ba臒l谋 siyah谋s谋n谋 axtar谋艧
x蓹tti axtar谋艧 edir.
M蓹n d蓹qiq bilmir蓹m, 莽眉nki Ba臒l谋 siyah谋s谋nda 12-ci d蓹y蓹ri,
M蓹n tam ax谋r var ki ba臒l谋 siyah谋 bir
ilk node r蓹hb蓹ri bir-, ikinci node, 眉莽眉nc眉 node,
M蓹n n蓹hay蓹t almaq q蓹d蓹r b眉t眉n yol a艧a臒谋 I ar谋yorum ki node oldu臒u 眉莽眉n.
V蓹 bu m蓹nada, axtar谋艧 bir ba臒l谋 siyah谋 h蓹mi艧蓹 n edir.
O, h蓹mi艧蓹 n var.
Bu x蓹tti vaxt h蓹mi艧蓹 var.
>> V蓹 bel蓹 code hans谋 bu h蓹yata, v蓹 bu
Sizin ild蓹n u艧aqlar 眉莽眉n bir az yeni u艧aqlar h蓹qiq蓹t蓹n haqq谋nda ya he莽 s枚hb蓹t yoxdur
nec蓹 g枚r眉ld眉 g枚st蓹ricil蓹rin蓹 g枚st蓹ricil蓹r vasit蓹sil蓹 axtar谋艧,
bel蓹 ki, biz vasit蓹sil蓹 g蓹zm蓹k laz谋md谋r bu, 莽ox yava艧-yava艧.
Bel蓹 ki bool axtar谋艧, sa臒, Biz ist蓹yirik t蓹s蓹vv眉r ed蓹k
adl谋 funksiyas谋 yaratmaq do臒ru qaytar谋r Axtar谋艧
Siz ba臒l谋 daxili bir d蓹y蓹r a艧kar etdikd蓹 siyah谋s谋, v蓹 ba艧qa yalan qaytar谋r.
Node star siyah谋s谋 Hal-haz谋rda yaln谋z pointer
Sizin ba臒l谋 siyah谋da ilk madd蓹.
int n sen d蓹y蓹ri var ki, siyah谋da 眉莽眉n axtar谋艧.
>> Bel蓹 ki, node ulduz pointer siyah谋s谋 b蓹rab蓹rdir.
Y蓹ni biz q蓹bulu edirik dem蓹kdir v蓹 bir pointer yaratmaq
siyah谋 daxilind蓹 ilk node.
M蓹niml蓹 h蓹r k蓹s?
Biz getm蓹k idi 蓹g蓹r, bel蓹 ki, Geri burada, m蓹n olard谋
g枚st蓹rir ki, bir g枚st蓹rici ba艧lat谋lm谋艧 ba艧 n蓹 ki, siyah谋s谋.
>> V蓹 sonra, burada bir d蓹f蓹 pointer b蓹rab蓹r null deyil is蓹,
bel蓹 ki, biz olan loop deyil traversing sonra olacaq
n蓹 莽眉nki bizim siyah谋s谋 istirah蓹t pointer null b蓹rab蓹rdir ne olur?
Biz yax艧谋d谋r bilirik ki,
>> Auditoriya: [i艧itilemez]
>> ANDI PENG: M蓹hz, bel蓹 ki, biz bilirik ki, Biz sa臒 siyah谋s谋 sonunda 蓹ld蓹 etdiyiniz?
Burada geri getm蓹k 蓹g蓹r, h蓹r bir node ba艧qa node i艧ar蓹 etm蓹k laz谋md谋r
v蓹 s v蓹 s Siz n蓹hay蓹t hit q蓹d蓹r
Sizin ba臒l谋 siyah谋 quyruq, olan bir g枚st蓹rici var ki, yaln谋z
he莽 bir daha h蓹r hans谋 dig蓹r qeyd etmir.
V蓹 bel蓹 ki, 蓹sas蓹n bilirik ki, Sizin siyah谋s谋 h蓹l蓹 orada deyil
pointer b蓹rab蓹r deyil q蓹d蓹r null null b蓹rab蓹rdir d蓹f蓹, 莽眉nki,
Siz he莽 bir daha stuff var ki, bilirik.
>> Bel蓹 ki, biz ist蓹yirik ki, loop deyil faktiki axtar谋艧 gedir.
V蓹 g枚st蓹rici g枚rm蓹k 蓹g蓹r orada arrow funksiyas谋 bel蓹?
Bel蓹 ki, pointer bal 蓹g蓹r n, 蓹g蓹r n b蓹rab蓹rdir N pointer,
o dem蓹kdir ki, 蓹g蓹r ki, sen pointer
H蓹r sonunda 眉莽眉n axtar谋艧 node d蓹y蓹ri h蓹qiq蓹t蓹n b蓹rab蓹rdir
sonra, arad谋臒谋n谋z 茝g蓹r do臒ru qay谋tmaq ist蓹yir蓹m.
Bel蓹 ki, 蓹sas蓹n, bir node da 蓹g蓹r ki, , arad谋臒谋n谋z d蓹y蓹ri var
Siz oldu臒unuz bilirik ki, u臒urla axtar谋艧 ed蓹.
>> 茝ks halda, qurmaq ist蓹yir蓹m n枚vb蓹ti node 眉莽眉n g枚st蓹rici.
Ki, burada x蓹tt n蓹 edir.
Pointer n枚vb蓹ti g枚st蓹rici b蓹rab蓹rdir.
Ki, i艧 nec蓹 g枚rm蓹k h蓹r k蓹s?
>> V蓹 mahiyy蓹tc蓹 siz olacaq yaln谋z siyah谋 tam ax谋r
Sizin g枚st蓹rici h蓹r zaman q蓹d蓹r s谋f谋rlama n蓹tic蓹d蓹 siyah谋s谋 sonunda edib.
V蓹 he莽 bir var bilirik ki, daha qov艧aqlar谋n谋n, vasit蓹sil蓹 axtar谋艧
v蓹 sonra yalan ola bil蓹r Bilirsiniz, 莽眉nki ki, yax艧谋, oh,
M蓹n axtar谋艧 ed蓹 oldu臒unuz 蓹g蓹r siyah谋s谋 tam vasit蓹sil蓹.
Bu misalda, m蓹n ist蓹yirdi 10 d蓹y蓹r axtarmaq 眉莽眉n,
M蓹n ba艧 ba艧lamaq v蓹 M蓹n b眉t眉n yol a艧a臒谋 axtar谋艧
v蓹 m蓹n n蓹hay蓹t, bu var olan null g枚st蓹rir ki, bir g枚st蓹rici,
M蓹n deyil, crap, 10 tahmin bilirik ki, Bu siyah谋 M蓹n bunu tapa bilm蓹di, 莽眉nki.
M蓹n siyah谋s谋 sonunda edir蓹m.
V蓹 bu halda Bildiyiniz M蓹n yalan qay谋tmaq 眉莽眉n gedir蓹m.
>> Ki, bir az islatmaq bildirin.
Bu olduqca olacaq Sizin pset 眉莽眉n 蓹h蓹miyy蓹tli.
Bunun m蓹ntiqi b蓹lk蓹 d蓹, 莽ox sad蓹dir syntactically yaln谋z h蓹yata ke莽irir.
Siz u艧aqlar etm蓹k ist蓹yir蓹m Siz anlamaq 蓹min olun.
Cool.
>> OK, bel蓹 ki, biz nec蓹 olacaq sa臒, qov艧aqlar谋n谋n daxil,
siyah谋s谋na daxil 莽眉nki xat谋rlay谋ram n蓹 faydalar谋 hans谋lard谋r
bir ba臒l谋 siyah谋 qar艧谋 olan saxlanmas谋 bax谋m谋ndan bir s谋ra?
>> Auditoriya: Bu dinamik, bel蓹 ki, asan to--
>> ANDI PENG: M蓹hz, bel蓹 ki, dinamik hans谋
Bu geni艧l蓹ndirilm蓹si v蓹 shrink o dem蓹kdir ki, istifad蓹莽i ehtiyaclar谋ndan as谋l谋 olaraq.
Bel蓹 ki, bu m蓹nada, biz laz谋m deyil laz谋ms谋z yadda艧 s蓹rf 莽眉nki
M蓹n ist蓹yir蓹m nec蓹 莽ox d蓹y蓹rl蓹ri bilmirsinizs蓹 ma臒aza, bu, m蓹nim 眉莽眉n m蓹nada etmir
bir s谋ra 莽眉nki yaratmaq M蓹n 10 d蓹y蓹rl蓹r saxlamaq ist蓹yirsinizs蓹,
M蓹n 1000 bir s谋ra, o yaratmaq bo艧a yadda艧 bir 莽ox ayr谋lm谋艧.
Biz bir ba臒l谋 istifad蓹 etm蓹k ist蓹yir蓹m Buna g枚r蓹 siyah谋s谋 dinamik etm蓹k
d蓹yi艧dirm蓹k v蓹 ya 枚l莽眉s眉 shrink.
>> V蓹 bel蓹 ki, durub edir bir az daha m眉r蓹kk蓹bdir.
Biz t蓹sad眉fi elementl蓹ri daxil ola bil蓹r-ci ild蓹n biz bir s谋ra olard谋 yol.
M蓹n bir element 蓹lav蓹 etm蓹k ist蓹yirsinizs蓹, yeddinci indeksi daxil,
M蓹n yaln谋z onu 蓹lav蓹 ed蓹 bil蓹rsiniz yeddinci indeksi daxil.
Bir ba臒l谋 siyah谋, bu deyil olduqca kimi asanl谋qla i艧,
v蓹 biz daxil etm蓹k ist蓹yirdi ba臒l谋 siyah谋s谋nda burada bir,
vizual g枚rm蓹k 莽ox asand谋r.
Biz yaln谋z orada 蓹lav蓹 etm蓹k ist蓹yir蓹m sa臒 siyah谋n谋n ba艧谋nda,
sa臒 ba艧 sonra.
>> Amma biz var olan yol redesign g枚st蓹ricil蓹rin蓹 bir az convoluted olunur
v蓹 ya, m蓹ntiqi, bu m蓹nada edir, lakin Siz var ki, 蓹min etm蓹k ist蓹yir蓹m
tamamil蓹 莽眉nki Siz ist蓹diyiniz son 艧ey
bir g枚st蓹rici redesign edir biz burada edirik yol.
Siz dereference 1 ba艧 g枚st蓹rici,
sonra q蓹fl蓹t蓹n The b眉t眉n Sizin ba臒l谋 siyah谋 qalan
Siz, h蓹qiq蓹t蓹n, 莽眉nki itirilmi艧 m眉v蓹qq蓹ti bir 艧ey yaratm谋艧d谋r.
Ki, 2 i艧ar蓹 edir.
茝g蓹r g枚st蓹rici, redesign 蓹g蓹r Sizin siyah谋s谋na qalan tamamil蓹 m蓹臒lub edir.
Bel蓹 ki, olmaq ist蓹yir蓹m Burada 莽ox, 莽ox diqq蓹tli
ilk t蓹yin etm蓹k Siz n蓹 olan g枚st蓹rici
yerd蓹 daxil ist蓹yir蓹m Ist蓹diyiniz v蓹 sonra
Sizin siyah谋s谋na qalan dereference bil蓹rsiniz.
>> Bel蓹 ki, bu yerd蓹 眉莽眉n m眉raci蓹t Siz daxil 莽al谋艧谋r谋q.
Siz daxil etm蓹k ist蓹yirsinizs蓹 r蓹hb蓹ri, burada cavab ist蓹yirsinizs蓹,
Siz daxil etm蓹k ist蓹yirsinizs蓹, end, yax艧谋, son m蓹n
tahmin yaln谋z ki he莽 bir g枚st蓹rici var, lakin siz
siz deyil ki, 蓹min etm蓹k ist蓹yir蓹m Sizin siyah谋s谋na qalan itirirl蓹r.
Siz h蓹mi艧蓹 蓹min etm蓹k ist蓹yir蓹m Yeni node i艧ar蓹 edir
n蓹 qar艧谋 siz daxil etm蓹k ist蓹yir蓹m,
v蓹 sonra siz z蓹ncirl蓹m蓹 蓹lav蓹 ed蓹 bil蓹rsiniz.
H蓹r k蓹s ayd谋n?
>> Bu olacaq real m蓹s蓹l蓹l蓹rd蓹n biri.
茝n b枚y眉k m蓹s蓹l蓹l蓹rd蓹n biri Siz pset olacaq
yaratmaq 眉莽眉n c蓹hd olacaq ki, bir ba臒l谋 siyah谋s谋 v蓹 insert 艧eyi
lakin sonra yaln谋z itirm蓹k Sizin ba臒l谋 siyah谋 istirah蓹t.
V蓹 kimi olacaq, m蓹n Bu ba艧 niy蓹 bilmir蓹m?
V蓹 onun vasit蓹sil蓹 getm蓹k 眉莽眉n bir a臒r谋 var v蓹 g枚st蓹ricil蓹r b眉t眉n axtar谋艧.
>> V蓹 m蓹n bu pset sizi t蓹min, bu qov艧aqlar谋n谋n yaz谋l谋 v蓹 r蓹sm
莽ox, 莽ox faydal谋 olacaq.
Bel蓹 ki, tamamil蓹 takip ed蓹 bil蓹rsiniz b眉t眉n g枚st蓹ricil蓹rin蓹 harada,
n蓹 yanl谋艧 gedir b眉t眉n qov艧aqlar谋n谋n oldu臒u,
Siz daxil olmaq 眉莽眉n n蓹 etm蓹k laz谋md谋r v蓹 ya daxil v蓹 ya silm蓹k v蓹 ya onlara h蓹r hans谋 bir.
Ki, yax艧谋 h蓹r k蓹s?
Cool.
>> Biz kodu baxmaq ist蓹yirdi Bel蓹 ki?
Oh, m蓹n bilmir蓹m, 蓹g蓹r biz bel蓹 ki, the-- OK g枚r蓹 bil蓹rsiniz
眉st bu bir funksiyas谋 var Biz ist蓹yirik ad谋na insert
ba臒l谋 siyah谋s谋na daxil int n daxil etm蓹k 眉莽眉n.
Biz bu vasit蓹sil蓹 g蓹zm蓹k olacaq.
Bu kodu bir 莽ox yeni sintaksis bir 莽ox var.
Biz OK olacaq.
>> 脺st zaman q蓹d蓹r bel蓹 biz bir 艧ey yaratmaq ist蓹yirik
biz n蓹 etm蓹k laz谋md谋r, x眉susil蓹 d蓹 蓹g蓹r Bu y谋臒谋n谋 saxlan谋l谋r deyil ist蓹yirik
lakin y谋臒谋n?
Biz h眉ququ, malloc getm蓹k?
Bel蓹likl蓹, biz bir pointer yaratmaq olacaq.
Node, pointer, yeni b蓹rab蓹r bir node 枚l莽眉s眉 malloc
biz ist蓹yirik 莽眉nki node yarad谋lacaq.
Biz m蓹bl蓹臒i ist蓹yir蓹m bir node tutur yadda艧
眉莽眉n ayr谋lm谋艧 olunacaq yeni node yarad谋lmas谋.
>> V蓹 sonra biz yoxlamaq olacaq Yeni b蓹rab蓹r null b蓹rab蓹rdir oldu.
Biz n蓹 dedi saxla?
Malloc n蓹 olursa olsun, siz, Siz h蓹mi艧蓹 n蓹 etm蓹liyik?
Siz h蓹mi艧蓹 g枚rm蓹k 眉莽眉n yoxlamaq laz谋md谋r v蓹 ya ki, null edir.
>> M蓹s蓹l蓹n, 蓹g蓹r 蓹m蓹liyyat Sistem tamamil蓹 dolu idi
Siz he莽 bir daha 莽ox yadda艧 olsa b眉t眉n v蓹 malloc 眉莽眉n c蓹hd edin,
Bu sizin 眉莽眉n null qay谋tmaq ist蓹yir蓹m.
V蓹 bel蓹 ki, istifad蓹 etm蓹k 眉莽眉n c蓹hd 蓹g蓹r Bu null i艧ar蓹 zaman,
ed蓹 fikrind蓹 deyilik ki, m蓹lumat 蓹ld蓹 etm蓹k.
V蓹 bel蓹 ki, biz etm蓹k ist蓹yirdi zaman mallocing 蓹min,
Siz h蓹mi艧蓹 g枚rmek 眉莽眉n kontrol edirik Siz蓹 veril蓹n yadda艧 null edir.
Bu deyil, onda biz h蓹r蓹k蓹t ed蓹 bil蓹r bizim kodu istirah蓹t il蓹.
>> Bel蓹 ki, biz olacaq yeni node ba艧lamaq.
Biz yeni n n b蓹rab蓹rdir n蓹 olacaq.
V蓹 sonra biz n蓹 olacaq Yeni yeni g枚st蓹rici m眉蓹yy蓹n
null indi biz deyil, 莽眉nki Bu qeyd etm蓹k 眉莽眉n bir 艧ey ist蓹yir蓹m.
Biz he莽 bir fikrim burada var Bu, sizi olacaq
sonra biz ist蓹yirsinizs蓹 r蓹hb蓹ri onu daxil,
sonra biz redesign bil蓹r ba艧 g枚st蓹rici.
H蓹r k蓹s m蓹ntiq riay蓹t etmir harada ki, ba艧 verir?
>> Biz yap媒yorsun b眉t眉n yeni yarad谋r node, null g枚st蓹rici yarad谋lmas谋,
v蓹 sonra reassigning bu ba艧 眉莽眉n biz 蓹g蓹r
Biz r蓹hb蓹ri onu 蓹lav蓹 etm蓹k ist蓹yir蓹m bilirik.
V蓹 sonra ba艧谋n谋 gedir yeni node do臒ru qeyd.
Ki, OK h蓹r k蓹s?
>> Bel蓹 ki, iki add谋m prosesi var.
Siz ilk t蓹yin etm蓹k var h蓹r hans谋 yarad谋lmas谋 edirik.
Ki, g枚st蓹rici m眉蓹yy蓹n aray谋艧, v蓹 sonra
bil蓹rsiniz dereference c眉r ilk pointer
v蓹 yeni node do臒ru qeyd.
Siz daxil ist蓹diyiniz yerd蓹, ki, m蓹ntiq do臒ru ke莽ir蓹c蓹k.
>> Bu t蓹yin kimi n枚v眉 var m眉v蓹qq蓹ti d蓹yi艧蓹nl蓹rin.
Unutmay谋n, siz var 蓹min etm蓹k ki, siz
Siz d蓹yi艧dirm蓹 edirsinizs蓹 izini itirm蓹k yoxdur.
Siz var ki, 蓹min etm蓹k ist蓹yir蓹m c眉r saxlay谋r m眉v蓹qq蓹ti d蓹yi艧蓹n
oldu臒u 艧ey track ki, saxlan谋l谋r, siz
茝lb蓹tt蓹 h蓹r hans谋 bir d蓹y蓹ri itirm蓹k yoxdur bunun il蓹 蓹traf谋nda messing kimi.
>> OK, bel蓹 ki, kodu burada olacaq.
Siz u艧aqlar b枚lm蓹 sonra bir g枚z at谋n.
Bu olacaq.
>> Bel蓹 ki, n蓹 nec蓹 tapmaq biz ist蓹yirdi bu f蓹rqli
orta v蓹 ya sonunda daxil etm蓹k olar?
H蓹r k蓹s n蓹 bir fikir yoxdur m蓹ntiqi istinad kimi pseudocode
biz ist蓹yirdi al谋r谋q ki, ortas谋nda daxil?
Bel蓹 ki, 蓹g蓹r biz onu 蓹lav蓹 etm蓹k ist蓹di r蓹hb蓹ri, biz b眉t眉n yeni node yaratmaq edir.
Biz ki, g枚st蓹rici m眉蓹yy蓹n n蓹 ba艧 yeni node,
v蓹 sonra ba艧 m眉蓹yy蓹n yeni node, sa臒?
Biz ortas谋nda daxil etm蓹k ist蓹yirdi siyah谋s谋, biz n蓹 olard谋?
>> Auditoriya: Bu h蓹l蓹 ki ox艧ar proses
bir g枚st蓹rici t蓹yin kimi sonra ki, pointer t蓹yin
Amma biz orada tapmaq laz谋md谋r.
>> ANDI PENG: M蓹hz, m蓹hz bel蓹 Siz istisna olmaqla, eyni proses
d蓹qiq tapmaq 眉莽眉n var Yeni pointer getm蓹k ist蓹yir蓹m,
M蓹n daxil etm蓹k ist蓹yirsinizs蓹, bel蓹 ki, OK list-- ba臒l谋 orta,
ki bizim ba臒l谋 siyah谋 var deyirl蓹r.
Biz burada 蓹lav蓹 etm蓹k ist蓹yirsinizs蓹, biz yeni node yaratmaq olacaq.
Biz malloc olacaq.
Biz yeni node yaratmaq olacaq.
Biz t蓹yin etm蓹k olacaq Burada bu node g枚st蓹rici.
>> Amma problem f蓹rql蓹nir r蓹hb蓹ri oldu臒u yerd蓹n
biz m蓹hz bilirdi ki, burada r蓹hb蓹ridir.
Bu do臒ru, ilk do臒ru idi?
Lakin burada biz takip var harada biz bunu daxil daxil edirik.
Biz daxil varsa bizim burada node, biz var
蓹min olun ki, bu node 蓹vv蓹lki
g枚st蓹rici reassigns biridir.
Bel蓹likl蓹 c眉r var iki 艧eyi takip.
Siz bu track saxlamaq node haz谋rda daxil daxil edilir.
Siz h蓹m莽inin takip var bax谋r谋q 蓹vv蓹lki node
var idi.
Ki, yax艧谋 h蓹r k蓹s?
OLDU.
>> Nec蓹 sonunda daxil haqq谋nda?
M蓹n ist蓹yirdim 蓹g蓹r m蓹n burada 蓹lav蓹 etm蓹k ist蓹yirdi siyah谋s谋 sonuna bir yeni node 蓹lav蓹 etm蓹k 眉莽眉n,
M蓹n bunu haqq谋nda nec蓹 getm蓹k bil蓹r?
Auditoriya: Bel蓹 haz谋rda, son bir-n谋n null i艧ar蓹 etdi.
ANDI PENG: B蓹li.
M蓹hz, bel蓹 ki, bu bir Hal-haz谋rda bilm蓹k qeyd olunur,
v蓹 m蓹n bu m蓹nada, bu, tapmaq siyah谋s谋 sonuna 蓹lav蓹 etm蓹k 眉莽眉n 莽ox asand谋r.
Siz b眉t眉n m眉蓹yy蓹n edilir null v蓹 sonra bumu b蓹rab蓹r.
Orada 莽ox asan.
脟ox sad蓹.
>> 脟ox ox艧ar ba艧, lakin m蓹ntiqi
add谋mlar ki, 蓹min etm蓹k ist蓹yir蓹m 茝g蓹r bu h蓹r hans谋 etdiyini do臒ru almaq
Siz birlikd蓹 a艧a臒谋dak谋 edirik.
Bu ortada, 莽ox asand谋r Sizin kodu, yakalanm谋艧 almaq
oh, m蓹n 莽ox g枚st蓹ricil蓹rin蓹 var.
M蓹n harada bilmir蓹m bir 艧ey i艧ar蓹 edir.
M蓹n h蓹tta Ben hans谋 node bilmir蓹m.
N蓹 ba艧 verir?
>> Bir d蓹rin n蓹f蓹s almaq, sakitl蓹艧m蓹k, Relax.
Sizin ba臒l谋 siyah谋s谋n谋 c蓹lb edir.
Des蓹niz, m蓹n d蓹qiq bilm蓹k M蓹n bu daxil etm蓹k laz谋md谋r
v蓹 m蓹nim redesign d蓹qiq nec蓹 g枚st蓹ricil蓹r, 莽ox, daha asan 艧蓹kil
yazaraq 莽ox asan deyil Sizin kodu hatalar谋 itirilmi艧 almaq.
Ki, OK h蓹r k蓹s?
OLDU.
>> Bel蓹 ki, biz bir anlay谋艧 tapmaq h蓹qiq蓹t蓹n, indi 蓹vv蓹l haqq谋nda dan谋艧d谋
v蓹 y蓹qin ki, siz tahmin 莽ox yet-- qar艧谋la艧a deyil
Bu inki艧af etmi艧 konsepsiyas谋 n枚v眉 var biz, h蓹qiq蓹t蓹n, m蓹lumatlar var ki,
strukturu ikiqat ba臒l谋 siyah谋 莽a臒谋r谋b.
U艧aqlar G枚rd眉y眉n眉z kimi, biz yap媒yorsun b眉t眉n yarad谋r
faktiki d蓹y蓹ri, 蓹lav蓹 Bizim qov艧aqlar谋n谋n h蓹r pointer
ki, 蓹vv蓹lki node g枚st蓹rir.
Bel蓹 ki, yaln谋z bizim var qov艧aqlar谋n谋n n枚vb蓹ti bir qeyd.
Onlar h蓹m莽inin 蓹vv蓹lki i艧ar蓹 edir.
陌ndi bu iki ignore gedir蓹m.
>> Bel蓹 ki, sonra bir z蓹ncir var ki, h蓹m yollar谋 h蓹r蓹k蓹t ed蓹 bil蓹r,
v蓹 sonra bir az daha asan var m蓹ntiqi boyunca riay蓹t edin.
Burada kimi, yerin蓹 oh, track saxlan谋lmas谋, m蓹n
bu node ki, bilm蓹k laz谋md谋r M蓹n redesign 眉莽眉n bir,
M蓹n burada getm蓹k v蓹 bil蓹rsiniz yaln谋z 蓹vv蓹lki 莽蓹kin.
Sonra m蓹n d蓹qiq bilir蓹m ki, sonra
ax谋r yoxdur ba臒l谋 siyah谋 b眉t枚vl眉kd蓹.
Bu bir az daha asand谋r.
>> Lakin bel蓹 kimi, ikiqat var g枚st蓹ricil蓹r m蓹bl蓹臒i,
yadda艧 ikiqat m蓹bl蓹臒i.
Bu takip g枚st蓹ricil蓹r bir 莽ox var.
Bu bir az daha m眉r蓹kk蓹b, lakin bu istifad蓹莽i dostu olaraq bir az daha
Siz yerin蓹 yetirm蓹k 眉莽眉n 莽al谋艧谋r谋q n蓹.
>> Bel蓹 ki, m蓹lumatlar谋n bu tip strukturu tamamil蓹, m枚vcud
v蓹 strukturu 莽ox, 莽ox deyil Siz qar艧谋la艧d谋qda b眉t眉n ba艧qa sad蓹,
蓹v蓹zin蓹 n枚vb蓹ti yaln谋z bir g枚st蓹rici, Siz h蓹m莽inin 蓹vv蓹lki bir g枚st蓹rici var.
B眉t眉n f蓹rq idi.
Ki, yax艧谋 h蓹r k蓹s?
Cool.
>> B眉t眉n h眉quqlar, bel蓹 ki, indi m蓹n h蓹qiq蓹t蓹n, y蓹qin ki, s蓹rf etm蓹k
15 20 d蓹qiq蓹 v蓹 ya toplu kimi b枚lm蓹sind蓹 vaxt istirah蓹t
hash masalar haqq谋nda s枚hb蓹t.
Nec蓹 u艧aqlar 莽ox pset5 spec oxumaq?
B眉t眉n h眉quqlar, yax艧谋.
Bu ad蓹t蓹n 50% daha y眉ks蓹k var.
Yax艧谋d谋r.
>> Sizl蓹rin g枚r蓹c蓹ksiniz kimi, bel蓹 ki, Siz pset5 problem ist蓹yirik
bir l眉臒蓹t h蓹yata olacaq Siz 140,000 s枚zl蓹ri 眉z蓹rind蓹 y眉k harada
biz yaz谋m 莽ek siz蓹 verir ki, b眉t眉n m蓹tni qar艧谋 bu.
Biz siz蓹 t蓹sad眉fi ver蓹c蓹yik 蓹d蓹biyyat 蓹d蓹d.
Biz siz蓹 Odyssey ver蓹c蓹yik.
Biz siz蓹 陌liada ver蓹c蓹yik.
Biz siz蓹 Austin Powers ver蓹c蓹yik.
>> V蓹 problem 莽ek yaz谋m olacaq
b眉t眉n h蓹r bir s枚z o l眉臒蓹tl蓹rin
mahiyy蓹tc蓹 bizim spell checker il蓹.
V蓹 bel蓹 bir ne莽蓹 hiss蓹l蓹ri var Bu pset yarad谋lmas谋,
ilk olmaq ist蓹yir蓹m h蓹qiq蓹t蓹n y眉klemek 眉莽眉n ed蓹
b眉t眉n s枚zl蓹r l眉臒蓹t v蓹 sonra
etm蓹k ist蓹yir蓹m onlar谋n ham谋s谋 yoxlamaq sehr.
V蓹 bel蓹 kimi, t蓹l蓹b olacaq bu s眉r蓹tli ed蓹 bil蓹r ki, bir data strukturu
v蓹 s蓹m蓹r蓹li v蓹 dinamik.
>> Bel蓹 ki, asan g眉man Bunu etm蓹k 眉莽眉n yol, siz蓹
y蓹qin ki, sa臒, bir s谋ra yaratmaq olar?
saxlama en asan yol deyil 140,000 s枚zl蓹r bir s谋ra yarada
v蓹 yaln谋z orada b眉t眉n yer v蓹 sonra ikili axtar谋艧 onlar谋 ax谋r
v蓹 ya Marka v蓹 ya deyilik sorry ki, 莽e艧idl蓹nm蓹si edir.
Siz onlar谋 sort v蓹 sonra onlar谋 ax谋r bil蓹r ikili axtar谋艧 v蓹 ya sad蓹c蓹 x蓹tti axtar谋艧
v蓹 yaln谋z son s枚zl蓹ri, lakin yadda艧 b枚y眉k bir m蓹bl蓹臒i al谋r
v蓹 bu, 莽ox s蓹m蓹r蓹li deyil.
>> V蓹 bel蓹 ki, biz ba艧lamaq olacaq edilm蓹si yollar谋 haqq谋nda s枚hb蓹t
Bizim 莽al谋艧an zaman daha s蓹m蓹r蓹li.
V蓹 bizim m蓹qs蓹dimiz almaq 眉莽眉n daimi vaxt harada
dem蓹k olar ki, seriallar谋n, kimi Siz ani giri艧i var.
M蓹n bir 艧ey 眉莽眉n axtar谋艧 ist蓹yirdi, M蓹n yaln谋z etm蓹k ist蓹yir蓹m
boom, d蓹qiq tapmaq v蓹 onu 莽谋xarmaq.
V蓹 bel蓹 bir qurulu艧 olan biz 莽ox yax谋n olmaq laz谋md谋r
daimi daxil etm蓹k 眉莽眉n vaxt bu m眉q蓹dd蓹s grail
davaml谋 proqramla艧d谋rma vaxt hash table adlan谋r.
V蓹 bel蓹 David 蓹vv蓹ll蓹r qeyd [I艧itilemez] m眉hazir蓹 bir az,
lakin biz, h蓹qiq蓹t蓹n olacaq d蓹rin bu h蓹ft蓹 dive
ba臒l谋 olan bir par莽a nec蓹 bir hash table i艧l蓹yir.
>> Yol Bel蓹 ki, bir hash masa i艧l蓹ri, m蓹s蓹l蓹n,
M蓹n s枚zl蓹ri bir d蓹st蓹 saxlamaq ist蓹yirdi, bir 陌ngilis dili s枚zl蓹r d蓹st蓹,
M蓹n n蓹z蓹ri qoymaq bil蓹r banan, alma, kivi, mango, c眉t,
v蓹 b眉t眉n yaln谋z bir s谋ra qovun.
Onlar b眉t眉n uy臒un bil蓹r tapmaq bil蓹r.
Bu bir a臒r谋 n枚v眉 olar谋q v蓹 莽谋x谋艧 vasit蓹sil蓹 axtar谋艧,
lakin bunu asan bir yoldur biz bir qurulu艧, h蓹qiq蓹t蓹n, yaratmaq bil蓹r ki,
biz hash bir hash table 莽a臒谋r谋b.
Biz vasit蓹sil蓹 d眉ym蓹l蓹ri b眉t眉n run bir hash funksiyas谋, bir t蓹nlik,
ki, onlar谋 b眉t眉n 莽evrilir bir d蓹y蓹r bir n枚v
sonra biz 眉z蓹rind蓹 bil蓹rsiniz ki, ba臒l谋 siyah谋 mahiyy蓹tc蓹 bir s谋ra.
>> V蓹 bel蓹 ki, burada biz, ist蓹yirdi 陌ngilis dili s枚zl蓹r saxlamaq 眉莽眉n,
biz potensial yaln谋z bil蓹r, m蓹n deyil , bilirik b眉t眉n ilk h蓹rfl蓹rini 莽evirm蓹k
bir s谋ra bir n枚v.
Bel蓹 ki, m蓹s蓹l蓹n, 蓹g蓹r m蓹n ist蓹dim A apple-- sinonimi olmaq
v蓹 ya 0 indeksi il蓹, v蓹 B, 1 sinonimi olmaq
biz 26 entries ola bil蓹r yaln谋z bil蓹rsiniz
h蓹rfl蓹rinin b眉t眉n biz il蓹 ba艧lamaq laz谋md谋r 蓹lifba.
V蓹 sonra biz ola bil蓹r 0 index da alma.
Biz index da banan ola bil蓹r 1, 2 index da qovun,
v蓹 s v蓹 s.
V蓹 bel蓹likl蓹 m蓹n axtarmaq ist蓹yirdi M蓹nim hash masa v蓹 giri艧 alma,
M蓹n alma il蓹 ba艧lay谋r bilirik A, m蓹n d蓹qiq bilir蓹m
Bu v蓹 hash laz谋md谋r ki, index 0, 莽眉nki masa
funksiyas谋 蓹vv蓹l t蓹yin.
>> Bilmir蓹m Bel蓹 ki, biz var bir istifad蓹莽i proqram harada
Siz ittiham olacaq 枚zba艧谋na deyil arbitrarily--,
fikirli 眉莽眉n 莽al谋艧谋r谋q il蓹 yax艧谋 t蓹nlikl蓹r hesab
yaymaq etm蓹k Sizin d蓹y蓹rl蓹rin b眉t眉n
bir 艧蓹kild蓹 onlar asanl谋qla 蓹ld蓹 ed蓹 bil蓹rsiniz sonra il蓹 bir t蓹nlik kimi
Siz ki, 枚z眉n眉z, bilirik.
M蓹n getm蓹k ist蓹yirdi m蓹nada bel蓹 mango, m蓹n oh, bu m il蓹 ba艧lay谋r, bilirik.
12 indeksi olmal谋d谋r.
M蓹n bir 艧ey vasit蓹sil蓹 axtar谋艧 yoxdur.
M蓹n yaln谋z getm蓹k bil蓹r exactly-- bilir蓹m v蓹 12 index ki 莽蓹kin.
>> Nec蓹 bir h蓹r k蓹s ayd谋n hash masa funksiyas谋 i艧l蓹yir?
Bu, yaln谋z daha m眉r蓹kk蓹b serial谋n n枚v眉 var.
Ki, b眉t眉n var.
OLDU.
>> Bel蓹 ki, biz daxil tapmaq Bu m蓹s蓹l蓹 n蓹
Bir ne莽蓹 艧ey varsa olur ki, eyni index verir?
Bel蓹 ki, b眉t眉n, bu, bizim funksiyas谋 dem蓹k ki ilk m蓹ktub almaq idi
v蓹 莽evrilir 0 index 25 vasit蓹sil蓹 m眉vafiq.
Ki, 蓹g蓹r tamamil蓹 g枚z蓹l var yaln谋z h蓹r biri var.
Amma ikinci ba艧lamaq daha 莽ox olan, sen
toqqu艧ma adlan谋r n蓹 眉莽眉n gedir.
>> M蓹n daxil etm蓹k 眉莽眉n c蓹hd 蓹g蓹r bir hash daxil basd谋rmaq So art谋q bu banan var masa
n蓹 zaman ba艧 ver蓹c蓹k ki, daxil etm蓹k 眉莽眉n c蓹hd?
Pis 艧eyl蓹r 莽眉nki banana art谋q kataloq daxilind蓹 m枚vcud
Siz onu saxlamaq 眉莽眉n ist蓹yir蓹m.
Berry c眉r m蓹n n蓹 etm蓹liy蓹m, ah, kimi?
M蓹n getm蓹k harada bilmir蓹m.
M蓹n bu nec蓹 h蓹ll ed蓹 bil蓹r蓹m?
>> V蓹 bel蓹 ki, u艧aqlar olacaq c眉r Biz bu 莽蓹tin 艧ey g枚rm蓹k
biz c眉r h蓹qiq蓹t蓹n bil蓹rsiniz Bizim seriallarda ba臒l谋d谋r siyah谋s谋n谋 yaratmaq.
V蓹 bel蓹 asan yol Bu bar蓹d蓹 d眉艧眉nm蓹k,
b眉t眉n hash table bir ba臒l谋 siyah谋lar谋 array.
Bel蓹 ki, o m蓹nada ki, var g枚st蓹ricil蓹r bu g枚z蓹l array,
v蓹 sonra h蓹r pointer da ki, d蓹y蓹ri ki indeksi,
h蓹qiq蓹t蓹n ba艧qa 艧eyl蓹r qeyd ed蓹 bil蓹rsiniz.
V蓹 bel蓹 ki, b眉t眉n bu ayr谋 b枚y眉k bir serial谋n off g蓹l蓹n z蓹ncir.
>> V蓹 bel蓹 ki, burada m蓹n 蓹g蓹r gil蓹meyv蓹 蓹lav蓹 etm蓹k ist蓹di,
M蓹n OK, m蓹n daxil gedir蓹m, bilirik m蓹nim hash funksiyas谋 vasit蓹sil蓹.
M蓹n indeksi il蓹 ba艧a gedir蓹m 1 v蓹 sonra m蓹n malik olmaq gidiyorum
Bu yaln谋z ki莽ik bir alt n蓹h蓹ng 140,000-s枚z l眉臒蓹t.
V蓹 sonra m蓹n yaln谋z baxmaq olar ki, 1/26 vasit蓹sil蓹.
>> V蓹 sonra m蓹n yaln谋z 蓹lav蓹 ed蓹 bil蓹rsiniz 蓹vv蓹l v蓹 ya banan sonra da berry
bu halda?
Sonra, sa臒?
V蓹 bel蓹 ki, ist蓹diyiniz olacaq banan sonra bu node daxil,
v蓹 siz daxil olacaq ki ba臒l谋 siyah谋 quyruq.
M蓹n geri getm蓹k 眉莽眉n gedir蓹m bu 蓹vv蓹lki slayd,
Bel蓹 ki, u艧aqlar nec蓹 g枚r蓹 bil蓹rsiniz hash funksiyas谋 i艧l蓹yir.
>> Bel蓹 ki, hash funksiyas谋 bu t蓹nlik Siz daxil c眉r yay谋nl谋yorsan谋z ki,
almaq 眉莽眉n n蓹 index vasit蓹sil蓹 Siz do臒ru t蓹yin etm蓹k ist蓹yir蓹m.
Bel蓹 ki, bu n眉mun蓹, b眉t眉n ist蓹dik etm蓹k 眉莽眉n, ilk m蓹ktub almaq idi
biz sonra bir index 莽evrilir Bizim hash funksiyas谋 ki, bil蓹rsiniz.
Biz burada yap媒yorsun b眉t眉n biz ist蓹yirik ilk m蓹ktub konvertasiya.
Bel蓹 ki, keykey [0], yaln谋z ilk m蓹ktub n蓹 string biz qar艧谋la艧d谋qda,
biz ke莽蓹n edirik.
Biz yuxar谋 ki, konvertasiya v蓹 edirik biz b枚y眉k A subtracting edirik
Bunu ki, b眉t眉n Biz蓹 bir s谋ra verir
olan biz d蓹y蓹rl蓹r 眉z蓹rind蓹 hash bil蓹r.
>> V蓹 sonra biz olacaq hash modulus SIZE qay谋tmaq.
脟ox, 莽ox ehtiyatl谋 olun n蓹z蓹ri, burada, 莽眉nki
Sizin hash d蓹y蓹ri sonsuz ola bil蓹r.
Bu, yaln谋z v蓹 v蓹 davam ed蓹 bil蓹r.
Bu, h蓹qiq蓹t蓹n bir ola bil蓹r h蓹qiq蓹t蓹n b枚y眉k d蓹y蓹ri,
ancaq hash masa 莽眉nki yaratd谋臒谋n谋z yaln谋z 26 g枚st蓹ricil蓹ri var,
Sizi 蓹min etm蓹k ist蓹yir蓹m sizin modulusing ki,
Bu eyni run-- deyil Sizin S谋raya kimi 艧ey
bel蓹 ki, 莽谋xmaq deyil ki, Sizin hash funksiyas谋 alt.
>> Siz 蓹traf谋nda geri paketi ist蓹yir蓹m [I艧itilemez] zaman eyni 艧蓹kild蓹
, bir 莽ox kimi idi 莽ox b枚y眉k m蓹ktub, siz
ki ist蓹m蓹di yaln谋z son 莽谋xmaq.
Burada eyni 艧ey, 蓹min etm蓹k ist蓹yir蓹m Bu qucaqlayaraq son 莽谋xmaq deyil
蓹traf谋nda masa 眉st.
Bel蓹 ki, bu, yaln谋z bir 莽ox sad蓹 hash funksiyas谋.
Etdi ki, b眉t眉n almaq birinci oldu n蓹 bizim giri艧 m蓹ktub idi
v蓹 bir siyah谋s谋n谋 莽evrilir ki, biz hash masa qoymaq bil蓹r.
>> B蓹li, v蓹 m蓹n 蓹vv蓹l dediyim kimi biz toqqu艧ma h蓹ll yolu
Bizim hash masalar olan, biz chaining, n蓹 z蓹ng.
Bir ne莽蓹 蓹lav蓹 etm蓹k 眉莽眉n c蓹hd edin, bel蓹 ki, eyni 艧ey il蓹 ba艧lamaq s枚zl蓹r,
Bir hash d蓹y蓹ri olacaq.
Avokado v蓹 alma, siz var 蓹g蓹r Bizim hash funksiyas谋 vasit蓹sil蓹 run,
verm蓹k 眉莽眉n gedir eyni sayda, 0 say谋.
V蓹 bel蓹 艧蓹kild蓹 ki, h蓹ll Biz, h蓹qiq蓹t蓹n, n枚v onlara ke莽id ed蓹 bil蓹r ki,
birlikd蓹 ba臒l谋 siyah谋lar谋 vasit蓹sil蓹.
>> V蓹 bu m蓹nada, Sizl蓹rin c眉r g枚r蓹 bil蓹rsiniz
nec蓹 data strukturlar谋 ki, biz 蓹vv蓹l q蓹bulu oldu臒unuz
bir 眉z眉m ba臒l谋 siyah谋 n枚v kimi birin蓹 araya g蓹l蓹 bil蓹r.
V蓹 sonra uzaq yarada daha s蓹m蓹r蓹li data strukturlar谋
ki, b枚y眉k miqdarda idar蓹 ed蓹 bil蓹rsiniz data, dinamik olaraq boyutland谋r
Sizin ehtiyaclar谋.
H蓹r k蓹s ayd谋n?
Ayd谋n h蓹r k蓹s c眉r burada n蓹 var?
>> M蓹n insert-- ist蓹yirdi 蓹g蓹r n蓹 Bilmir蓹m il蓹 ba艧lay谋r meyv蓹,
Gil蓹meyv蓹 ba艧qa B, banan.
>> Auditoriya: Blackberry.
>> ANDI PENG: Blackberry, blackberry.
Harada blackberry burada getm蓹k edir?
Yax艧谋, biz, h蓹qiq蓹t蓹n, s谋ralan谋r deyil Bu h蓹l蓹, lakin n蓹z蓹ri
bu etm蓹k ist蓹yirdi 蓹g蓹r 蓹lifba s谋ras谋 il蓹,
harada getm蓹k BlackBerry laz谋md谋r?
>> Auditoriya: [i艧itilemez]
>> ANDI PENG: M蓹hz, burada sonra, sa臒?
Amma bu 莽ox 莽蓹tin ild蓹n reorder-- M蓹n bu u艧aqlar var dan谋艧arlar.
Siz u艧aqlar tamamil蓹 bil蓹rsiniz Ist蓹diyiniz h蓹r hans谋 h蓹yata ke莽irir.
daha s蓹m蓹r蓹li yol b蓹lk蓹 bunu
Sizin ba臒l谋 d眉zm蓹k olard谋 蓹lifba s谋ras谋 daxil siyah谋s谋,
v蓹 bel蓹 oldu臒unuzda 艧eyi daxil ist蓹diyiniz
onlara 蓹lav蓹 etm蓹k 眉莽眉n 蓹min olmaq 茝lifba s谋ras谋 daxil
bel蓹 ki, sonra etdiyiniz zaman onlar谋 axtarmaq 眉莽眉n 莽al谋艧谋r,
h蓹r 艧ey ax谋r yoxdur.
Siz d蓹qiq bilm蓹k Bu v蓹 bu asand谋r.
>> Amma c眉r varsa 艧eyi, t蓹sad眉fi interspersed
Siz h蓹l蓹 olacaq zaten ax谋r.
V蓹 m蓹n ist蓹yirdi yaln谋z blackberry burada daxil
v蓹 m蓹n 眉莽眉n axtar谋艧 ist蓹yirdi Bu, m蓹n oh, bilir蓹m, b枚y眉rtk蓹n
1 g枚st蓹ricisi il蓹 ba艧lamaq, m蓹n olmal谋d谋r d蓹rhal yaln谋z 1-axtar谋艧 bilirik.
V蓹 sonra m蓹n n枚v ed蓹 bil蓹rsiniz ba臒l谋 siyah谋 ax谋r
BlackBerry almaq q蓹d蓹r, v蓹 yeah then--?
>> Auditoriya: create-- 莽al谋艧d谋臒谋n谋z 茝g蓹r Bu, 莽ox sad蓹 hash kimi h蓹rhalda
funksiyas谋.
V蓹 biz bunu ist蓹yirdi kimi 莽ox qat,
OK, biz daxil ay谋rmaq ist蓹yir蓹m b眉t眉n 蓹lifba m蓹ktublar kimi
v蓹 sonra bir set kimi ki, daxilind蓹 蓹lifba m蓹ktublar,
biz bir hash kimi qoyurlar bir hash masa 蓹rzind蓹 masa,
v蓹 ya bir funksiyas谋 蓹rzind蓹 funksiyas谋 kimi?
V蓹 ya that-- deyil
>> ANDI PENG: Sizin hash So Sizin hash masa funksiyas谋
siz ist蓹diyiniz kimi b枚y眉k ola bil蓹r.
Bel蓹 ki, bu m蓹nada, m蓹n d眉艧眉nd眉m bu, 莽ox, 莽ox asan idi
M蓹nim 眉莽眉n sad蓹 yaln谋z sort based ilk s枚z眉 m蓹ktublar.
V蓹 bel蓹 ki, yaln谋z 26 variantlar谋 var.
M蓹n yaln谋z 26 variantlar谋 蓹ld蓹 ed蓹 bil蓹rsiniz 25 0, 莽眉nki onlar yaln谋z bil蓹rsiniz
A Z. ba艧lamaq Amma ist蓹yirdi , b蓹lk蓹 d蓹, daha m眉r蓹kk蓹bliyi 蓹lav蓹 etm蓹k
v蓹 ya daha s眉r蓹tli vaxt run hash table, tamamil蓹
艧eyi b眉t眉n n枚v ed蓹 bil蓹rsiniz.
Siz 枚z ed蓹 bil蓹rsiniz verir t蓹nlik
daha distribution sizin s枚zl蓹r, sonra axtar谋艧 zaman
daha s眉r蓹tli olacaq.
>> Bu tamamil蓹 u艧aqlar var nec蓹 ki h蓹yata ke莽irm蓹k ist蓹yirik.
Yaln谋z buketler kimi d眉艧眉n眉n.
M蓹n ist蓹yirdi 26 buketler, m蓹n gedir蓹m
o buketler daxil 艧eyi d眉zm蓹k 眉莽眉n.
Amma bir d蓹st蓹 眉莽眉n gedir蓹m h蓹r bucket m蓹hsullar谋n谋n,
Siz etm蓹k ist蓹yirsinizs蓹, bel蓹 ki, daha s眉r蓹tli v蓹 daha s蓹m蓹r蓹li,
M蓹n蓹 bir y眉z buketler ed蓹k.
>> Amma sonra bir anlamaq 眉莽眉n onlar ki, yol h蓹r 艧eyi sort
m眉vafiq bucket onlar olmal谋d谋r.
Amma sonra zaman h蓹qiq蓹t蓹n ki, bucket baxmaq ist蓹yir蓹m,
var, 莽眉nki bir 莽ox daha s眉r蓹tli h蓹r bucket az stuff.
Bel蓹 ki, B蓹li, ki, h蓹qiq蓹t蓹n var pset5 siz u艧aqlar 眉莽眉n oyun
Siz olacaq ki, yaln谋z yaratmaq 眉莽眉n etiraz
蓹n s蓹m蓹r蓹li n蓹 varsa Siz hesab ed蓹 bil蓹r funksiyas谋
saxlamaq v蓹 bu d蓹y蓹rl蓹ri kontrol ed蓹.
>> 脺mumilikd蓹 u艧aqlar 眉莽眉n lakin siz bunu ist蓹yir蓹m,
lakin h蓹qiq蓹t蓹n yax艧谋 bir n枚qt蓹 var.
Bu m蓹ntiq c眉r haqq谋nda d眉艧眉n眉r ba艧lamaq ist蓹yir蓹m
yax艧谋, niy蓹 daha buketler yoxdur, var.
V蓹 sonra m蓹n axtar谋艧 az 艧ey, v蓹 sonra b蓹lk蓹 m蓹n
f蓹rqli bir hash funksiyas谋 var.
>> B蓹li, bunu yollar谋 bir 莽ox var pset, b蓹zi daha s眉r蓹tli edir.
M蓹n tamamil蓹 nec蓹 g枚rm蓹k 眉莽眉n gedir蓹m s眉r蓹tli s眉r蓹tli u艧aqlar olacaq idi
Sizin funksiyalar谋 i艧 almaq m眉mk眉n.
OK, h蓹r k蓹s yax艧谋 on chaining v蓹 hash masalar?
Bu, 莽ox sad蓹 kimi h蓹qiq蓹t蓹n Bu bar蓹d蓹 anlay谋艧谋 d眉艧眉n眉r蓹m.
Bu b眉t眉n ay谋ran n蓹 Sizin giri艧 buketler daxil,
onlar谋n 莽e艧idl蓹nm蓹si v蓹 sonra axtar谋艧 il蓹 ba臒l谋 ki, siyah谋lar谋.
>> Cool.
B眉t眉n h眉quqlar, indi biz f蓹rqli bir n枚v var data strukturu bir a臒ac deyirl蓹r ki.
脺zr蓹 ged蓹k v蓹 莽al谋艧谋r haqq谋nda dan谋艧maq ki, ayd谋n m眉xt蓹lif var
lakin eyni kateqoriyada.
茝sas蓹n, b眉t眉n bir a臒ac 蓹v蓹zin蓹 x蓹tti 艧蓹kild蓹 m蓹lumatlar谋 t蓹艧kil
bir hash table siz蓹 does-- ki , bir top v蓹 bir alt var bilirik
v蓹 sonra c眉r pseudocode bir off ke莽id a臒ac, siz k枚k z蓹ng ed蓹n bir top var
v蓹 sonra b眉t眉n 蓹traf谋nda yarpaqlar谋 var.
>> V蓹 bel蓹 ki, b眉t眉n burada var yaln谋z 眉st node edir
dig蓹r qov艧aqlar谋n谋n, xal xal daha qov艧aqlar谋n谋n, v蓹 s v蓹 s.
V蓹 bel蓹 ki, yaln谋z par莽alanmas谋 filial谋 var.
Bu t蓹艧kil yaln谋z bir m眉xt蓹lif yolu var m蓹lumat v蓹 biz bir a臒ac z蓹ng 莽眉nki,
Siz u艧aqlar yaln谋z var izlersin bir a臒ac kimi baxmaq 眉莽眉n modell蓹艧dirilmi艧dir.
Biz a臒ac z蓹ng g枚r蓹.
>> Hash table bir masa kimi g枚r眉n眉r.
A a臒ac yaln谋z bir a臒ac kimi g枚r眉n眉r.
Bu b眉t眉n ayr谋 qov艧aqlar谋n谋n t蓹艧kili yolu
Sizin ehtiyaclar谋n谋 n蓹 as谋l谋 olaraq.
>> Bel蓹 ki, bir k枚k v蓹 sonra yarpaqlar谋 var.
yol ki, biz x眉susil蓹 bil蓹r Bu ikili a臒ac haqq谋nda d眉艧眉nm蓹k,
ikili a臒ac yaln谋z bir deyil bir a臒ac x眉susi bir n枚v眉
h蓹r bir node yaln谋z xal 眉莽眉n, max, dig蓹r iki qov艧aqlar谋n谋n.
V蓹 bel蓹 ki, burada f蓹rqli var Sizin a臒ac simmetriya
ki, daha asan c眉r baxmaq edir d蓹y蓹rl蓹r n蓹 sonra 莽眉nki var
h蓹mi艧蓹 bir sol v蓹 ya h眉ququ var.
Bir sol 眉莽眉nc眉 kimi var he莽 olacaq sol v蓹 ya soldan d枚rd眉nc眉.
Bir sol v蓹 h眉ququ var, yaln谋z var v蓹 bu iki ya axtar谋艧 ed蓹 bil蓹rsiniz.
V蓹 bel蓹 ki, niy蓹 bu faydal谋d谋r?
bu yol Siz ar谋yorsan谋z faydal谋d谋r
sa臒, d蓹y蓹rl蓹r蓹 vasit蓹sil蓹 axtar谋艧?
茝ksin蓹 ikili h蓹yata daha bir s蓹hv s谋ra axtar谋艧
Siz qov艧aqlar谋n谋n daxil etm蓹k ist蓹yirdi v蓹 irad蓹si il蓹 v蓹 h蓹m莽inin qov艧aqlar谋n谋n g枚t眉rmek
axtar谋艧 qorumaq ikili axtar谋艧 imkanlar谋.
Bel蓹 ki, bu 艧蓹kild蓹, biz n枚v ist蓹yirik zaman xat谋rlay谋ram tricking--
ba臒l谋 siyah谋lar谋 ikili axtar谋艧 bilm蓹z dedi?
Biz bel蓹 bir data strukturu yaratmaq edirik t枚vsiy蓹l蓹r i艧 daxil ki.
>> V蓹 莽眉nki ba臒l谋 siyah谋lar谋, x蓹tti var onlar yaln谋z bir-birinin ard谋nca ke莽id.
Biz n枚v ola bil蓹r g枚st蓹ricil蓹rin蓹 m眉xt蓹lif sort
m眉xt蓹lif qov艧aqlar谋n谋n i艧ar蓹 ki, axtar谋艧 k枚m蓹k ed蓹 bil蓹r.
V蓹 bel蓹 ki, burada, m蓹n ist蓹yirdi bir ikili axtar谋艧 a臒ac,
M蓹n bilir蓹m m蓹nim ortas谋nda 55 蓹g蓹r.
M蓹n yaln谋z yaratmaq gedir蓹m M蓹nim orta kimi, m蓹nim k枚k kimi,
v蓹 sonra m蓹n gedir蓹m d蓹y蓹rl蓹ri off f谋rlatmaq.
>> Bel蓹 ki, burada, m蓹n axtarmaq 眉莽眉n gedir蓹m 蓹g蓹r 66 d蓹y蓹ri, m蓹n 55 ba艧laya bil蓹rsiniz.
Bu 55-d蓹n 莽ox 66 b枚y眉k var?
B蓹li, bel蓹 ki, m蓹n axtar谋艧 Mu艧 bilm蓹k i n bu a臒ac谋n sa臒 g枚st蓹rici.
M蓹n 77 gedin.
OK, az v蓹 ya 77-d蓹n 莽ox 66?
Oh, bu, az, bel蓹 ki, bilirsiniz, ki, sol node olmal谋d谋r.
>> V蓹 bel蓹 ki, burada biz n枚v qorunmas谋 edirik Diziler haqq谋nda b枚y眉k 艧eyi,
bel蓹 dinamik boyutland谋rma kimi obyektl蓹rin, olan
daxil edin v蓹 irad蓹si il蓹 silm蓹k m眉mk眉n, sabit narahat olmadan
kosmik m蓹bl蓹臒i.
Biz h蓹l蓹 b眉t眉n qorumaq o g枚z蓹l 艧eyl蓹r
d蓹 qorumaq ed蓹 olark蓹n daxil v蓹 ikili axtar谋艧 d蓹f蓹 axtar谋艧
biz 蓹vv蓹ll蓹r yaln谋z idi ki, Bir s枚z 蓹ld蓹 ed蓹.
>> Cool data strukturu c眉r m眉r蓹kk蓹b, node h蓹yata ke莽irm蓹k.
Siz onu b眉t眉n ed蓹 bil蓹rsiniz kimi node struct edir
Bir sol var v蓹 d眉zg眉n g枚st蓹rici.
Ki, b眉t眉n var.
Bel蓹 ki, deyil, yaln谋z 莽ox bir x v蓹 ya 蓹vv蓹lki olan.
Daha sonra sol v蓹 ya sa臒, v蓹 var c眉r onlar谋 birlikd蓹 ke莽id
Lakin bel蓹 download.
>> OK, biz, h蓹qiq蓹t蓹n olacaq yaln谋z bir ne莽蓹 d蓹qiq蓹.
Bel蓹likl蓹, biz burada geri olacaq.
M蓹n 蓹vv蓹ll蓹r dediyi kimi, I n枚v izah
Biz nec蓹 m蓹ntiqi Bu vasit蓹sil蓹 axtar谋艧 ed蓹c蓹k.
Biz c蓹hd olacaq bu out pseudocoding g枚rm蓹k
biz n枚v m眉raci蓹t ed蓹 bil蓹r, 蓹g蓹r ikili axtar谋艧 eyni m蓹ntiq
data strukturu m眉xt蓹lif n枚v眉.
Sizl蓹rin bir ne莽蓹 kimi almaq ist蓹yirsinizs蓹 d蓹qiq蓹d蓹 yaln谋z bu bar蓹d蓹 d眉艧眉nm蓹k.
OLDU.
B眉t眉n sa臒, m蓹n gedir蓹m h蓹qiq蓹t蓹n, yaln谋z he莽 bir the-- verm蓹k,
Biz ilk pseudocode haqq谋nda dan谋艧maq laz谋md谋r.
Bel蓹 ki, h蓹r k蓹s ist蓹yir bir z蓹rb蓹 verm蓹k n蓹
zaman etm蓹k ist蓹yir蓹m ilk 艧ey Siz axtar谋艧 ba艧lan臒谋c etdiyiniz?
Biz ar谋yorsan谋z 66 d蓹y蓹ri, n蓹
Biz 蓹g蓹r bunu ist蓹diyiniz ilk 艧ey bu a臒ac axtar谋艧 ikili ist蓹yirsiniz?
>> Auditoriya: Siz sa臒 baxmaq ist蓹yir蓹m v蓹 [i艧itilemez] Sol baxmaq v蓹 g枚rm蓹k
daha 莽ox.
>> ANDI PENG: B蓹li, d蓹qiq.
Bel蓹 ki, sizin k枚k baxmaq olacaq.
Siz z蓹ng ed蓹 bil蓹rsiniz yollar谋 莽ox var bu, sizin valideyn node insanlar dem蓹k.
脟眉nki k枚k dem蓹k ist蓹yir蓹m ki, a臒ac k枚k眉 kimi.
Siz baxmaq olacaq k枚k node v蓹 siz etdiyiniz
g枚rm蓹k olacaq 66 b枚y眉kd眉r daha az v蓹 ya 55.
V蓹 bu yax艧谋, bu, daha 莽ox varsa daha 莽ox, biz baxmaq ist蓹yirsiniz?
Harada biz do臒ru, indi axtar谋艧 ist蓹yirsiniz?
Biz axtarmaq ist蓹diyiniz bu a臒ac谋n sa臒 yar谋m.
>> Bel蓹 ki, biz, rahat, bir sa臒 i艧ar蓹 g枚st蓹rici.
V蓹 sonra biz bil蓹rsiniz yeni k枚k 77 olmal谋d谋r.
Biz yaln谋z yerd蓹 getm蓹k bil蓹r pointer i艧ar蓹 edir.
Yax艧谋, oh, burada biz ba艧layaraq edirik 77, v蓹 biz yaln谋z bil蓹rsiniz
recursively t蓹krar edirik.
Bu yolla, siz c眉r bir funksiyas谋 var.
Siz ki, axtar谋艧 bir yol var yaln谋z v蓹 眉z蓹rind蓹 眉z蓹rind蓹 t蓹krar ed蓹 bil蓹rsiniz,
siz baxmaq ist蓹diyiniz as谋l谋 olaraq Siz n蓹hay蓹t d蓹y蓹ri almaq q蓹d蓹r
sizin 眉莽眉n axtar谋艧 etdiyiniz.
Salam?
>> M蓹n siz蓹 faktiki g枚st蓹rm蓹k haqq谋nda Ben kodu, v蓹 kodu bir 莽ox var.
Ehtiyac yoxdur q蓹rib蓹.
Biz onun vasit蓹sil蓹 dan谋艧maq laz谋md谋r.
>> 茝slind蓹, no.
Bu yaln谋z pseudocode idi.
OK, yaln谋z pseudocode idi olan bir az m眉r蓹kk蓹b,
lakin tamamil蓹 g枚z蓹l var.
Burada h蓹r k蓹s birlikd蓹 a艧a臒谋dak谋?
K枚k null varsa, qaytar谋lmas谋 saxta dem蓹kdir, 莽眉nki
Siz h蓹tta orada he莽 bir 艧ey yoxdur.
>> K枚k n 蓹g蓹r bel蓹 d蓹y蓹ri, 蓹g蓹r bax谋r谋q biri olur,
sonra do臒ru geri olacaq Bilirsiniz, 莽眉nki siz onu tapd谋.
Amma d蓹y蓹ri az olduqda n k枚k 莽ox, siz etdiyiniz
sol axtar谋艧 gedir u艧aq v蓹 ya sol yarpa臒谋,
Siz z蓹ng etm蓹k ist蓹yir蓹m n蓹.
V蓹 d蓹y蓹ri k枚k daha b枚y眉k olduqda, sa臒 a臒ac axtar谋艧 olacaq,
sonra yaln谋z funksiyas谋 run axtar谋艧 vasit蓹sil蓹 yenid蓹n.
>> V蓹 k枚k, null oldu臒unu ki, 蓹g蓹r Siz son 蓹ld蓹 etdik dem蓹kdir?
Ki, he莽 bir var dem蓹kdir daha yarpaqlar谋 axtar谋艧,
sonra m蓹n, oh, bilirik burada deyil tapmaq
M蓹n n蓹z蓹rd蓹n sonra, 莽眉nki v蓹 burada deyil b眉t眉n 艧ey,
Bu yaln谋z burada ola bil蓹r.
>> Ki, ham谋ya m蓹nada edirmi?
Bel蓹 ki, qorunmas谋 ikili axtar谋艧 kimi ba臒l谋 siyah谋lar谋 imkanlar谋.
Cool, v蓹 ikinci n枚v眉 data strukturu u艧aqlar
Sizin pset h蓹yata c蓹hd ed蓹 bil蓹rsiniz, Yaln谋z bir metodu se莽m蓹k laz谋md谋r.
Amma y蓹qin ki, alternativ metodu hash table bir trie z蓹ng edir.
>> B眉t眉n bir trie bir a臒ac x眉susi n枚v眉 ki,
dig蓹r d蓹y蓹rl蓹ri getm蓹k d蓹y蓹rl蓹ri var.
Bel蓹 ki, 蓹v蓹zin蓹 bir ikili olan m蓹nada a臒ac yaln谋z bir ki,
艧ey iki qeyd ed蓹 bil蓹rsiniz, siz ola bil蓹r bir 莽ox 艧ey 眉莽眉n bir 艧ey point.
Siz mahiyy蓹tc蓹 Diziler var olan saxlamaq daxili
dig蓹r seriallar谋n qeyd g枚st蓹ricil蓹r.
>> Bel蓹likl蓹, biz nec蓹 node bir trie m眉蓹yy蓹n olard谋
biz var ist蓹yir蓹m Boolean, c s枚z, sa臒?
Bel蓹 ki, node Boolean var , do臒ru v蓹 ya yalan kimi
ba艧谋nda ilk n枚vb蓹d蓹 ki array, bu s枚z?
陌kincisi, siz g枚st蓹ricil蓹rin蓹 var ist蓹yir蓹m n蓹 眉莽眉n onlara qalan var.
A bit m眉r蓹kk蓹b, bir az m眉c蓹rr蓹d, lakin M蓹n ki, b眉t眉n vasit蓹l蓹rd蓹n izah ed蓹c蓹k.
>> Bel蓹 ki, burada, 眉st, 蓹g蓹r bir s谋ra art谋q elan var,
Bir Boolean bir node 枚n saxlan谋lan d蓹y蓹ri
ki, bu bir s枚z deyir?
Bu bir s枚z deyilmi?
V蓹 sonra var Sizin array qalan ki,
h蓹qiq蓹t蓹n ma臒azalar b眉t眉n Bu ola bil蓹r n蓹 imkanlar谋.
Bel蓹 ki, m蓹s蓹l蓹n, kimi 眉st var
do臒ru v蓹 ya deyir ki, ilk 艧ey yalan, b蓹li v蓹 ya xeyr, bu s枚z.
>> V蓹 sonra 26 vasit蓹sil蓹 0 var Siz bil蓹rsiniz m蓹ktublar.
M蓹n burada axtarmaq ist蓹yirdi yarasa, m蓹n 眉st getm蓹k
v蓹 m蓹n B tapmaq B. axtarmaq m蓹nim array v蓹 m蓹n bilir蓹m, OK, B bir s枚z?
B bel蓹likl蓹, bir s枚z deyil M蓹n axtar谋艧 saxlamaq laz谋md谋r.
M蓹n B getm蓹k v蓹 m蓹n baxmaq B do臒ru i艧ar蓹 pointer
M蓹n, informasiya bir s谋ra g枚rm蓹k biz 蓹vv蓹l idi, eyni strukturu.
>> V蓹 oh n枚vb蓹ti burada [I艧itilemez] m蓹ktub A.
Bel蓹 ki, s谋ra baxmaq.
Biz s蓹kkizinci d蓹y蓹r tapmaq, sonra biz, oh, bax
hey, bir s枚zl蓹 ki, B-A bir s枚z?
Bu bir s枚z deyil.
Biz axtar谋r saxlamaq 眉莽眉n var.
>> V蓹 sonra biz burada baxmaq A bal pointer,
v蓹 ba艧qa 艧蓹kild蓹 i艧ar蓹 Hans谋 daha 莽ox d蓹y蓹r saxlan谋l谋r.
V蓹 n蓹hay蓹t, biz almaq Bir s枚z B-A-T.
V蓹 bel蓹 n枚vb蓹ti d蓹f蓹 Siz baxmaq, siz olacaq
B蓹li, ki, 莽ek 眉莽眉n, Bu Boolean funksiyas谋 do臒rudur.
V蓹 bel蓹 ki, m蓹nada, biz g枚zl蓹yirik diziler il蓹 bir a臒ac olan.
>> Bel蓹likl蓹 c眉r a艧a臒谋 axtar谋艧 ed蓹 bil蓹rsiniz.
茝ksin蓹 bir funksiyas谋 hashing 莽ox v蓹 ba臒l谋 siyah谋 il蓹 d蓹y蓹rl蓹r t蓹yin,
yaln谋z bir h蓹yata ke莽ir蓹 bil蓹r downwords axtar谋艧 trie.
H蓹qiq蓹t蓹n, h蓹qiq蓹t蓹n m蓹hsullar谋 m眉r蓹kk蓹b.
M蓹n kimi deyil蓹m, 莽眉nki d眉艧眉nm蓹k asan deyil bir 莽ox data strukturlar谋 h蓹yata spitting
siz蓹, lakin c眉r h蓹r k蓹s yoxdur Bu m蓹ntiqi nec蓹 anlamaq?
>> S蓹rin, OK.
Bel蓹 ki, B-A-T, v蓹 sonra axtar谋艧 olacaq.
Siz davam oldu臒unuz n枚vb蓹ti d蓹f蓹 oh, hey, bu do臒ru, bax,
Bel蓹likl蓹, m蓹n bu s枚z olmal谋d谋r bilirik.
>> Zoo 眉莽眉n eyni 艧ey.
Bel蓹 ki, burada bir 艧ey varsa, sa臒 indi biz 陌ndi, zoo axtarmaq ist蓹di,
Hal-haz谋rda zoo bir deyil Bizim l眉臒蓹t s枚z
, 莽眉nki u艧aqlar, G枚rd眉y眉n眉z kimi bir Boolean ilk yer
qay谋tmaq do臒ru zoom sonunda.
Biz Z-O-O-M var.
>> V蓹 bel蓹 ki, burada biz, h蓹qiq蓹t蓹n, yoxdur Bizim l眉臒蓹t s枚z, zoo,
Bu onay qutusu yoxlan谋l谋r deyil, 莽眉nki.
Bel蓹 ki, komp眉ter deyil zoo bir s枚z oldu臒unu bilirik
脟眉nki biz yol yaln谋z bir zoom burada saxlan谋l谋r
h蓹qiq蓹t蓹n bir Boolean d蓹y蓹ri var ki, do臒rudur 莽evrildi edilmi艧dir.
Biz daxil etm蓹k ist蓹yirsinizs蓹 Bel蓹 ki, s枚z, zoo bizim l眉臒蓹t daxil,
biz bunu haqq谋nda nec蓹 getm蓹k olar?
Biz 蓹min etm蓹k 眉莽眉n n蓹 etm蓹k laz谋md谋r n蓹 bizim Komp眉ter Z-O-O bir s枚z bilir ki,
v蓹 ilk s枚z眉 Z-O-O-M?
>> Auditoriya: [i艧itilemez]
>> ANDI PENG: M蓹hz, biz Bu 蓹min etm蓹k ist蓹yir蓹m
Burada ki, Boolean d蓹y蓹ri do臒ru off yoxlan谋l谋r.
Z-O-O, sonra biz yoxlamaq olacaq, bel蓹 ki, biz tam, hey, zoo bir s枚z bilirik.
M蓹n dem蓹k gedir蓹m bir s枚z bel蓹 komp眉ter
, zaman komp眉ter 莽ek ki, Bu zoo bir s枚z oldu臒unu bilir.
>> B眉t眉n bu m蓹lumatlar谋 xat谋rlay谋ram 莽眉nki strukturlar谋, bizim 眉莽眉n 莽ox asand谋r
oh, yarasa bir s枚z var, dem蓹k.
Zoo bir s枚z var.
Zoom bir s枚z var.
Amma siz bunu bina etdiyiniz zaman, komp眉ter he莽 bir fikir var.
>> Bel蓹 ki, d蓹qiq dem蓹k laz谋md谋r n蓹 n枚qt蓹d蓹 bu s枚z?
N蓹 n枚qt蓹d蓹 bir s枚z deyil?
V蓹 n蓹 n枚qt蓹d蓹 n蓹 艧eyi axtarmaq laz谋md谋r,
v蓹 n蓹 n枚qt蓹d蓹 m蓹n n枚vb蓹ti getm蓹k laz谋md谋r?
Ki, ayd谋n h蓹r k蓹s?
Cool.
>> V蓹 sonra g蓹lir problemi nec蓹 olard谋
bir 艧ey daxil haqq谋nda getm蓹k ki, faktiki olaraq deyil?
Bel蓹 ki, yaln谋z biz 蓹lav蓹 etm蓹k ist蓹yir蓹m dey蓹k Bizim trie daxil s枚z, hamam.
Siz u艧aqlar haz谋rda kimi G枚rd眉y眉n眉z kimi biz indi b眉t眉n, B-A-T
v蓹 bu yeni data strukturu bir ufak var idi ki,
biz g眉man, 莽眉nki null i艧ar蓹 oh, B-A-T sonra he莽 bir s枚z var ki,
niy蓹 biz saxlamaq laz谋md谋r ki, T. sonra h蓹r 艧eyi olan
>> Biz siz蓹 蓹g蓹r Lakin problem yaran谋r sonra g蓹lir bir s枚z var ist蓹yir蓹m
T.
Siz vanna varsa, ist蓹yirik bir H ist蓹yirik gedir.
V蓹 bel蓹 ki, biz n蓹 olacaq yoldur biz ayr谋 node yaratmaq olacaq.
Biz n蓹 m蓹bl蓹臒i ay谋rmaq deyilik Bu yeni array 眉莽眉n yadda艧,
v蓹 biz g枚st蓹ricil蓹rin蓹 redesign olacaq.
>> Biz t蓹yin etm蓹k olacaq H, ilk n枚vb蓹d蓹, bu null,
biz xilas olacaq.
Biz olacaq H point a艧a臒谋.
Biz H g枚r眉rs眉n眉zs蓹, biz bunu ist蓹yirik ba艧qa bir yerd蓹 getm蓹k 眉莽眉n.
>> Burada, biz sonra yes off kontrol ed蓹 bil蓹rsiniz.
Biz T sonra H hit varsa, oh, sonra biz bu s枚z oldu臒unu bilirik.
Boolean do臒ru qay谋tmaq 眉莽眉n gedir.
H蓹r k蓹s ki, ba艧 nec蓹 ayd谋n?
OLDU.
>> Bel蓹 ki, mahiyy蓹tc蓹, b眉t眉n Bu data strukturlar谋
Bu g眉n 眉z蓹rind蓹 getdi etdik ki, m蓹n var h蓹qiq蓹t蓹n, h蓹qiq蓹t蓹n, tez onlar谋n 眉z蓹rind蓹 getdi
v蓹 莽ox deyil 眉莽眉n 蓹trafl谋 v蓹 OK.
Siz messing ba艧lamaq sonra O, siz蓹 olacaq
harada takip saxlan谋lmas谋 b眉t眉n g枚st蓹ricil蓹r var
n蓹 olur sizin data strukturlar谋, Et Cetera.
Onlar 莽ox faydal谋 olacaq v蓹 bu q蓹d蓹r var
u艧aqlar tamamil蓹 nec蓹 anlamaq 眉莽眉n h蓹r 艧eyi h蓹yata ke莽irm蓹k ist蓹yirik.
>> V蓹 bel蓹 pset4, bir 5 node oh, ki, s蓹hvdir.
Pset5 imla hatalar谋 edir.
M蓹n 蓹vv蓹l qeyd etdiyim kimi, bir d蓹f蓹 olacaq yen蓹 bizd蓹n m蓹nb蓹 kodu download.
脺莽 蓹sas olmal谋d谋r olacaq 艧eyi y眉kl蓹n蓹rk蓹n olacaq.
Siz l眉臒蓹tl蓹r download laz谋md谋r KERS, v蓹 m蓹tnl蓹r.
>> B眉t眉n bu 艧eyl蓹r var ya s枚zl蓹ri l眉臒蓹t
biz siz蓹 check ist蓹diyiniz ki, v蓹 ya informasiya test
biz siz蓹 莽ek sehr etm蓹k ist蓹yir蓹m ki,.
V蓹 bel蓹 l眉臒蓹tl蓹r biz gedir verm蓹k
siz蓹 ist蓹yirik faktiki s枚zl蓹ri verm蓹k Siz bir 艧蓹kild蓹 el蓹 saxlamaq 眉莽眉n
bir s谋ra daha s蓹m蓹r蓹li.
V蓹 sonra m蓹tnl蓹r var biz ist蓹yirik n蓹 olacaq
isteyen 蓹min olun sehr s枚zl蓹ri b眉t眉n real s枚z var.
>> V蓹 bel蓹 眉莽 bloklar谋 biz siz蓹 ver蓹c蓹yik proqramlar谋
dictionary.c deyilir, dictionary.h v蓹 speller.c.
V蓹 bel蓹 ki, b眉t眉n dictionary.c ki yoxdur n蓹 h蓹yata ke莽irilm蓹si 眉莽眉n xahi艧 edirik.
Bu s枚zl蓹ri y眉kler.
Yoxlay谋r onlar谋 spell v蓹 bu 蓹min edir ki, h蓹r 艧ey d眉zg眉n daxil edilir.
>> diction.h yaln谋z bir kitabxana fayl ki, b眉t眉n bu funksiyalar谋 b蓹yan edir.
V蓹 speller.c, biz siz蓹 verm蓹k olacaq.
Siz h蓹r hans谋 d蓹yi艧dirm蓹k 眉莽眉n ehtiyac yoxdur.
B眉t眉n speller.c ki g枚r眉r, y眉k ki, onun s眉r蓹ti yoxlay谋r,
nec蓹 kimi benchmark test tez 艧ey蓹 edirik.
>> Bu speller var.
Just il蓹 mess yoxdur, amma etm蓹k Siz bunu n蓹 ba艧a d眉艧眉r眉k.
Biz funksiyas谋 adlan谋r getrusage istifad蓹 Sizin yaz谋m performans谋 s谋nayar
checker.
B眉t眉n bu 蓹sas蓹n test edilir yoxdur Sizin l眉臒蓹t h蓹r 艧ey zaman,
bel蓹 ki, onu anlamaq 蓹min olun.
Bu mess deyil ehtiyatl谋 olun v蓹 ya ba艧qa 艧eyi d眉zg眉n 莽al谋艧maz.
>> Bu problem toplu 眉莽眉n Siz u艧aqlar h蓹qiq蓹t蓹n dictionary.c d蓹yi艧dirm蓹k 眉莽眉n.
Biz siz蓹 verm蓹k olacaq Bir l眉臒蓹t 140,000 s枚zl蓹r.
Biz siz蓹 bir m蓹tn verm蓹k olacaq Bu s枚zl蓹ri var fayl,
v蓹 biz t蓹艧kil ed蓹 olmaq ist蓹yir蓹m bir hash masa v蓹 ya bir trie daxil onlara
biz oxumaq 眉莽眉n xahi艧 zaman, 莽眉nki Siz yaz谋m 蓹g蓹r t蓹s蓹vv眉r yoxlamaq
Homer nin Odyssey kimi yoxlan谋lmas谋.
Bu b枚y眉k, b枚y眉k test kimi.
>> H蓹r bir d眉艧眉n眉n s枚z baxmaq idi
140,000 d蓹y蓹rl蓹r bir s谋ra vasit蓹sil蓹.
Ki, 蓹b蓹di ed蓹c蓹k ma艧谋n 莽al谋艧t谋rmak 眉莽眉n.
Biz bizimdir bizim t蓹艧kil etm蓹k ist蓹yirik ki, daha s蓹m蓹r蓹li data strukturlar谋na data
Bel蓹 bir hash masa v蓹 ya bir trie kimi.
V蓹 sonra u艧aqlar c眉r ed蓹 bil蓹rsiniz Siz giri艧 axtarmaq zaman
h蓹r 艧eyi daha asan v蓹 daha tez.
>> V蓹 bel蓹 toqqu艧ma h蓹ll etm蓹k 眉莽眉n ehtiyatl谋 olun.
Siz bir d蓹st蓹 almaq olacaq A. il蓹 start s枚zl蓹ri
Siz bir d蓹st蓹 s枚zl蓹ri almaq olacaq Bu q蓹d蓹r B. il蓹 ba艧lamaq
Ist蓹diyiniz nec蓹 u艧aqlar onu h蓹ll etm蓹k.
Y蓹qin ki, daha 莽ox var s蓹m蓹r蓹li hash funksiyas谋
yaln谋z ilk m蓹ktub bir 艧ey, v蓹 ki, siz蓹 var
u艧aqlar c眉r ist蓹diyiniz n蓹 眉莽眉n.
>> B蓹lk蓹 蓹lav蓹 etm蓹k ist蓹diyiniz birlikd蓹 b眉t眉n m蓹ktublar.
B蓹lk蓹 q蓹rib蓹 艧eyl蓹r kimi ist蓹yir蓹m m蓹ktublar say谋 hesab,
n蓹.
Siz ist蓹diyiniz nec蓹 u艧aqlar Up.
Siz 蓹g蓹r bir hash masa etm蓹k ist蓹yirsinizs蓹 tamamil蓹 size, bir trie c蓹hd etm蓹k ist蓹yir蓹m.
M蓹n vaxt谋ndan 蓹vv蓹l sizi x蓹b蓹rdar ed蓹c蓹k trie ad蓹t蓹n bir az daha 莽蓹tindir
bir 莽ox var, 莽眉nki yaln谋z daha g枚st蓹ricil蓹rin蓹 takip.
Amma tamamil蓹 u艧aqlar 眉莽眉n.
Bu daha s蓹m蓹r蓹li 蓹ks蓹r hallarda.
Siz, h蓹qiq蓹t蓹n, davam ed蓹 olmaq ist蓹yir蓹m Sizin g枚st蓹ricil蓹r b眉t眉n track.
Like eyni 艧ey M蓹n burada bunu edir.
Zaman daxil 莽al谋艧d谋臒谋n谋z bir hash masa d蓹y蓹rl蓹r v蓹 ya silm蓹k,
Siz etdiyiniz 蓹min olun h蓹qiq蓹t蓹n takip saxlan谋lmas谋
h蓹r 艧ey, 莽眉nki oldu臒u M蓹n deyil蓹m 蓹g蓹r h蓹qiq蓹t蓹n asand谋r
s枚z眉, Andy kimi daxil 莽al谋艧谋r.
Yaln谋z bir deyirl蓹r real s枚z, s枚z, andy,
A s枚zl蓹r n蓹h蓹ng siyah谋s谋na daxil.
>> M蓹n yaln谋z redesign n蓹 varsa bir g枚st蓹rici s蓹hv oops,
tam orada gedir M蓹nim ba臒l谋 siyah谋 istirah蓹t.
陌ndi yaln谋z s枚z I var andy v蓹 indi
dig蓹r s枚zl蓹ri b眉t眉n L眉臒蓹t itirmi艧dir.
V蓹 bel蓹 ki, siz 蓹min etm蓹k ist蓹yir蓹m Sizin g枚st蓹ricil蓹r b眉t眉n takip
v蓹 ya ba艧qa siz almaq olacaq Sizin kodu b枚y眉k probleml蓹ri.
Add谋m-add谋m diqq蓹tl蓹 艧eyi c蓹lb edir.
Bu d眉艧眉nm蓹k bir 莽ox asan edir.
>> V蓹 n蓹hay蓹t, siz etm蓹k ist蓹yir蓹m Proqram performans test
b枚y眉k board.
Sizl蓹rin alsaq bir 陌ndi CS50 baxmaq,
biz b枚y眉k board deyirl蓹r n蓹 var.
Bu s眉r蓹tli hesab hesabat谋 CS50 b眉t眉n aras谋nda yoxlan谋lmas谋 d蓹f蓹 yaz谋m
indi, m蓹n 10 kimi 眉st hesab d蓹f蓹 m蓹n onlardan s蓹kkiz hey蓹ti hesab edir蓹m.
Biz, h蓹qiq蓹t蓹n, u艧aqlar bizi m蓹臒lub etm蓹k ist蓹yirik.
>> Ham谋m谋z h蓹yata ke莽irilm蓹si 眉莽眉n 莽al谋艧d谋qlar谋n谋 m眉mk眉n q蓹d蓹r s眉r蓹tli kodu.
Biz u艧aqlar etiraz 眉莽眉n c蓹hd etm蓹k ist蓹yir蓹m Biz蓹 v蓹 ham谋m谋z daha s眉r蓹tli h蓹yata ke莽irilm蓹si
bil蓹rsiniz.
V蓹 bu h蓹qiq蓹t蓹n biz ist蓹yirik ilk d蓹f蓹
u艧aqlar xahi艧 pset etm蓹k ki, Siz, h蓹qiq蓹t蓹n, n蓹 metodu ed蓹 bil蓹rsiniz
S蓹n ist蓹yirs蓹n.
>> M蓹n h蓹mi艧蓹 bu daha yax谋n edir, dem蓹k real h蓹yat h蓹ll, sa臒?
M蓹n hey, m蓹n bunu etm蓹k laz谋md谋r, deyirl蓹r.
M蓹nim 眉莽眉n bu ki, bir proqram qurmaq.
Lakin ist蓹diyiniz bunu.
M蓹n yaln谋z oruc tutmaq ist蓹yir蓹m ki, bilirik.
Bu h蓹ft蓹 眉莽眉n problem var.
Siz u艧aqlar, gedirik bir v蓹zif蓹 verm蓹k.
Biz siz蓹 bir problem verm蓹k olacaq.
V蓹 sonra bu u艧aqlar var tamamil蓹 yaln谋z anlamaq 眉莽眉n
q谋sa v蓹 蓹n n蓹 s蓹m蓹r蓹li 艧蓹kild蓹 bu h蓹yata ke莽irm蓹k.
Evet?
>> Auditoriya: Biz 蓹g蓹r icaz蓹 verilir Daha s眉r蓹tli yollar谋 t蓹dqiqat ist蓹di
Biz n蓹 ed蓹, online hash masalar etm蓹k ki, ba艧qas谋n谋n kodu istinad?
ANDI PENG: B蓹li, tamamil蓹 g枚z蓹l.
Bel蓹 ki, u艧aqlar oxumaq spec, bir x蓹tt var
Siz u艧aqlar deyir spec hash t蓹dqiqat tamamil蓹 pulsuzdur
n蓹 b蓹zi funksiyalar谋 tez hash funksiyalar谋
kimi vasit蓹sil蓹 艧eyi run ki, kodu istinad kimi uzun.
Bel蓹 ki, b蓹zi insanlar art谋q s眉r蓹tli yollar谋 fiqurlu
s眉r蓹tli ki, yaz谋m dama edir m蓹lumat saxlan谋lmas谋 yollar谋.
脺mumilikd蓹 u艧aqlar q蓹d蓹r 蓹g蓹r sa臒, yaln谋z almaq ist蓹yirsiniz?
Siz s蓹b蓹b 蓹min olun.
problem burada h蓹qiq蓹t蓹n Biz test 莽al谋艧d谋臒谋n谋z
Siz bilirsiniz ki, 蓹min edir yol 蓹traf谋nda g枚st蓹ricil蓹r.
Kimi uzaq ed蓹 h蓹yata kimi faktiki hash funksiyas谋
v蓹 kimi il蓹 g蓹l蓹n riyaziyyat bunu,
Sizl蓹rin ara艧d谋rma n蓹 眉sullar谋 online u艧aqlar ist蓹yir蓹m.
Evet?
>> Auditoriya: Biz yaln谋z g枚st蓹rm蓹k olar [I艧itilemez] istifad蓹 ed蓹r蓹k?
>> ANDI PENG: B蓹li.
Siz yaln谋z Sizin 艧蓹rhiniz, Siz, oh, kimi g枚st蓹rm蓹k olar
Yada al谋nan yada, yada, hash funksiyas谋.
H蓹r hans谋 bir sual谋n谋z?
Biz, h蓹qiq蓹t蓹n, breezed Bu g眉n b枚lm蓹 vasit蓹sil蓹.
M蓹n burada olacaq el蓹c蓹 d蓹 suallara cavab.
>> H蓹m莽inin, dediyim kimi, ofis saat gec蓹 v蓹 sabah.
Bu h蓹ft蓹 蓹slind蓹 spec super asan v蓹 oxumaq 眉莽眉n super q谋sa.
M蓹n yaln谋z bir n蓹z蓹r alaraq g蓹lir ki, Bunun tam g蓹zib.
>> V蓹 Zamyla h蓹qiq蓹t蓹n siz dola艧谋r funksiyalar谋 h蓹r vasit蓹sil蓹
Siz h蓹yata ke莽irilm蓹si 眉莽眉n laz谋md谋r, v蓹 bu h蓹r 艧eyi nec蓹 莽ox ayd谋n.
Just 蓹min sen etm蓹k g枚st蓹ricil蓹rin蓹 takip saxlan谋lmas谋.
Bu, 莽ox 莽蓹tin pset edir.
>> Bu kimi, 莽眉nki 莽蓹tin deyil oh, anlay谋艧lar 莽ox daha 莽ox var
莽蓹tin, v蓹 ya 枚yr蓹nm蓹k laz谋md谋r yol q蓹d蓹r yeni sintaksis
son pset 眉莽眉n idi ki,.
Bu pset 莽蓹tindir ki, bir 莽ox g枚st蓹ricil蓹r var,
v蓹 sonra bir 莽ox, 莽ox asand谋r Siz ed蓹 sizin kodu bir s蓹hv var
ki, s蓹hv oldu臒u tapmaq 眉莽眉n.
>> V蓹 bel蓹 tam v蓹 siz蓹 irad iman u艧aqlar bizim [I艧itilemez] d枚ym蓹k etm蓹k
yaz谋mlar.
M蓹n, h蓹qiq蓹t蓹n, he莽 bir yaz谋l谋 mina var h蓹l蓹, amma mina yazmaq haqq谋nda deyil蓹m.
Yaz谋l谋 etdiyiniz zaman sizin, m蓹n mina yaz谋l谋 olacaq.
M蓹n etm蓹k 眉莽眉n c蓹hd gedir蓹m mina s眉r蓹tli sizin daha.
Biz s眉r蓹tli bir olan g枚r蓹c蓹ksiniz.
>> V蓹 B蓹li, m蓹n b眉t眉n g枚r蓹c蓹ksiniz burada 脟蓹r艧蓹nb蓹 ax艧am谋 g眉n眉 u艧aqlar.
M蓹n pset seminar kimi bir n枚v davam ed蓹c蓹k.
B枚lm蓹l蓹r B眉t眉n bu h蓹ft蓹, pset seminarlar
Bel蓹 ki, u艧aqlar imkanlar谋 莽ox var yard谋m 眉莽眉n, ofis saat h蓹mi艧蓹 oldu臒u kimi,
v蓹 m蓹n, h蓹qiq蓹t蓹n g枚zl蓹yirik Sizin u艧aqlar "b眉t眉n kodu oxu.
M蓹n burada 蓹g蓹r s谋navlar q蓹d蓹r var u艧aqlar bu almaq g蓹lm蓹k ist蓹yir蓹m.
Bu ham谋s谋d谋r.