>> [MUSIC PLAYING]
>> ANDI PENG: hiss蓹sinin h蓹ft蓹 3 xo艧 g蓹lmisiniz.
B眉t眉n g蓹l蓹n 眉莽眉n t蓹艧蓹kk眉r edirik, u艧aqlar, Bu 蓹vv蓹ll蓹r start zaman g眉n.
Biz bir g枚z蓹l az var intim qrup bu g眉n.
Bel蓹 ki, in艧allah almaq laz谋md谋r r蓹ngi, b蓹lk蓹 d蓹, erk蓹n,
bir az erk蓹n g眉n.
Bel蓹 ki, tez, yaln谋z bir g眉nd蓹mind蓹 bu g眉n elanlar.
Biz ba艧lamaq 蓹vv蓹l, biz ist蓹yirik yaln谋z getm蓹k gedir
b蓹zi q谋sa maddi-texniki m蓹s蓹l蓹l蓹r, pset suallar, debrief ki, kimi 艧eyl蓹r.
V蓹 sonra biz do臒ru dal谋艧 laz谋md谋r.
Biz gdb adl谋 ay谋klama istifad蓹 ed蓹c蓹yik bizim kodu, debunking ba艧lamaq David
g眉n m眉hazir蓹 izah etdi.
Biz n枚v d枚rd n枚v art谋q getm蓹k laz谋md谋r.
Biz olduqca tez onlar谋n 眉z蓹rind蓹 getm蓹k laz谋md谋r Onlar olduqca s谋x ist蓹yirik ild蓹n.
Amma bilirik ki, b眉t眉n slaydlar v蓹 m蓹nb蓹 kodu online h蓹mi艧蓹 var.
Bel蓹 ki, sizin okuma da, 莽ekinmeyin geri getm蓹k v蓹 n蓹z蓹r.
>> Biz ke莽m蓹k laz谋md谋r asimptotik notation olan
bir x眉lya yoldur dey蓹r蓹k "runtimes,"
biz b枚y眉k O, harada ki, David m眉hazir蓹 izah etdi.
V蓹 biz d蓹 Omega, olan a艧a臒谋 ba臒l谋 i艧 deyil.
V蓹 biz bir az daha 莽ox dan谋艧maq laz谋md谋r d蓹rin nec蓹 o i艧l蓹ri il蓹 蓹laq蓹dar.
V蓹 n蓹hay蓹t, biz ikili axtar谋艧 art谋q getm蓹k laz谋md谋r 脟眉nki art谋q siz bir 莽ox
Sizin psets n蓹z蓹r y蓹qin ki, bilirik ki, ki, pset bir m蓹s蓹l蓹dir.
Bel蓹 ki, b眉t眉n xo艧b蓹xt olacaq bu g眉n 蓹hat蓹 edir.
>> V蓹 n蓹hay蓹t, ba艧谋 b枚lm蓹 r蓹y, M蓹n, h蓹qiq蓹t蓹n,
T蓹xmin蓹n 15 d蓹qiq蓹 sol Sonunda yaln谋z art谋q getm蓹k
pset3 m蓹ntiqi, h蓹r hans谋 bir sual谋n谋z, b蓹lk蓹 do臒ru bir az Siz,
biz proqramla艧d谋rma ba艧lamaq 蓹vv蓹l.
Bel蓹 ki, vasit蓹sil蓹 almaq 眉莽眉n c蓹hd ed蓹k olduqca tez material.
V蓹 sonra biz b蓹zi vaxt s蓹rf ed蓹 bil蓹r pset 眉莽眉n 莽ox suallar alaraq.
OLDU.
>> Tez, bel蓹 ki, yaln谋z bir ne莽蓹 Biz 蓹vv蓹l elanlar g眉n ba艧lay谋n.
茝vv蓹lc蓹 edilm蓹si xo艧 g蓹lmisiniz Sizin psets iki vasit蓹sil蓹.
M蓹n your-- B蓹li, ed蓹k n蓹z蓹r etdi ki, bir alq谋艧 almaq.
茝slind蓹, m蓹n, h蓹qiq蓹t蓹n heyran.
M蓹n siz蓹 u艧aqlar 眉莽眉n ilk pset pill蓹li Ke莽蓹n h蓹ft蓹 v蓹 u艧aqlar inan谋lmaz idi.
>> Style n枚qt蓹sind蓹 idi bir ne莽蓹 艧蓹rh il蓹 yana艧谋.
Siz h蓹mi艧蓹 ist蓹yirik etm蓹k kodu 艧蓹rh.
Lakin psets n枚qt蓹sind蓹 idi.
V蓹 onu saxlamaq.
V蓹 bu sinif 艧agirdi 眉莽眉n yax艧谋 Sizl蓹rin qoyulmas谋 ki, g枚r蓹c蓹ksiniz
sizin stil q蓹d蓹r s蓹y Sizin kodu v蓹 dizayn
g枚rm蓹k 眉莽眉n, biz ist蓹rdik ki,.
Bel蓹likl蓹, m蓹n minn蓹tdarl谋臒谋m谋 boyunca ke莽蓹n al谋ram TA艦 istirah蓹t 眉莽眉n.
>> Lakin orada bir bir ne莽蓹 debrief suallar
M蓹n ki, art谋q getm蓹k ist蓹yir蓹m h蓹m m蓹nim h蓹yat ed蓹c蓹k
v蓹 dig蓹r bir 莽ox Ta艧 "bir az daha asan ya艧ay谋r.
Birincisi, m蓹n fark etdik bu 脰t蓹n Siz ne莽蓹 week--
on check50 莽al谋艧an edilmi艧dir Siz 蓹vv蓹l code t蓹qdim?
OLDU.
Bel蓹 ki, h蓹r k蓹s check50 bunu etm蓹k laz谋md谋r, h蓹qiq蓹t蓹n biz bir secret-- 莽眉nki
Bizim d眉zg眉nl眉y眉n蓹 hiss蓹si kimi check50 run kodu test 眉莽眉n scripts.
Sizin kodu u臒ursuz 蓹g蓹r Bel蓹 ki, check50, b眉t眉n ehtimal谋,
y蓹qin ki, olacaq h蓹m d蓹 莽ek u臒ursuz.
B蓹z蓹n u艧aqlar do臒ru cavab var.
Kimi, g枚rm蓹mi艧, b蓹zi sa臒 n枚mr蓹l蓹ri var,
Yaln谋z b蓹zi 蓹lav蓹 m蓹hsullar谋 莽ap.
V蓹 蓹lav蓹 stuff h蓹qiq蓹t蓹n 莽ek etm蓹dikd蓹,
komp眉ter deyil, 莽眉nki h蓹qiq蓹t蓹n axtar谋r n蓹 bilirik.
V蓹 bel蓹 ki, yaln谋z vasit蓹sil蓹 davam ed蓹c蓹k 莽谋x谋艧 deyil ki, g枚r蓹c蓹ksiniz
Biz cavab g枚zl蓹yirik n蓹 uy臒un ola bil蓹r, v蓹 bu s蓹hv qeyd etm蓹k.
>> M蓹n ba艧 bilirik ki, Sizin hallarda b蓹zi bu h蓹ft蓹.
M蓹n geri v蓹 蓹l getdi h蓹r k蓹sin kodu regraded.
Baxmayaraq ki, g蓹l蓹c蓹kd蓹, , 蓹min olun edin
Siz yay谋nl谋yorsan谋z ki, Sizin kodunu 50 oldu.
Bu TY 眉莽眉n bir a臒r谋 n枚v眉 var, 莽眉nki regrade 蓹l geri getm蓹k v蓹 眉莽眉n
h蓹r 眉莽眉n h蓹r bir pset bir az burax谋lm谋艧 instansiya.
Bel蓹likl蓹, m蓹n he莽 bir xal off almad谋.
M蓹n b蓹lk蓹 off etdi edir蓹m bir v蓹 ya dizayn iki.
Baxmayaraq ki, g蓹l蓹c蓹kd蓹, 蓹g蓹r Siz check50 u臒ursuz edirik
bal al谋nacaq d眉zg眉nl眉y眉n蓹 off.
>> Bundan ba艧qa, psets var g眉norta saatlar谋nda c眉m蓹 g枚r蓹.
M蓹n yeddi d蓹qiq蓹 var edir蓹m biz siz蓹 gec g眉z蓹艧t d枚vr眉.
Harvard vaxt Per, onlar 眉莽眉n icaz蓹 edirik yeddi d蓹qiq蓹 gec, h蓹r 艧ey ola bil蓹r.
Bel蓹 ki, burada Yale alaca臒谋q el蓹c蓹 d蓹 riay蓹t etm蓹lidir.
Amma olduqca 莽ox, 12:07 at, Sizin pset deyils蓹,
kimi gec qeyd olacaq.
Is蓹 V蓹 qeyd olunur kimi gec TA-- m蓹n
h蓹l蓹 psets grading olacaq.
Bel蓹 ki, h蓹l蓹 bir sinif g枚r眉n眉r g枚r蓹c蓹ksiniz.
Lakin, bilirik ki, semestr sonunda,
b眉t眉n gec psets yaln谋z olacaq avtomatik komp眉ter zeroed.
>> Biz iki s蓹b蓹b蓹 g枚r蓹 bunu.
One, b蓹z蓹n biz almaq Dekan b蓹han蓹l蓹rl蓹 kimi, ba臒谋艧lanmaq,
sonra m蓹n h蓹l蓹 bilmir蓹m.
Bel蓹 ki, biz grading 蓹min etm蓹k ist蓹yir蓹m yaln谋z halda h蓹r 艧ey kimi, m蓹n
bir Dekan b蓹han蓹 itkin.
陌kincisi, saxlamaq mind, siz h蓹l蓹 bil蓹rsiniz
bir pset d眉艧m蓹k ki, tam h蓹cmi xal var.
V蓹 bel蓹 ki, biz sinif kimi Sizin psets yaln谋z
sizin dair蓹si 蓹min ki, var v蓹 siz onlar谋 莽al谋艧谋r谋q.
Gec bel蓹 olsa da, h蓹l蓹 d蓹 laz谋md谋r 莽蓹r莽iv蓹sind蓹 xal 眉莽眉n kredit almaq, m蓹n hesab edir蓹m.
>> Hekay蓹sidir Bel蓹 ki, m蓹n蓹vi etm蓹k Sizin psets on-vaxt var.
Onlar vaxt谋nda olmad谋qda, Bu b枚y眉k deyil ki, bilirik.
B蓹li, m蓹n h蓹r蓹k蓹t 蓹vv蓹l, h蓹r k蓹s yoxdur pset 茝laq蓹 ba臒l谋 h蓹r hans谋 bir sual谋n谋z?
B蓹li.
>> Auditoriya: 茝g蓹r biz dem蓹k mi psets biri d眉艧m蓹k olar?
>> ANDI PENG: B蓹li.
Bel蓹 ki, doqquz psets 眉mumi var d枚vr 蓹rzind蓹.
V蓹 daxilind蓹 varsa points bel蓹 蓹hat蓹 dair蓹si, yaln谋z
olduqca 莽ox, siz c蓹hd problem, siz vaxt qoyurlar
Siz var ki, g枚st蓹rir n眉mayi艧 Siz spec oxumaq etdik.
Olduqca 莽ox 蓹hat蓹 dair蓹si var.
V蓹 yerin蓹 蓹g蓹r 莽蓹r莽iv蓹sind蓹 bal, biz
a艧a臒谋 a莽谋l谋r tam 蓹hat蓹 xaricind蓹 bir.
Bel蓹 ki, sizin 眉st眉nl眉y眉 var tam v蓹 h蓹r pset c蓹hd edin.
>> H蓹tta upload-- he莽 蓹g蓹r Onlara b眉t眉n y眉klemek 莽al谋艧谋r.
V蓹 sonra biz 眉mid ed蓹 bil蓹rsiniz siz bu bal b蓹zi geri verir.
Cool.
H蓹r hans谋 dig蓹r suallar?
Great.
>> 陌kincisi, ofis bir ne莽蓹 hours-- ofis saat haqq谋nda tez qeydl蓹r.
Bel蓹 ki, ilk, erk蓹n h蓹ft蓹 g蓹lir.
He莽 bir at he莽 deyil bazar ert蓹si ofis saat.
Christabel g蓹ldi ofis saat d眉n蓹n gec蓹.
B蓹li, Christabel.
V蓹 biz ofisind蓹 n蓹 var idi D眉n蓹n gec蓹 saatlar谋nda Christabel?
>> Auditoriya: Biz dondurma var idi.
>> ANDI PENG: Bel蓹 ki, do臒ru, biz idi ofis saat dondurma 枚t蓹n gec蓹.
M蓹n ki, v蓹d ed蓹 bilm蓹z baxmayaraq Biz ofis saat dondurma laz谋md谋r
h蓹r h蓹ft蓹, m蓹n siz蓹 v蓹d ed蓹 bil蓹r n蓹 蓹h蓹miyy蓹tli d蓹r蓹c蓹d蓹 olacaq ki,
TA nisb蓹ti daha yax艧谋 t蓹l蓹b蓹.
Legit kimi, bir 眉莽 kimi.
, Il蓹 f蓹rqli Halbuki C眉m蓹 ax艧am谋, siz t蓹xmin蓹n 150 var
h蓹qiq蓹t蓹n u艧aq v蓹 dondurma vur臒ulay谋b.
V蓹 yaln谋z h蓹r k蓹s 眉莽眉n m蓹hsuldar deyil.
Hekay蓹 bel蓹 m蓹n蓹vi erk蓹n g蓹lib ofis saat v蓹 yax艧谋 艧eyl蓹r
olacaq.
>> H蓹m莽inin, sual haz谋rlanm谋艧 g蓹lir.
S蓹n bilirs蓹n?
As谋l谋 olmayaraq n蓹 TA艦, m蓹n dey蓹r蓹k edilmi艧dir edir蓹m,
biz bir ne莽蓹 t蓹l蓹b蓹 蓹ld蓹 etdik 10:50, kimi, C眉m蓹 ax艧am谋 g眉n眉 g蓹lib ed蓹n
spec oxumaq olmayan m蓹n蓹 k枚m蓹k kimi olan, m蓹n蓹 k枚m蓹k.
T蓹蓹ss眉f ki, o n枚qt蓹d蓹 var 莽ox deyil biz siz蓹 k枚m蓹k ed蓹 bil蓹r.
Bel蓹 ki, erk蓹n h蓹ft蓹 g蓹lm蓹k edin.
Ofis saat erk蓹n g蓹lir.
Sual haz谋rlanm谋艧 gel.
Kimi, siz olun t蓹l蓹b蓹, burada
bel蓹 ki, olmaq laz谋md谋r Ta艧 boyunca siz蓹 yard谋m ed蓹 bil蓹r
n蓹 ofis saat olan olmal谋d谋r 眉莽眉n ayr谋lm谋艧 olunacaq.
>> 陌kincisi, m蓹n professor bilir蓹m testl蓹r biz蓹 s眉rpriz etm蓹k ist蓹yir蓹m.
M蓹n bir professor o idi yo kimi, yeri g蓹lmi艧k蓹n,
ki, aral谋q xat谋rlay谋ram n枚vb蓹ti Bazar ert蓹si var.
B蓹li, m蓹n ki, aral谋q haqq谋nda bilmirdim.
Bel蓹likl蓹, m蓹n ki, olmaq 眉莽眉n gedir蓹m TA ki, siz b眉t眉n viktorina xat谋rlad谋r
Bilirsiniz, 莽眉nki 0-, biz CS ist蓹yirik.
陌ndi biz g枚r眉l蓹n seriallarda var ki, siz almaq Bu viktorina 0 niy蓹, eh, 1 viktorina deyil?
OLDU.
Oh, m蓹n ki, bir s谋ra chuckles var.
OLDU.
>> Bel蓹 ki, viktorina 0, 蓹g蓹r 14 oktyabr olacaq Bazar ert蓹si-莽蓹r艧蓹nb蓹 b枚lm蓹sind蓹 ist蓹yirik
v蓹 15 oktyabr siz 蓹g蓹r 脟蓹r艧蓹nb蓹 ax艧am谋-C眉m蓹 ax艧am谋 b枚lm蓹.
Bu 眉莽眉n m眉raci蓹t etmir Harvard sizin
M蓹n siz蓹 b眉t眉n olacaq edir蓹m who-- 14 viktorina alaraq.
>> Bel蓹 ki, B蓹li, g蓹l蓹n h蓹ft蓹, 蓹g蓹r David, m眉hazir蓹, gedir
B蓹li, bu bar蓹d蓹 bel蓹 viktorina g蓹l蓹n h蓹ft蓹, b眉t眉n
莽眉nki 艧ok deyil Siz b枚lm蓹 g蓹ldi
v蓹 bilirik ki, sizin viktorina 0 iki h蓹ft蓹 var.
V蓹 biz n蓹z蓹rd蓹n laz谋md谋r sessiyalar谋 v蓹 h蓹r 艧ey.
Haqq谋nda he莽 bir narahatl谋q ki, qorxuram.
H蓹r hans谋 bir sual谋n谋z H蓹r hans谋 bir sual谋n谋z, 蓹vv蓹l b眉t眉n ba臒l谋 maddi-texniki m蓹s蓹l蓹l蓹ri,
grading, ofis saat, b枚lm蓹l蓹r?
B蓹li.
>> Auditoriya: viktorina edir So m眉hazir蓹 zaman谋 olacaq?
>> ANDI PENG: B蓹li.
Viktorina Bel蓹 ki, m蓹n hesab edir蓹m ki, 60 ki, zaman interval谋 n蓹z蓹rd蓹 d蓹qiq蓹
Siz yaln谋z almaq laz谋md谋r ki, m眉hazir蓹 zal谋nda.
Bel蓹 ki, g蓹lib yoxdur t蓹sad眉fi 7:00 PM kimi, on.
Bu, b眉t眉n yax艧谋.
B蓹li.
Cool.
>> Oldu.
Bel蓹 ki, biz olacaq Siz蓹 bir anlay谋艧 t蓹qdim
David c眉r art谋q bu h蓹ft蓹 Bu 枚t蓹n h蓹ft蓹 m眉hazir蓹 d蓹 toxunub.
Bu gdb deyirl蓹r.
V蓹 nec蓹 bir 莽ox, is蓹 sizin psets yaz谋 蓹lb蓹tt蓹,
deyir ki, bir b枚y眉k d眉ym蓹sin蓹 fark etdik Sizin IDE 眉st "debug"
OLDU.
Bel蓹 ki, indi biz, h蓹qiq蓹t蓹n, axtar谋b tapmaq 眉莽眉n almaq laz谋md谋r n蓹 d眉ym蓹sini sirr h蓹qiq蓹t蓹n
yoxdur.
V蓹 m蓹n bir deyil, siz蓹 z蓹man蓹t g枚z蓹l, g枚z蓹l bir 艧ey.
>> Indiy蓹 q蓹d蓹r, m蓹n hesab edir蓹m up So iki 艧ey var oldu
t蓹l蓹b蓹l蓹r ad蓹t蓹n olmu艧dur psets ay谋klama zaman edir.
One, onlar da 蓹lav蓹 printf () - bel蓹 bir ne莽蓹 x蓹tl蓹ri,
Onlar printf () 蓹lav蓹 - oh, bu d蓹yi艧蓹n n蓹dir?
Oh, bu d蓹yi艧蓹n n蓹, indi v蓹 c眉r inki艧af g枚rm蓹k
Sizin kodu 莽al谋艧谋r kimi.
V蓹 ya u艧aq n蓹 ikinci metodu onlar yaln谋z b眉t眉n 艧ey yazmaq
v蓹 sonra sonunda bu kimi gedin.
脺mid edir蓹m ki, i艧l蓹yir.
M蓹n siz蓹 z蓹man蓹t, gdb daha yax艧谋d谋r Bu 眉sullar谋 h蓹m 莽ox.
B蓹li.
Bel蓹 ki, bu yeni yax艧谋 dost olacaq.
Bu g枚z蓹l bir 艧ey var, 莽眉nki ki, vizual ekran, h蓹m d蓹
n蓹 code edir m眉蓹yy蓹n bir n枚qt蓹d蓹
el蓹c蓹 d蓹 n蓹 b眉t眉n kimi d蓹yi艧蓹nl蓹r da艧谋y谋r谋q,
Onlar谋n d蓹y蓹rl蓹ri n蓹 kimi, x眉susi n枚qt蓹d蓹.
V蓹 bu 艧蓹kild蓹, h蓹qiq蓹t蓹n bil蓹rsiniz Sizin kodu breakpoints.
Siz x蓹tti il蓹 x蓹tti il蓹 莽al谋艧t谋rabilirsiniz.
V蓹 gdb yaln谋z 眉莽眉n olacaq Siz, sizin 眉莽眉n g枚st蓹rilir
n蓹 b眉t眉n d蓹yi艧蓹nl蓹rin onlar n蓹 edirl蓹r ki,
n蓹 kodu olur.
V蓹 bel蓹 bir 艧蓹kild蓹, bu 莽ox asan g枚rm蓹k 眉莽眉n
n蓹 printf-ing 蓹v蓹zin蓹 ba艧 ya b蓹yanatlar yaz谋rlar.
>> Bel蓹likl蓹, biz bu n眉mun蓹 ed蓹c蓹yik.
Bel蓹 ki, bu bir az m眉c蓹rr蓹d g枚r眉n眉r.
He莽 bir narahatl谋q, biz n眉mun蓹l蓹ri ed蓹c蓹yik.
V蓹 bel蓹 mahiyy蓹tc蓹, 眉莽 b枚y眉k, Siz gdb laz谋md谋r funksiyalar谋 蓹n 莽ox istifad蓹 olunan
Next, art谋q add谋m, v蓹 d眉ym蓹l蓹ri daxil add谋m.
M蓹n art谋q ba艧 gedir蓹m Orada, h蓹qiq蓹t蓹n, indi.
>> Bel蓹 ki, u艧aqlar b眉t眉n g枚r蓹 bil蓹rsiniz v蓹 ya bir az zoom laz谋md谋r?
Geri, siz bil蓹rsiniz?
M蓹n zoom laz谋md谋r?
Bir azca?
S蓹rin, OK.
Biz orada getm蓹k.
OLDU.
>> Bel蓹 ki, M蓹n burada var g枚rm蓹mi艧 眉莽眉n h蓹yata ke莽irilm蓹si.
V蓹 u艧aqlar bir 莽ox yazd谋 ki, formas谋 is蓹 loop g枚rm蓹mi艧
etm蓹k 眉莽眉n bir m眉k蓹mm蓹l m蓹qbul yoldur Bu sad蓹c蓹 n蓹 眉莽眉n ba艧qa bir yol pseudocode
modulo b枚lm蓹k.
Sonra ola bil蓹r, 莽眉nki sizin d蓹y蓹ri v蓹 sonra qalan yoxdur.
V蓹 sonra yaln谋z bil蓹rsiniz b眉t眉n birlikd蓹 蓹lav蓹 edin.
Edir蓹m n蓹 m蓹ntiq yoxdur burada h蓹r k蓹s m蓹nada,
Biz ba艧lamaq 蓹vv蓹l?
Kimi?
Cool.
Great.
Bu olduqca sexy par莽a var kodu, m蓹n dey蓹rdim.
M蓹n David, ifad蓹 ed蓹r蓹k, bir m眉dd蓹t sonra, m眉hazir蓹,
B眉t眉n kodu g枚rmeye ba艧lamaq laz谋md谋r g枚z蓹l bir 艧ey kimi.
V蓹 b蓹z蓹n g枚z蓹l g枚r蓹nd蓹 indeksi, bel蓹 bir g枚z蓹l hissi var.
>> Lakin, bu kodu 莽ox ederken g枚z蓹l, d眉zg眉n i艧l蓹mir.
Bel蓹 ki, bu bar蓹d蓹 check50 run ed蓹k.
50 20-- oop yoxlay谋n.
2?
Ki pset2 deyilmi?
B蓹li.
Oh, pset1.
OLDU.
Bel蓹likl蓹, biz check50 ax谋r.
>> V蓹 u艧aqlar burada g枚r蓹 bil蓹rsiniz kimi, Bu hallarda bir ne莽蓹 u臒ursuz oldu.
V蓹 b蓹zi 眉莽眉n Sizin problem d蓹stl蓹ri bunu 蓹lb蓹tt蓹 ki,
ah, niy蓹 i艧 deyil, kimi ist蓹yirik.
N蓹 眉莽眉n b蓹zi i艧 d蓹y蓹rl蓹r lakin ba艧qalar谋 眉莽眉n?
Yax艧谋, gdb siz r蓹q蓹m k枚m蓹k edir niy蓹 o giri艧 i艧 deyil.
>> OLDU.
Bel蓹 ki, bir g枚r蓹k M蓹n check50 ver蓹 bilmirdi 莽ek
0,41 giri艧 d蓹y蓹ri idi.
D眉zg眉n cavab Bel蓹 ki, Siz 蓹ld蓹 edilm蓹lidir 4 edir.
Amma 蓹v蓹zin蓹 m蓹n 莽ap edir蓹m n蓹 s蓹hv 3-n edir.
Bel蓹 ki, yaln谋z, yaln谋z 枚z眉n眉z bu run bildirin check50 i艧 ki, 蓹min olun.
Nin ./greedy ed蓹k.
Ba臒谋艧lay谋n, m蓹n g枚rm蓹mi艧 etm蓹k laz谋md谋r.
Biz orada getm蓹k.
陌ndi ./greedy.
>> N蓹 q蓹d蓹r borclu?
Nin 0,41 ed蓹k.
V蓹 yep, biz burada bax Bu 3 tipi ki,
zaman d眉zg眉n cavab, 蓹slind蓹, 4 olmal谋d谋r.
Bel蓹 ki, gdb daxil bildirin v蓹 biz nec蓹 Bu problem t蓹yinat haqq谋nda getm蓹k bil蓹r.
>> Ilk add谋m bel蓹 h蓹mi艧蓹 kodu ay谋klama
breakpoint m眉蓹yy蓹n edir, v蓹 ya bir n枚qt蓹 olan siz
komp眉ter v蓹 ya ist蓹yir蓹m ay谋klama baxaraq ba艧lamaq.
茝g蓹r bel蓹 deyil, h蓹qiq蓹t蓹n, Sizin problem n蓹,
ad蓹t蓹n, tipik 艧ey ist蓹yirik Bunu 蓹sas Bizim breakpoint m眉蓹yy蓹n edir.
Bel蓹 ki, u艧aqlar bu ed蓹 bil蓹rsiniz 蓹g蓹r orada q谋rm谋z谋 d眉ym蓹sin蓹,
yep, m蓹n蓹 q蓹bulu olan bir 蓹sas funksiyas谋 眉莽眉n breakpoint.
Hesab edir蓹m ki, bas谋n.
>> V蓹 sonra m蓹n debug d眉ym蓹sini q蓹d蓹r getm蓹k olar.
Hesab edir蓹m ki, d眉ym蓹sini bas谋n.
M蓹n 蓹g蓹r m蓹n蓹 geri zoom imkan verir.
Biz orada getm蓹k.
Bel蓹 ki, biz, burada, sa臒 bir panel var.
M蓹n geri, u艧aqlar k蓹d蓹rl蓹ndim, siz h蓹qiq蓹t蓹n h蓹qiq蓹t蓹n d蓹 g枚rm蓹k bilm蓹z.
Amma mahiyy蓹tc蓹, b眉t眉n bu h眉ququ panel edir
h蓹m d蓹 qeyd track saxlan谋lmas谋 edir kod x蓹tt line,
Komp眉ter Hal-haz谋rda 莽al谋艧an, h蓹m莽inin d蓹yi艧蓹nl蓹rin b眉t眉n kimi
burada.
>> Bel蓹 ki, q蓹pik, pul, n var, b眉t眉n m眉xt蓹lif 艧eyl蓹r elan
Bu n枚qt蓹d蓹.
He莽 bir narahatl谋q, 莽眉nki biz h蓹qiq蓹t蓹n var h蓹l蓹 he莽 bir d蓹yi艧蓹nl蓹rin onlar谋 ba艧lat谋lm谋艧.
Sizin komp眉ter Bel蓹 ki, komp眉ter yaln谋z g枚r蓹n oldu,
oh, 32767 son istifad蓹 funksiyas谋 m蓹nim komp眉ter yadda艧 kosmik.
Q蓹pik haz谋rda harada ki var.
Amma he莽 bir d蓹f蓹 siz kodu run Bu ba艧lat谋lm谋艧 olmal谋d谋r.
>> Bel蓹 ki, 莽ox, x蓹tti il蓹 ged蓹k line, n蓹 burada olur.
OLDU.
Burada bel蓹 眉莽 M蓹n yaln谋z izah d眉ym蓹l蓹ri.
Siz Play, v蓹 ya Run funksiyas谋 var d眉ym蓹sini, siz d眉ym蓹sini 眉z蓹rind蓹 add谋m
v蓹 siz d蓹 d眉ym蓹sini daxil add谋m var.
V蓹 mahiyy蓹tc蓹, b眉t眉n 眉莽 Onlara yaln谋z kod vasit蓹sil蓹 getm蓹k
v蓹 m眉xt蓹lif 艧eyl蓹r.
>> Bel蓹 ki, ad蓹t蓹n, siz ay谋klama etdiyiniz zaman, biz yaln谋z Play hit ist蓹mir蓹m,
Play yaln谋z davam ed蓹c蓹k, 莽眉nki Bunun sonuna kodu.
V蓹 sonra h蓹qiq蓹t蓹n deyil n蓹 sizin problem
Bir ne莽蓹 breakpoints halda deyil.
Bir ne莽蓹 breakpoints m眉蓹yy蓹n ets蓹niz, yaln谋z avtomatik olaraq
bir breakpoint run, n枚vb蓹ti, n枚vb蓹ti.
Lakin bu halda biz yaln谋z bir, 莽眉nki
bizim yol i艧l蓹m蓹k ist蓹yir蓹m alt 眉st a艧a臒谋.
Bel蓹 ki, d眉ym蓹sini ignore olacaq 陌ndi bu proqram谋n m蓹qs蓹dl蓹ri 眉莽眉n.
>> Funksiyas谋 眉z蓹rind蓹 Add谋m Bel蓹 ki, yaln谋z h蓹r bir x蓹tti 眉z蓹rind蓹 add谋mlar
v蓹 siz蓹 deyir n蓹 komp眉ter edir.
Funksiyas谋 daxil Step gedir faktiki funksiyas谋 daxil
ki, kodu sizin line var.
Bel蓹 ki, m蓹s蓹l蓹n, printf kimi () do臒ru, bir funksiyas谋 var?
M蓹n fiziki add谋m ist蓹yirdi printf () funksiyas谋 daxil,
M蓹n, h蓹qiq蓹t蓹n, par莽a daxil getm蓹k olard谋 printf () yaz谋l谋 v蓹 g枚rm蓹k edildi kodu
n蓹 var olur.
>> Amma ad蓹t蓹n, biz g眉man biz siz蓹 code i艧l蓹yir.
Biz () i艧l蓹yir printf da艧谋m谋r.
Biz GetInt () i艧 oldu臒unu da艧谋m谋r.
Bel蓹 ki, he莽 bir ehtiyac 眉莽眉n var bu funksiyalar谋 daxil add谋m.
Amma funksiyalar谋 var, 蓹g蓹r 脰z眉n眉z yazmaq
Kontrol ist蓹diyiniz ki, neler h蓹yata,
add谋m ist蓹yir蓹m ki, funksiyas谋 daxil.
>> Bel蓹 ki, indi biz yaln谋z olacaq kodu bu par莽a 眉z蓹rind蓹 add谋m.
Bel蓹 ki, g枚r蓹k.
Oh, 莽ap, "Oh hai nec蓹 莽ox d蓹yi艧iklik borclu? "
Biz qay臒谋 yoxdur.
Biz bu i艧 bilirik, bel蓹 ki, biz art谋q add谋m.
>> Bel蓹 ki, n, bizim float olan ki, biz initialized-- var v蓹 ya declared--
眉st q蓹d蓹r, biz indi ist蓹yirik GetFloat ki, b蓹rab蓹r ().
Bel蓹 ki, 眉z蓹rind蓹 add谋m ed蓹k.
V蓹 biz g枚rm蓹k bottom Burada proqram
d蓹y蓹ri daxil m蓹n蓹 isteyen olunur.
Bel蓹 ki, giri艧 biz ist蓹yirik d蓹y蓹r imkan 0,41 olan, burada test.
Great.
>> Bel蓹 ki, indi n-- u艧aqlar g枚r眉rs眉n眉z Burada Alt bu
saxlan谋lmal谋d谋r 脟眉nki biz h蓹l蓹 dair蓹vi deyil, bu
ox艧ar n蓹h蓹ng saxlan谋l谋r 0,4099999996 edir float,
kifay蓹t q蓹d蓹r yax谋n olan bizim m蓹qs蓹dl蓹ri, indi 0,41 眉莽眉n.
V蓹 sonra biz, sonra kimi g枚r眉rs眉n眉z biz proqram谋 眉z蓹rind蓹 g眉cl蓹ndirm蓹kl蓹 davam,
Burada sonra n olmu艧dur dair蓹vi v蓹 q蓹pik 41 olmu艧dur.
Great.
Bel蓹 ki, biz yuvarlaqla艧d谋rma nin i艧 ki, bilirik.
Biz bilirik ki, q蓹pik do臒ru say谋,
bel蓹 ki, bilirik h蓹qiq蓹t蓹n problem.
>> Bel蓹likl蓹, biz add谋m davam Bu proqram haqq谋nda.
Biz burada getm蓹k.
V蓹 bel蓹 kodu bu x蓹tt sonra, biz biz n蓹 q蓹d蓹r d枚rdd蓹 bilm蓹lidir.
Biz art谋q add谋m.
V蓹 biz, 蓹slind蓹, bir var 莽ox d枚rdd蓹bir biz 25 莽谋x谋lacaq etdik, 莽眉nki
41 bizim ilkin d蓹y蓹rind蓹n.
V蓹 biz sent 眉莽眉n 16 sol var.
>> H蓹r k蓹s nec蓹 ba艧a d眉艧m蓹k olar Proqram vasit蓹sil蓹 g眉cl蓹ndirm蓹kl蓹 olunur
v蓹 niy蓹 q蓹pik art谋q 16 olmu艧dur v蓹 n蓹, indi pul 1 oldu?
H蓹r k蓹s m蓹ntiq t蓹qib edir?
Cool.
Bu k蓹sir, bel蓹 ki, Proqram谋n i艧, sa臒?
Biz m蓹hz bunu bilirik biz bunu ist蓹yir蓹m n蓹.
V蓹 biz, h蓹qiq蓹t蓹n, olmad谋 oh, 莽ap var, n蓹
bu n枚qt蓹d蓹 q蓹pik edir bu n枚qt蓹d蓹 pul edir.
>> Biz proqram谋 ke莽ir davam edir.
脺z蓹rind蓹 add谋m.
Cool.
Biz Dimes 眉z蓹rind蓹 gedin.
Great.
Biz q蓹bul ki, g枚r蓹c蓹ksiniz bir dime 眉莽眉n $ 0.10 off.
陌ndi biz iki pul var.
Ki, do臒ru deyil.
>> Biz pennies art谋q getm蓹k v蓹 biz biz q蓹pik art谋q t蓹rk var ki.
Hmm, ki, q蓹rib蓹 deyil.
Burada proqram谋nda, m蓹n idi M蓹nim pennies 莽谋x谋lacaq 眉莽眉n.
Y蓹qin ki, m蓹n yaln谋z idi ki, x蓹tt h眉ququ edir.
V蓹 t蓹蓹ss眉f ki, siz g枚r蓹 bil蓹rsiniz Burada biz bilirik, 莽眉nki
biz g眉cl蓹ndirm蓹kl蓹 olunur ki, x蓹tl蓹ri 32 v蓹 33 vasit蓹sil蓹
oldu臒u proqram var d眉zg眉n d蓹yi艧蓹nl蓹r run idi.
Bel蓹likl蓹, biz baxmaq v蓹 oh g枚r蓹 bil蓹rsiniz, M蓹n burada q蓹pik subtracting al谋ram,
lakin m蓹n, h蓹qiq蓹t蓹n deyil蓹m M蓹nim sikk蓹 d蓹y蓹r 蓹lav蓹.
M蓹n q蓹pik 蓹lav蓹 edir蓹m.
M蓹n 蓹lav蓹 etm蓹k ist蓹mir蓹m q蓹pik, m蓹n pul 蓹lav蓹 etm蓹k ist蓹yir蓹m.
Bel蓹likl蓹, biz pul 眉莽眉n d蓹yi艧dirm蓹k 蓹g蓹r, biz bir i艧 proqram谋 var.
M蓹n check50 莽al谋艧t谋rabilirsiniz.
Siz yaln谋z GDB h眉ququnun h蓹yata 莽谋xmaq bil蓹r burada v蓹 sonra check50 ax谋r.
M蓹n yaln谋z bunu ed蓹 bil蓹r.
M蓹n g枚rm蓹mi艧 etm蓹k laz谋md谋r.
0,41.
V蓹 burada, bu 莽ap var d眉zg眉n cavab h蓹yata.
>> U艧aqlar G枚rd眉y眉n眉z kimi, gdb h蓹qiq蓹t蓹n g眉cl眉 bir vasit蓹dir
biz 莽ox kodu zaman 眉莽眉n davam v蓹 bir 莽ox d蓹yi艧蓹nl蓹r
kimi, bizim 眉莽眉n 莽蓹tin ki, bir insan, takip.
gdb komp眉ter, ay谋klama, imkan谋 var
h蓹r 艧ey takip.
M蓹n y蓹qin ki, Visionaire, siz u艧aqlar, bilirik b蓹zi seqmentasiyas谋 莽at谋艧mazl谋qlar edib ola bil蓹r
莽al谋艧an idi, 莽眉nki Sizin array h眉dudlar谋ndan k蓹narda.
Sezar M蓹s蓹l蓹n, ki m蓹hz m蓹n burada n蓹 h蓹yata etdik.
>> Bel蓹likl蓹, m蓹n yoxlamaq unuttum n蓹 蓹g蓹r olur m蓹n
iki command line d蓹lill蓹ri yox idi.
M蓹n yaln谋z 莽ek qoymad谋.
M蓹n Debug-- run 蓹g蓹r v蓹 m蓹n m眉蓹yy蓹n M蓹nim breakpoint orada sa臒.
M蓹n debug ax谋r.
>> OLDU.
B蓹li.
Y蓹ni 蓹slind蓹, gdb idi m蓹n蓹 demi艧蓹m
bir seqmentasiya g眉nah idi.
M蓹n davam n蓹 bilmir蓹m orada, lakin m蓹n onu qa莽d谋m zaman
Bu i艧l蓹yirdi.
Siz vasit蓹sil蓹 kodu x蓹tl蓹ri 莽al谋艧t谋rd谋臒谋n谋zda v蓹 Gdb yaln谋z bird蓹n siz蓹 莽谋xmaq bil蓹r
getm蓹k v蓹 q谋rm谋z谋 s蓹hv n蓹 baxmaq.
Bu, hey, siz蓹 deyim bir seqmentasiya g眉nah var idi,
siz daxil olmaq 眉莽眉n c蓹hd o dem蓹kdir ki, yox idi bir s谋ra yer.
B蓹li.
>> N枚vb蓹ti problem bel蓹 bu h蓹ft蓹 m眉蓹yy蓹n, u艧aqlar
y蓹qin ki, bir 莽ox olacaq d蓹yi艧蓹nl蓹r 蓹traf谋nda 眉z蓹n.
Siz 蓹min olmaq fikrind蓹 deyilik n蓹 onlar b眉t眉n m眉蓹yy蓹n bir n枚qt蓹d蓹 dem蓹kdir.
Bel蓹 ki, gdb h蓹qiq蓹t蓹n figuring siz蓹 k枚m蓹k ed蓹c蓹k onlar b眉t眉n b蓹rab蓹r n蓹
v蓹 vizual ki, g枚r蓹c蓹ksiniz ed蓹.
H蓹r k蓹s nec蓹 s蓹hv edir ki, h蓹r hans谋 bir i艧 idi?
Cool.
Oldu.
Bel蓹 ki, sonra, biz sa臒 dal谋艧 gedir
m眉xt蓹lif d枚rd var Bu h蓹ft蓹 眉莽眉n n枚v n枚vl蓹ri.
Nec蓹 bir 莽ox ilk b眉t眉n, biz ba艧lamaq 蓹vv蓹l,
pset3 眉莽眉n b眉t眉n spec oxumaq?
OLDU.
M蓹n siz蓹 u艧aqlar f蓹xr edir蓹m.
Bu sinif yar谋s谋nda kimi olan son d蓹f蓹 xeyli 莽oxdur.
>> Bel蓹 ki, b枚y眉k zaman, 莽眉nki biz m蓹zmunu haqq谋nda dan谋艧maq
m蓹ruz蓹 ya 眉zr da, section-- da M蓹n ist蓹yir蓹m
ki, bir 莽ox aid geri pset n蓹
v蓹 ist蓹diyiniz nec蓹 Sizin pset ki, h蓹yata ke莽irir.
Siz蓹 olan g蓹lir 蓹g蓹r Bel蓹 ki, spec oxumaq, bu laz谋md谋r
Siz anlamaq 眉莽眉n 莽ox asan olacaq M蓹n dey蓹nd蓹 s枚hb蓹t al谋ram n蓹,
hey oh, bu, h蓹qiq蓹t蓹n ola bil蓹r bu c眉r h蓹yata ke莽irilm蓹si 眉莽眉n yax艧谋 bir yerdir.
Oxumaq olan sizin So Sizin pset bir hiss蓹si kimi, bilirik ki SPEC,
Siz olacaq n枚v bir n枚v眉 yaz谋n.
Bel蓹 ki, bu 莽ox faydal谋 ola bil蓹r Siz bir 莽ox bu g眉n.
>> Bel蓹likl蓹, biz il蓹 ba艧lamaq laz谋md谋r, mahiyy蓹tc蓹, 蓹n sad蓹 n枚v眉
sort, se莽im sort.
眉莽眉n tipik alqoritm Biz bu bar蓹d蓹 getm蓹k ist蓹diyiniz nec蓹
is-- David b眉t眉n bu il蓹 getdi m眉hazir蓹, m蓹n tez birlikd蓹 h蓹r蓹k蓹t ed蓹c蓹yik
burada siz mahiyy蓹tc蓹 d蓹y蓹rl蓹rin bir s谋ra var.
V蓹 sonra tapmaq ki莽ik 莽e艧idl蓹nm蓹mi艧 d蓹y蓹ri
v蓹 ki, d蓹y蓹ri il蓹 d蓹yi艧dirm蓹k ilk 莽e艧idl蓹nm蓹mi艧 d蓹y蓹ri.
V蓹 sonra yaln谋z t蓹krar saxlamaq Sizin siyah谋s谋na qalan.
>> V蓹 burada bir vizual 艧蓹rh i艧 ki nec蓹.
Biz 蓹g蓹r Bel蓹 ki, m蓹s蓹l蓹n, ba艧lamaq 眉莽眉n be艧 elementl蓹ri bir s谋ra, indeksi il蓹
4 0, 3, 5, 2, 6 v蓹 4 d蓹y蓹rl蓹r Bel蓹 ki, haz谋rda serial谋n yerl蓹艧dirilmi艧,
biz yaln谋z g眉man olacaq onlar b眉t眉n 莽e艧idl蓹nm蓹mi艧 oldu臒unu
biz ba艧qa test deyil, 莽眉nki.
>> Bel蓹 ki, nec蓹 bir se莽im sort ki i艧 ki, ilk olard谋 deyil
tam ax谋r 莽e艧idl蓹nm蓹mi艧 serial谋n.
Bu ki莽ik d蓹y蓹r se莽m蓹k olard谋.
Bu halda, 3, sa臒 indi ki莽ik deyil.
5 olur.
Xeyr, 5 than-- b枚y眉k deyil v蓹 ya sorry, 3 than-- az deyil.
Bel蓹 ki, minimum d蓹y蓹ri h蓹l蓹 3.
V蓹 sonra 2 almaq.
oh, g枚r眉r komp眉ter, 2 az 3 edir.
2 indi minimum d蓹y蓹ri olmal谋d谋r.
V蓹 bel蓹 ki, ilk d蓹y蓹ri il蓹 2 svoplar谋.
>> Bel蓹 ki, bir 枚t眉rm蓹sind蓹n sonra, biz h蓹qiq蓹t蓹n g枚r眉rs眉n眉z ki, 2 v蓹 3 d蓹yi艧dirildikd蓹.
V蓹 biz yaln谋z bunu davam edirik Bu yenid蓹n serial谋n qalan.
Bel蓹 ki, biz yaln谋z ax谋r olacaq serial谋n son d枚rd g枚st蓹ricil蓹ri.
Biz 3 oldu臒unu g枚r蓹c蓹ksiniz n枚vb蓹ti minimum d蓹y蓹ri.
Bel蓹likl蓹, biz 4 il蓹 d蓹yi艧dirm蓹k olacaq.
V蓹 sonra biz yaln谋z saxlamaq olacaq n蓹hay蓹t q蓹d蓹r ke莽蓹n, siz
bir s谋ralan谋r array 蓹ld蓹 olan 2, 3, 4, 5, 6, b眉t眉n s谋ralan谋r.
H蓹r k蓹s m蓹ntiqi anlamaq olar bir se莽im sort i艧l蓹ri nec蓹?
>> Siz yaln谋z bir n枚v var minimum d蓹y蓹ri.
Siz n蓹 takip saxlan谋lmas谋 edirik.
Onu tapmaq zaman, siz onu d蓹yi艧dirm蓹k serial谋n ilk d蓹y蓹ri il蓹
v蓹 ya, ilk d蓹y蓹r array n枚vb蓹ti d蓹y蓹r.
Cool.
>> Bel蓹 ki, u艧aqlar kimi n枚v q谋sa fikir g枚rd眉m,
biz bu pseudocode olacaq.
Bel蓹 ki, geri u艧aqlar ist蓹yirsinizs蓹 bir masada bir qrup, h蓹r k蓹s蓹 t蓹艧kil
bir az t蓹r蓹fda艧 t蓹艧kil ed蓹 bil蓹r, m蓹n gedir蓹m 眉莽 d蓹qiq蓹 kimi u艧aqlar verm蓹k
yaln谋z vasit蓹sil蓹 dan谋艧maq m蓹ntiq, ingilis,
biz h蓹yata ed蓹 bil蓹r nec蓹 pseudocode bir se莽im n枚v yazmaq 眉莽眉n.
V蓹 konfet var.
G蓹lm蓹k v蓹 konfet almaq edin.
Siz geri oldu臒unuzu v蓹 siz ist蓹yirsinizs蓹 candy, m蓹n siz蓹 konfet atmaq olar.
茝slind蓹, S蓹ninl蓹 s蓹rin yoxdur.
Oh, sorry.
OLDU.
>> Biz, ist蓹yirsinizs蓹 Bel蓹 ki, bir sinif, yazmaq pseudocode
bir yana艧ma bil蓹r nec蓹 眉莽眉n Bu problem, yaln谋z 莽ekinmeyin.
M蓹n yaln谋z 蓹traf谋nda getm蓹k v蓹 laz谋md谋r, m蓹qs蓹dil蓹 qruplar xahi艧
n枚vb蓹ti x蓹tti biz n蓹 bunu etm蓹k laz谋md谋r.
Sizl蓹rin ba艧lamaq ist蓹yirsinizs蓹 Bel蓹 ki, off, ilk 艧ey n蓹 var
Siz 莽al谋艧d谋臒谋n谋z zaman n蓹 etm蓹k Bu proqram h蓹ll etm蓹k 眉莽眉n bir yol h蓹yata
se莽ilmi艧 siyah谋s谋n谋 d眉zm蓹k 眉莽眉n?
Yaln谋z biz g眉man ed蓹k bir s谋ra, b眉t眉n h眉ququ var?
>> Auditoriya: Siz bir yaratmaq ist蓹yirik sort [I艧itilemez] sen ki,
b眉t眉n array vasit蓹sil蓹 莽al谋艧谋r.
>> ANDI PENG: Sa臒.
Bel蓹 ki, t蓹krarlamaq ist蓹yir蓹m olacaq h蓹r kosmosda, sa臒?
Bel蓹 ki, b枚y眉k.
Sizl蓹rin m蓹n蓹 verm蓹k ist蓹yirsinizs蓹 n枚vb蓹ti geri, evet x蓹tti.
>> Auditoriya: onlar谋 yoxlay谋n b眉t眉n ki莽ik 眉莽眉n.
>> ANDI PENG: biz d蓹 gedin.
Bel蓹 ki, biz vasit蓹sil蓹 getm蓹k v蓹 check ist蓹diyiniz minimum d蓹y蓹ri, sa臒 n蓹 g枚rm蓹k?
M蓹n ki, q谋saltmaq 眉莽眉n gedir蓹m "min".
Sizl蓹rin sonra n蓹 ist蓹yirsiniz Siz minimum d蓹y蓹ri g枚rd眉k?
>> Auditoriya: [i艧itilemez]
ANDI PENG: Bel蓹 ki, ist蓹diyiniz olacaq ki, serial谋n ilk il蓹 ke莽id,
sa臒?
M蓹n dem蓹k gedir蓹m, ba艧lan臒谋c谋 var.
Oldu.
Bel蓹 ki, indi ilk d蓹yi艧dirildikd蓹 etdik ki, bir, n蓹 sonra n蓹 etm蓹k ist蓹yirsiniz?
Bel蓹 ki, indi biz bilirik ki, burada bu bir sa臒, ki莽ik d蓹y蓹r olmal谋d谋r?
Sonra 蓹lav蓹 istirah蓹t 莽e艧idl蓹nm蓹mi艧 var serial谋n.
Bel蓹 ki, 蓹g蓹r, burada n蓹 etm蓹k ist蓹dikl蓹rini u艧aqlar m蓹n蓹 n枚vb蓹ti line verm蓹k ist蓹yirsiniz?
Auditoriya: Bel蓹 sonra t蓹krarlamaq ist蓹yir蓹m serial谋n qalan vasit蓹sil蓹.
ANDI PENG: B蓹li.
V蓹 bel蓹 vasit蓹sil蓹 iterating n蓹 c眉r biz y蓹qin ki, laz谋md谋r dem蓹k?
Hans谋 n枚v of--
>> Auditoriya: Oh, 蓹lav蓹 d蓹yi艧蓹n?
ANDI PENG: Y蓹qin ki, loop 眉莽眉n ba艧qa, sa臒?
Bel蓹 ki, biz y蓹qin ki, ist蓹yir蓹m olacaq through-- b枚y眉k t蓹krarlamaq.
V蓹 sonra geri getm蓹k olacaq v蓹 y蓹qin ki, yen蓹 minimum yoxlamaq,
sa臒?
V蓹 t蓹krar saxlamaq olacaq Bu, loops 莽眉nki yaln谋z gedir
sa臒, 莽al谋艧an saxlamaq 眉莽眉n?
>> Bel蓹 ki, u艧aqlar, G枚r眉nd眉y眉 kimi yaln谋z 眉mumi pseudocode var
biz ist蓹yirik nec蓹 bu proqram baxmaq.
Burada Bu t蓹krarlamaq, biz n蓹 ad蓹t蓹n bizim kodu yazmaq laz谋md谋r
biz vasit蓹sil蓹 t蓹krarlamaq ist蓹yirsinizs蓹 strukturunun array, hans谋 n枚v?
M蓹n hesab edir蓹m ki, Christabel art谋q 蓹vv蓹l bildirib.
>> Auditoriya: loop 眉莽眉n A.
>> ANDI PENG: loop 眉莽眉n?
M蓹hz.
Bel蓹 ki, bu y蓹qin ki, bir loop 眉莽眉n olacaq.
Dem蓹k gedir burada bir 莽ek n蓹dir?
Ad蓹t蓹n, siz yoxlamaq ist蓹yirsinizs蓹 bir 艧ey bir 艧ey varsa else--
>> Auditoriya: 茝g蓹r.
>> ANDI PENG: An 蓹g蓹r, sa臒?
Burada svop V蓹 sonra, biz laz谋md谋r sonra art谋q getm蓹k David 莽眉nki
el蓹c蓹 d蓹 m眉hazir蓹 vasit蓹sil蓹 getdi.
V蓹 sonra ikinci t蓹krarlamaq implies--
>> Auditoriya: loop 眉莽眉n ba艧qa.
>> ANDI PENG: d蓹qiq, loop 眉莽眉n --another.
Biz ar谋yorsan谋z Bel蓹 ki do臒ru, biz
Biz y蓹qin edirik ki, g枚r蓹 bil蓹rsiniz loop 眉莽眉n nested laz谋md谋r gedir
orada bir 艧蓹rti b蓹yanat v蓹 sonra kod faktiki par莽a var ki,
d蓹y蓹rl蓹ri d蓹yi艧dirm蓹k olacaq.
M蓹n yaln谋z 眉mumiyy蓹tl蓹 yazd谋q Burada pseudocode kodu.
V蓹 sonra biz, h蓹qiq蓹t蓹n olacaq fiziki, bir sinif kimi,
bu g眉n h蓹yata ke莽irilm蓹si 眉莽眉n c蓹hd edin.
Bu IDE geri getm蓹k ed蓹k.
>> UH-oh.
Niy蓹 deyilik ki olmas谋d谋r.
OLDU.
Ba臒谋艧lay谋n, m蓹n蓹 bir az daha zoom ed蓹k.
Biz orada getm蓹k.
M蓹n burada edir蓹m All I yaratd谋q ki, adl谋 proqram "se莽imi / sort.c."
M蓹n doqquz bir s谋ra yaratd谋q d蓹y蓹rl蓹r, 4, 8, 2, 1, 6, 9, 7, 5, 3.
Hal-haz谋rda, bil蓹rsiniz kimi onlar unordered var, bax.
n say谋 olacaq ki, siz d蓹y蓹rl蓹rin m蓹bl蓹臒i deyir
Siz array var.
Bu halda, biz doqquz d蓹y蓹rl蓹ri var.
M蓹n yaln谋z burada loop 眉莽眉n var ki, 莽e艧idl蓹nm蓹mi艧 array 莽ap edir.
>> V蓹 sonunda, m蓹n d蓹 bir var yaln谋z yenid蓹n 莽ap loop.
Bel蓹 ki, n蓹z蓹ri, bu proqram 蓹g蓹r sonunda, d眉zg眉n i艧l蓹yir,
Bir loop 眉莽眉n 莽ap g枚rm蓹k laz谋md谋r olan 1, 2, 3, 4, 5, 6, 7, 8,
9 眉莽眉n b眉t眉n d眉zg眉n var.
>> Bel蓹likl蓹, biz burada pseudocode var.
M蓹n yaln谋z deyil蓹m to-- h蓹r k蓹s ist蓹yir k枚n眉ll眉l蓹r 眉莽眉n xahi艧 getm蓹k 眉莽眉n gedir
蓹g蓹r n蓹 yaz谋n d蓹qiq m蓹n蓹 biz ilk, yaln谋z t蓹krarlamaq ist蓹yir蓹m
bu serial谋n 蓹vv蓹lind蓹 vasit蓹sil蓹?
M蓹n kod x蓹tt n蓹dir y蓹qin ki, burada laz谋md谋r gedir?
>> Auditoriya: [i艧itilemez]
>> ANDI PENG: B蓹li, hiss pulsuz to-- 脺zr ist蓹yirik,
g眉nd蓹m蓹 hiss dayanmaq yoxdur S蓹s bir az qald谋rmaq pulsuz.
>> Auditoriya: int i b蓹rab蓹rdir 眉莽眉n 0-
>> ANDI PENG: B蓹li, yax艧谋.
>> Auditoriya: i array uzunlu臒u azd谋r.
>> ANDI PENG: Bel蓹 ki, saxlamaq burada a臒la 脟眉nki biz
bir funksiyas谋 yoxdur ki, biz蓹 bir serial谋n uzunlu臒u deyir,
biz art谋q var ki, saklar d蓹y蓹r.
Sa臒?
Ba艧qa bir 艧ey saxlamaq 眉莽眉n bir s谋ra mind
doqquz d蓹y蓹rl蓹r, g枚st蓹ricil蓹ri hans谋lard谋r?
Yaln谋z bu array 3 0 idi deyirl蓹r.
Siz son ki, g枚r蓹c蓹ksiniz index h蓹qiq蓹t蓹n 3.
Bu var, baxmayaraq ki, 4 deyil array d枚rd d蓹y蓹rl蓹r.
>> Burada Bel蓹 ki, biz 莽ox diqq蓹tli olmaq laz谋md谋r uzunlu臒u n蓹 bizim v蓹ziyy蓹tinin
olacaq.
>> Auditoriya: n minus 1 olmazd谋?
ANDI PENG: Bu olacaq d蓹qiq n minus 1.
Bu m蓹nada, niy蓹 ki, n var minus 1, h蓹r k蓹s?
Diziler s谋f谋r y枚n眉ml眉 var, 莽眉nki bu.
Onlar 0 ba艧lamaq v蓹 1 n minus q蓹d蓹r ax谋r.
B蓹li, bu bir az 莽蓹tin var.
OLDU.
Daha sonra--
Auditoriya: Isnt'1 ki art谋q olsa qay臒谋,
Yaln谋z az v蓹 ya "dey蓹r蓹k deyil b蓹rab蓹r daha az "v蓹 yaln谋z" dey蓹r蓹k 眉莽眉n? "
>> ANDI PENG: Bu var h蓹qiq蓹t蓹n yax艧谋 sual.
Bel蓹 ki, b蓹li.
Lakin, biz yol oldu臒unu yoxlan谋lmas谋 h眉ququnun h蓹yata ke莽irilm蓹si,
iki d蓹y蓹rl蓹r m眉qayis蓹 etm蓹k laz谋md谋r.
Bel蓹likl蓹, siz h蓹qiq蓹t蓹n ist蓹yir蓹m "眉莽眉n" bo艧 burax谋n.
M眉qayis蓹 脟眉nki 蓹g蓹r bu bir, siz fikrind蓹 deyilik
sonra bir 艧ey var sa臒, m眉qayis蓹 etm蓹k olar?
B蓹li.
Bel蓹 ki, i ++.
Nin bizim M枚t蓹riz蓹d蓹 蓹lav蓹 ed蓹k.
Whoops.
Great.
Bel蓹likl蓹, biz ba艧lan臒谋c谋 var Bizim xarici loop.
Bel蓹 ki, indi biz y蓹qin ki, ist蓹yir蓹m saxlan谋lmas谋 眉莽眉n d蓹yi艧蓹n yaratmaq
ki莽ik d蓹y蓹r track, sa臒?
H蓹r k蓹s m蓹n蓹 verm蓹k ist蓹yir Bunu ki, bir kod line?
Gedirik, 蓹g蓹r biz n蓹 laz谋md谋r bir 艧ey saxlamaq ist蓹yirsiniz?
>> Right.
Ki, b蓹lk蓹 daha yax艧谋 ad谋 "Temp" be-- olard谋 tamamil蓹 莽al谋艧谋r ki,
b蓹lk蓹 daha tutarl谋 olacaq adl谋, biz ki莽ik d蓹y蓹r ist蓹yirsinizs蓹
>> Auditoriya: Min.
ANDI PENG: min, orada biz gedin.
min yax艧谋 olard谋.
V蓹 bel蓹 ki, burada biz n蓹 onu ba艧lamaq ist蓹yirsiniz?
Bu bir az 莽蓹tin deyil.
脟眉nki indi bu serial谋n 蓹vv蓹lind蓹,
do臒ru 艧ey baxd谋 yoxdur?
Avtomatik Bel蓹 ki, 蓹g蓹r biz yaln谋z i 0 b蓹rab蓹rdir etdiyiniz
biz ba艧lamaq ist蓹yir蓹m n蓹 Bizim ilk minimum d蓹y蓹ri?
Auditoriya: i.
ANDI PENG: i, d蓹qiq.
Christabel, niy蓹 biz ist蓹yirsiniz i onu ba艧lamaq 眉莽眉n nec蓹?
>> Auditoriya: yax艧谋, 莽眉nki biz 0 il蓹 ba艧layan edirik.
Biz m眉qayis蓹 etm蓹k he莽 bir 艧ey yoxdur, 莽眉nki Bel蓹 ki, Bu, minimum 0 olan son olacaq.
>> ANDI PENG: M蓹hz.
Bel蓹 ki, o tam do臒ru deyil.
Biz, h蓹qiq蓹t蓹n, var h蓹l蓹 bir 艧ey baxd谋
Biz minimum d蓹y蓹ri n蓹 bilmir蓹m.
Biz yaln谋z onu ba艧lamaq ist蓹yir蓹m i olan, haz谋rda sa臒 burada.
V蓹 biz davam bu array a艧a臒谋 h蓹r蓹k蓹t,
biz h蓹r il蓹 ki, g枚r眉rs眉n眉z 蓹lav蓹 pass, i 蓹lav蓹l蓹r.
V蓹 bel蓹 ki n枚qt蓹d蓹, M蓹n y蓹qin ki, davam edir
minimum olmaq ist蓹yir蓹m, Bu h蓹r hans谋 olacaq, 莽眉nki
莽e艧idl蓹nm蓹mi艧 serial谋n ba艧lan臒谋c谋d谋r.
Cool.
>> Bel蓹 ki, indi biz 蓹lav蓹 etm蓹k ist蓹yir蓹m burada loop 眉莽眉n ki
vasit蓹sil蓹 t蓹krarlamaq niyy蓹tind蓹 莽e艧idl蓹nm蓹mi艧, v蓹 ya bu serial谋n qalan.
H蓹r k蓹s m蓹n蓹 verm蓹k ist蓹yir Bunu ki, bir kod line?
Hint-- biz burada n蓹 ed蓹 bil蓹r蓹m?
N蓹 loop 眉莽眉n bu getm蓹k olacaq?
B蓹li.
Auditoriya: Bel蓹 ki, biz ist蓹yir蓹m f蓹rqli bir tam var,
biz qalan ke莽蓹n edirik, 莽眉nki 蓹v蓹zin蓹 m蓹n array, bel蓹 ki, b蓹lk蓹
j.
>> ANDI PENG: B蓹li, j m蓹n蓹 yax艧谋 s蓹sl蓹nir.
B蓹rab蓹r?
>> Auditoriya: Bel蓹 ki, m蓹n ola plus 1 olard谋 n枚vb蓹ti d蓹y蓹ri ba艧layan edirik.
V蓹 sonra yen蓹 end-- 眉莽眉n, j deyil n minus 1, v蓹 sonra j ++ az.
ANDI PENG: Great.
>> V蓹 sonra burada, biz ist蓹yir蓹m olacaq Bizim v蓹ziyy蓹t g枚r眉艧眉b g枚rmek 眉莽眉n yoxlamaq,
sa臒?
Siz etm蓹k ist蓹yir蓹m, 莽眉nki minimum d蓹y蓹ri d蓹yi艧m蓹k
Bu daha h蓹qiq蓹t蓹n ki莽ik, 蓹g蓹r n蓹 sa臒, m眉qayis蓹 edirik?
Bel蓹 ki, n蓹 biz burada ist蓹diyiniz gedir?
Yoxlay谋n.
艦蓹rhd蓹 hans谋 n枚v眉 biz y蓹qin ki, gedir
ti 蓹g蓹r istifad蓹 etm蓹k ist蓹yir蓹m ki, biz 艧ey yoxlamaq ist蓹yirsiniz?
>> Auditoriya: bir b蓹yanat 蓹g蓹r.
>> ANDI PENG: An 蓹g蓹r b蓹yanat.
Bel蓹 ki Varsa v蓹 olacaq n蓹 biz daxili ist蓹yirik v蓹ziyy蓹ti
Bizim 蓹g蓹r 艧蓹rhd蓹?
>> Auditoriya: 茝g蓹r j d蓹y蓹ri istisna olmaqla, m蓹n d蓹y蓹ri az
>> ANDI PENG: M蓹hz.
Bel蓹 ki Varsa bu array "array" deyilir.
Great.
Ki, n蓹 idi array Bel蓹 ki?
Daha dem蓹k.
>> Auditoriya: array-j azd谋rsa array-i, sonra biz min d蓹yi艧蓹 bil蓹r.
Bel蓹 ki, min j olard谋.
>> ANDI PENG: ki, m蓹nada edirmi?
OLDU.
陌ndi a艧a臒谋 burada, biz, h蓹qiq蓹t蓹n, sa臒, svop h蓹yata ke莽irm蓹k ist蓹yirsiniz?
Bel蓹 ki, m眉hazir蓹, geri David, zaman O the-- n蓹 idi d蓹yi艧dirm蓹k 眉莽眉n 莽al谋艧谋r
pseudocode porta臒al 艧ir蓹si v蓹 milk--
>> Auditoriya: Bu 眉mumi idi.
>> ANDI PENG: B蓹li, bu c眉r 眉mumi idi.
Lakin bu olduqca yax艧谋 idi anlay谋艧 vaxt n眉mayi艧.
Bel蓹 ki, burada d蓹y蓹rl蓹r edir蓹m.
Siz bir s谋ra var min, m蓹n bir s谋ra,
v蓹 ya biz burada d蓹yi艧dirm蓹k 眉莽眉n 莽al谋艧d谋qlar谋n谋 n蓹.
V蓹 y蓹qin ki, onlar谋 t枚km蓹k bilm蓹z eyni zamanda bir-birin蓹, sa臒?
Bel蓹likl蓹, biz gedir n蓹 Burada yaratmaq laz谋md谋r
d眉zg眉n d蓹y蓹rl蓹r d蓹yi艧dirm蓹k 眉莽眉n?
>> Auditoriya: A m眉v蓹qq蓹ti d蓹yi艧蓹n.
>> ANDI PENG: A m眉v蓹qq蓹ti d蓹yi艧蓹n.
Bel蓹 ki, int temp n蓹 ed蓹k.
Bu daha yax艧谋 olard谋, bax谋n Vay to-- vaxt ki, n蓹 idi?
OLDU.
Bel蓹 ki, bu daha yax艧谋 olard谋 time d蓹yi艧蓹n "temp." ad谋n谋
Bel蓹 ki, int temp n蓹 ed蓹k.
Biz n蓹 gedir burada b蓹rab蓹r temp qurmaq?
Auditoriya: Min?
ANDI PENG: Bu bir az 莽蓹tin var.
Bu, h蓹qiq蓹t蓹n, sonunda f蓹rqi yoxdur.
N蓹 etm蓹z 眉莽眉n siz d蓹yi艧dirm蓹k 眉莽眉n se莽in
kimi uzun siz 蓹min edilm蓹si etdiyiniz kimi sen Siz d蓹yi艧dirm蓹 etdiyiniz n蓹 takip saxlan谋lmas谋.
>> Auditoriya: Bu array-i ola bil蓹r.
>> ANDI PENG: B蓹li, array-i ed蓹k.
V蓹 sonra n枚vb蓹ti line n蓹 kodu biz burada var ist蓹yirsiniz?
Auditoriya: array-i array-j b蓹rab蓹rdir.
ANDI PENG: V蓹 n蓹hay蓹t?
Auditoriya: array-j array-i b蓹rab蓹rdir.
Auditoriya: V蓹 ya array-j b蓹rab蓹r array-temp-- v蓹 ya, temp.
>> ANDI PENG: OK.
Bel蓹 ki, bu run ed蓹k v蓹 g枚rm蓹k bu i艧 olacaq 蓹g蓹r.
Ki, harada ba艧 verir?
Oh, bir problem var.
Biz ist蓹yirik, x蓹tt 40 Bax array-j istifad蓹 etm蓹y蓹 莽al谋艧谋r?
Amma harada yaln谋z j m枚vcuddur?
>> Auditoriya: loop 眉莽眉n edir.
ANDI PENG: Sa臒.
Bel蓹 ki, n蓹 biz n蓹 etm蓹k laz谋md谋r gedir?
>> Auditoriya: the-- k蓹narda m眉蓹yy蓹n
Auditoriya: B蓹li, M蓹n siz蓹 tapmaq 艦蓹rhd蓹, sa臒 ba艧qa bir istifad蓹 etm蓹k olar?
Bel蓹 ki, kimi, 蓹g蓹r minimum-- b眉t眉n sa臒, m蓹ni d眉艧眉nm蓹y蓹 imkan verir.
>> ANDI PENG: Guys c蓹hd bir g枚z ed蓹k etm蓹k
Biz burada bir 艧ey n蓹 ed蓹 bil蓹r ki, g枚rm蓹k?
>> Auditoriya: OK.
Minimum b蓹rab蓹r deyil, 蓹g蓹r bel蓹 minimum 蓹g蓹r j bel蓹 ki, h蓹l蓹 istisna olmaqla, m蓹n
sonra biz d蓹yi艧dirm蓹k olmazd谋.
>> ANDI PENG: i b蓹rab蓹r varm谋?
Siz burada dem蓹k ist蓹yirsiniz?
>> Auditoriya: V蓹 ya B蓹li, 蓹g蓹r minimum B蓹li, b蓹rab蓹r i yoxdur.
ANDI PENG: OK.
Yax艧谋 ki, bizim probleml蓹rimiz c眉r h蓹ll edir.
Lakin h蓹l蓹 d蓹 h蓹ll etmir j-ci ild蓹n j 蓹g蓹r n蓹 problemi
k蓹narda m枚vcud deyil, n蓹 Biz bunu ist蓹yirsiniz?
K蓹narda b蓹yan?
Bu 莽al谋艧an c蓹hd ed蓹k.
UH-oh.
Bizim sort i艧 deyil.
>> Siz bizim ilkin G枚rd眉y眉n眉z kimi array h蓹min d蓹y蓹rl蓹r idi.
V蓹 sonra bu olmal谋d谋r 1, 2, 3, 4, 5, 6, 7, 8, 9 olmu艧dur.
Bu i艧 deyil.
Ahh.
Biz n蓹 etm蓹liy蓹m?
Auditoriya: Debug.
ANDI PENG: B眉t眉n sa臒, biz ki, c蓹hd ed蓹 bil蓹rsiniz.
Biz debug bil蓹r.
Bir az zoom.
Bizim breakpoint m眉蓹yy蓹n ed蓹k.
Nin like-- OK ged蓹k.
>> Biz art谋q bilirik ki, 莽眉nki Bel蓹 ki, bu x蓹tl蓹r, 15 22 vasit蓹sil蓹
edir蓹m b眉t眉n 莽眉nki working-- olunur yaln谋z vasit蓹sil蓹 v蓹 莽ap olunur iterating
M蓹n ir蓹li getm蓹k v蓹 atlayabilirsiniz.
X蓹tti 25 ba艧lamaq ed蓹k.
OOP, m蓹n蓹 xilas ed蓹k.
>> Auditoriya: Bel蓹 breakpoint nin ay谋klama harada ba艧lay谋r?
ANDI PENG: Or vermir.
Auditoriya: V蓹 ya vermir.
ANDI PENG: B蓹li.
Siz 莽ox breakpoints bil蓹rsiniz v蓹 yaln谋z bir dig蓹r jump bil蓹r.
Lakin bu halda biz bilmirik harada s蓹hv olur.
Bel蓹 ki, biz yaln谋z ist蓹yir蓹m a艧a臒谋 眉st ba艧lay谋r.
Yep.
OLDU.
>> Bel蓹 ki, burada bu x蓹tt, biz add谋m ola bil蓹r.
Siz burada g枚r蓹 bil蓹rsiniz biz bir s谋ra var.
H蓹min d蓹y蓹rl蓹r array var ki.
Siz g枚r眉rs眉n眉z ki, nec蓹 index 0, bu , oh d蓹y蓹r uy臒undur
M蓹n zoom 眉莽眉n c蓹hd gedir蓹m.
Ba臒谋艧lay谋n, bu, h蓹qiq蓹t蓹n 莽蓹tindir array index 0 see-- 眉莽眉n,
Biz 4 d蓹y蓹ri v蓹 sonra s v蓹 s.
Biz yerli d蓹yi艧蓹nl蓹r var.
Hal-haz谋rda i b蓹rab蓹rdir Biz olmaq ist蓹yir蓹m 0.
>> V蓹 bel蓹 vasit蓹sil蓹 g眉cl蓹ndirm蓹kl蓹 saxlamaq imkan verir.
Bizim minimum, 0 b蓹rab蓹rdir Hans谋 biz d蓹 olmaq ist蓹yir蓹m.
V蓹 sonra biz ikinci daxil loop, array-j array-i az olduqda,
olan deyildi.
Bel蓹 ki, nec蓹 g枚rd眉n眉z ki, 眉z蓹rind蓹 atland谋?
>> Auditoriya: Bel蓹 ki, olmal谋d谋r minimum, b眉t眉n that-- olmal谋d谋r ki,
loop 眉莽眉n ilk daxilind蓹 olacaq?
ANDI PENG: Xeyr, 莽眉nki Siz h蓹l蓹 test etm蓹k ist蓹yir蓹m.
Siz h蓹r bir m眉qayis蓹 etm蓹k ist蓹yir蓹m vaxt, bu ax谋r h蓹tta sonra.
Siz yaln谋z bunu etm蓹k ist蓹mir蓹m ilk pass-vasit蓹sil蓹.
Siz bunu ist蓹yir蓹m yenid蓹n h蓹r 蓹lav蓹 pass.
Bel蓹 ki, check ist蓹diyiniz daxili v蓹ziyy蓹ti.
Bel蓹 ki, biz yaln谋z olacaq Burada ke莽蓹n saxlamaq.
M蓹n siz蓹 u艧aqlar bir ipucu verm蓹k laz谋md谋r.
Bu fakt谋 il蓹 n蓹 var ki Sizin 艧蓹rti kontrol edirik
Siz yoxlan谋lmas谋 deyilik d眉zg眉n indeksi 眉莽眉n.
Bel蓹 ki, haz谋rda sizin 眉莽眉n kontrol edirik j array index array az
i index.
Amma n蓹 q蓹d蓹r edirik loop 眉莽眉n ba艧lan臒谋c谋?
Siz i b蓹rab蓹r j q蓹bulu deyil?
>> B蓹li, biz h蓹qiq蓹t蓹n bil蓹rsiniz burada ay谋klama 莽谋xmaq.
Bel蓹 ki, bizim pseudocode n蓹z蓹r salaq.
Baxan m媒s媒n biz olacaq i 0 b蓹rab蓹rdir da ba艧layacaq.
Biz 1 n minus q蓹d蓹r getm蓹k olacaq.
Yoxlamaq ed蓹k ki, sa臒 var idi?
Yep, do臒ru idi.
>> Bel蓹 ki, burada daxili, biz ist蓹yirik minimum d蓹y蓹r yaratmaq niyy蓹tind蓹
v蓹 i ki, b蓹rab蓹r m眉蓹yy蓹n.
Biz bunu mi?
Yep, etdi.
陌ndi bizim daxili 眉莽眉n loop, biz ist蓹yirik j ed蓹c蓹yimiz i n minus 1 b蓹rab蓹rdir.
Biz bunu mi?
H蓹qiq蓹t蓹n, biz etdi.
>> Lakin, biz burada n蓹 m眉qayis蓹 olunur?
>> Auditoriya: j plus 1.
ANDI PENG: M蓹hz.
V蓹 sonra t蓹yin etm蓹k ist蓹yir蓹m olacaq j plus 1 habel蓹 b蓹rab蓹r minimum.
Bel蓹likl蓹, m蓹n, h蓹qiq蓹t蓹n, tez yolu il蓹 getdi.
Sizl蓹rin d蓹rk edirsinizmi niy蓹 j plus 1 var?
OLDU.
>> Sizin s谋ra, bel蓹 vasit蓹sil蓹 ilk pass,
Sizin loop 眉莽眉n, int i 0 b蓹rab蓹rdir, yaln谋z imkan
bu h蓹l蓹 d蓹yi艧m蓹yib da艧谋m谋r.
Biz tamamil蓹, bir s谋ra var, yaln谋z d枚rd 莽e艧idl蓹nm蓹mi艧 elementl蓹ri, sa臒?
Bel蓹likl蓹, biz i 0 b蓹rab蓹r ba艧lamaq ist蓹yir蓹m.
V蓹 i gedir yaln谋z bu loop ax谋r.
V蓹 bel蓹 ki, ilk pass, biz gedirik "min" adl谋 d蓹yi艧蓹n ba艧lamaq 眉莽眉n
ki, 莽眉nki i b蓹rab蓹rdir biz bir minimum d蓹y蓹ri yoxdur.
Bel蓹 ki, h蓹m莽inin 0 Hal-haz谋rda b蓹rab蓹r var.
V蓹 sonra biz vasit蓹sil蓹 getm蓹k olacaq.
Biz bir daha t蓹krarlamaq ist蓹yir蓹m.
陌ndi biz g枚rd眉k ki, n蓹 bizim minimum biz vasit蓹sil蓹 t蓹krarlamaq ist蓹yir蓹m edir
Bu m眉qayis蓹 蓹g蓹r daha do臒ru g枚rm蓹k?
Bel蓹 ki, j, burada, gedir b蓹rab蓹r I, 0 olan.
V蓹 sonra 蓹g蓹r array j plus i olan az kimi, n枚vb蓹ti 眉z蓹rind蓹 biridir
n蓹 cari minimum d蓹y蓹r d蓹yi艧dirm蓹k ist蓹yirsinizs蓹, edir.
>> Bel蓹 ki, yaln谋z biz dem蓹k ed蓹k 2, 5, 1, 8, kimi, var.
Hal-haz谋rda, i b蓹rab蓹rdir 0 j 0 b蓹rab蓹rdir.
V蓹 bizim minimum d蓹y蓹ri var.
Array-j varsa plus istisna olmaqla, m蓹n bir, bel蓹 ki, ki, biz bax谋r谋q sonra var
, 蓹vv蓹l bir daha b枚y眉kd眉r Bu minimum olmaq olacaq.
>> Bel蓹 ki, burada biz 5 ki, g枚r蓹c蓹ksiniz ki, az deyil.
Bel蓹 ki, 5 olmayacaq olacaq.
Biz 1, sa臒 az 2 oldu臒unu g枚rm蓹k?
Bel蓹 ki, indi biz minimum bilirik ki, 0, 1, 2 at index d蓹y蓹ri olacaq.
Evet?
V蓹 sonra, burada almaq zaman Siz d眉zg眉n d蓹y蓹rl蓹r d蓹yi艧dirm蓹k olar.
>> Bel蓹 ki, u艧aqlar yaln谋z j olan zaman 蓹vv蓹l, bir baxaraq deyil
sonra.
Siz baxaraq eyni d蓹y蓹ri olan
yaln谋z bir 艧ey m蓹艧臒ul deyil n蓹.
Ki, ham谋ya m蓹nada etmir, niy蓹 biz ki, plus var 1 laz谋m?
OLDU.
陌ndi etm蓹k vasit蓹sil蓹 yaln谋z run imkan 蓹min kodu istirah蓹t do臒ru deyil.
Niy蓹 ba艧 verir?
Ah, bu burada min var.
Biz yanl谋艧 d蓹y蓹r m眉qayis蓹 edilmi艧dir.
Ah, yox.
>> B蓹li Oh, a艧a臒谋 burada biz el蓹c蓹 d蓹 yanl谋艧 d蓹y蓹rl蓹r d蓹yi艧dirm蓹.
Biz i v蓹 j baxaraq, 莽眉nki.
Ba艧qa, biz yoxlan谋lmas谋 olanlard谋r.
Biz, h蓹qiq蓹t蓹n, d蓹yi艧dirm蓹k ist蓹yir蓹m minimum cari minimum,
n蓹 il蓹 bir k蓹narda.
V蓹 u艧aqlar a艧a臒谋 G枚rd眉y眉n眉z kimi Burada biz bir s谋ralan谋r array var.
Bu, yaln谋z il蓹 idi fakt zaman
biz yoxlan谋lmas谋 biz m眉qayis蓹 edildi d蓹y蓹rl蓹r,
biz d眉zg眉n d蓹y蓹rl蓹r baxaraq deyil.
Biz eyni biri arad谋臒谋n谋z Burada h蓹qiq蓹t蓹n d蓹yi艧dirm蓹 deyil.
Siz n枚vb蓹ti bir baxmaq laz谋md谋r bu v蓹 sonra d蓹yi艧dirm蓹k olar.
Bel蓹 ki c眉r n蓹 var 蓹vv蓹l kodu bugging.
V蓹 n蓹 m蓹n burada idi h蓹r 艧ey ay谋klama 眉莽眉n etmi艧 ola bil蓹r
M蓹n yaln谋z bunu board, daha asan, 莽眉nki
莽al谋艧谋r谋q daha 莽ox g枚rm蓹k ay谋klama 眉zr蓹 zoom.
Ki, ham谋ya m蓹nada edirmi?
Cool.
>> Oldu.
Biz s枚hb蓹t 眉莽眉n h蓹r蓹k蓹t ed蓹 bil蓹r asimptotik notation olan
dey蓹r蓹k bir x眉lya yoldur bu n枚v b眉t眉n runtimes.
Bel蓹 ki, m眉hazir蓹, David bilirik, runtimes toxunub.
V蓹 o, b眉t眉n formula il蓹 getdi runtimes hesablamaq 眉莽眉n nec蓹.
Ki, haqq谋nda he莽 bir narahatl谋q.
Siz, h蓹qiq蓹t蓹n, maraql谋 edirsinizs蓹 ki, i艧l蓹ri nec蓹,
b枚lm蓹 sonra m蓹n蓹 dan谋艧maq 眉莽眉n 莽ekinmeyin.
Biz vasit蓹sil蓹 g蓹zm蓹k olar birlikd蓹 d眉sturlar.
Lakin b眉t眉n u艧aqlar h蓹qiq蓹t蓹n var bilirik n 2-d蓹n 莽ox kvadrat ki,
n kvadrat eyni 艧eydir.
B枚y眉k say谋 脟眉nki, eksponent, 蓹n art谋r.
V蓹 bel蓹 bizim 眉莽眉n, biz qay臒谋 b眉t眉n
artan ki, n蓹h蓹ng say谋.
>> Bel蓹 ki, n蓹 yax艧谋 hald谋r se莽im n枚v uzunlu臒u?
Siz olacaq 蓹g蓹r bir siyah谋s谋n谋 t蓹krarlamaq
v蓹 sonra vasit蓹sil蓹 t蓹krarlamaq ki, siyah谋da qalan,
ne莽蓹 d蓹f蓹 Siz y蓹qin ki, gedir
蓹n pis case-- da hal yax艧谋, ax谋r sorry?
B蓹lk蓹 daha yax艧谋 sual xahi艧, 蓹n pis halda n蓹
se莽im n枚v uzunlu臒u.
Auditoriya: n kvadrat.
ANDI PENG: Bu n sa臒, kvadrat oldu.
Bu kimi bel蓹 asan bir yol hesab edir蓹m ki, Siz loops 眉莽眉n i莽-i莽蓹 iki ist蓹nil蓹n vaxt,
Bu n kvadrat olacaq.
S蓹n yaln谋z 莽眉nki bir daha ke莽蓹n,
geri getm蓹k 眉莽眉n var 蓹traf谋nda v蓹 onun vasit蓹sil蓹 run
bir daha h蓹r d蓹y蓹r daxilind蓹.
Bu halda Bel蓹 ki, n yay谋nl谋yorsan谋z d蓹f蓹 n, sorry is-- ki, kvadrat
n d蓹f蓹 n, n kvadrat b蓹rab蓹rdir edir.
>> V蓹 sort da bir az m蓹nada unikal
Bu 蓹g蓹r m蓹s蓹l蓹 deyil ki, d蓹y蓹rl蓹ri 眉莽眉n art谋q.
Bu h蓹l蓹 zaten ax谋r olacaq.
Yaln谋z bu 1, 2, 3, 4 idi deyirl蓹r.
As谋l谋 olmayaraq idi as谋l谋 olmayaraq 眉莽眉n, h蓹l蓹 d蓹 vasit蓹sil蓹 qa莽d谋 olard谋
v蓹 h蓹l蓹 d蓹 minimum d蓹y蓹ri yoxlan谋l谋r.
Bu ed蓹rdi 莽ek eyni sayda
h蓹r bir zaman, h蓹tta 蓹g蓹r h蓹qiq蓹t蓹n bir 艧ey toxunmaq etm蓹yib.
>> Bel蓹 bir v蓹ziyy蓹td蓹, bel蓹 ki, 蓹n yax艧谋 v蓹 蓹n pis runtimes h蓹qiq蓹t蓹n b蓹rab蓹r.
Bel蓹 ki, n蓹 g枚zl蓹nilir, uzunlu臒u se莽im n枚v,
Hans谋 simvolu il蓹 t蓹yin teta, teta, bu halda,
d蓹 n kvadrat olunacaq.
B眉t眉n bunlar 眉莽 kvadrat n olard谋.
Niy蓹 h蓹r k蓹s ayd谋nd谋r uzunlu臒u n kvadrat edir?
>> Oldu.
M蓹n yaln谋z tez 莽al谋艧t谋rmak 眉莽眉n gedir蓹m n枚v qalan vasit蓹sil蓹.
眉莽眉n alqoritm bubble unutmay谋n, sort
Bu ilk biri idi David m眉hazir蓹 getdi.
茝sas蓹n, siz add谋m b眉t眉n siyah谋s谋
v蓹 yaln谋z siz蓹 svop Bir anda iki m眉qayis蓹.
V蓹 bir daha, 蓹g蓹r Siz daha yaln谋z onlar谋 d蓹yi艧dirm蓹k.
Bu b枚y眉kd眉r Bel蓹 ki, siz d蓹yi艧dirm蓹k olard谋.
M蓹n burada r蓹smi var.
>> Bel蓹 ki, yaln谋z siz 8, 6, 4, 2 idi dey蓹k.
8 v蓹 6 m眉qayis蓹 ediyorum.
Siz onlar谋 d蓹yi艧dirm蓹k laz谋md谋r ediyorum.
8 v蓹 4 m眉qayis蓹 edir蓹m.
Siz onlar谋 d蓹yi艧dirm蓹k laz谋md谋r ediyorum.
8 d蓹yi艧dirm蓹k varsa v蓹 2, el蓹c蓹 d蓹 onlar谋 d蓹yi艧dirm蓹k.
Bel蓹 bir m蓹nada, bel蓹 ki, g枚r蓹 bil蓹rsiniz uzun m眉dd蓹t 蓹rzind蓹 h蓹yata ifa,
nec蓹 bubble d蓹y蓹rl蓹r c眉r bitir, biz bunu niy蓹 z蓹ng
bubble sort.
>> Biz yaln谋z yenid蓹n ax谋r ki ikinci pass, v蓹 眉莽眉nc眉 pass,
v蓹 d枚rd眉nc眉 pass.
茝sas蓹n, bubble s谋rala yaln谋z 莽al谋艧谋r 茝g蓹r h蓹r hans谋 bir daha svoplar谋 yoxdur q蓹d蓹r.
Ki, m蓹nada ki, bu yaln谋z Bunun 眉莽眉n 眉mumi pseudocode.
He莽 bir narahatl谋q, bu b眉t眉n online olacaq.
Biz, h蓹qiq蓹t蓹n, bu art谋q getm蓹k yoxdur.
>> Biz yaln谋z counter ba艧lamaq 0 ba艧lay谋r d蓹yi艧蓹n.
V蓹 biz b眉t眉n array vasit蓹sil蓹 t蓹krarlamaq.
V蓹 bir d蓹y蓹ri bu halda is-- 蓹g蓹r d蓹y蓹ri ki, d蓹y蓹ri daha b枚y眉kd眉r
茝g蓹r siz onlar谋 d蓹yi艧dirm蓹k olacaq.
V蓹 sonra yaln谋z ist蓹yirik davam etm蓹k niyy蓹tind蓹dir.
V蓹 saymaq olacaq.
V蓹 yaln谋z bunu saxlamaq olacaq Bu counter 莽ox is蓹
o dem蓹kdir ki, 0, daha h蓹r zaman d蓹yi艧dirm蓹k 眉莽眉n,
Siz getm蓹k ist蓹diyiniz bilirik geri v蓹 yenid蓹n yoxlay谋n.
Siz bilirsiniz q蓹d蓹r yoxlan谋lmas谋 saxlamaq ist蓹diyiniz ki, siz art谋q d蓹yi艧dirm蓹k yoxdur.
>> Bel蓹 ki, 蓹n yax艧谋 v蓹 蓹n pis n蓹 var hal bubble n枚v 眉莽眉n runtimes?
V蓹 hint-- bu h蓹qiq蓹t蓹n f蓹rqli m蓹nada se莽im n枚v
bu iki cavab eyni deyil ki.
N蓹 olaca臒谋n谋 d眉艧眉n眉n bir halda ki, art谋q 莽e艧idl蓹nir 蓹g蓹r.
V蓹 haqq谋nda n蓹 d眉艧眉nd眉kl蓹rini idi 蓹g蓹r olur
halda olan s谋ralan谋r deyil.
V蓹 c眉r 莽al谋艧t谋rabilirsiniz niy蓹 vasit蓹sil蓹 ba艧 verir.
M蓹n 30 kimi, u艧aqlar verm蓹k laz谋md谋r saniy蓹 bu bar蓹d蓹 d眉艧眉nm蓹k.
>> OLDU.
H蓹r hans谋 bir tahmin yoxdur bubble n枚v 蓹n pis halda i艧 deyil?
B蓹li.
>> Auditoriya: bu kimi, n d蓹f蓹 olacaq n minus kimi 1 v蓹 ya bir 艧ey?
Kimi, 莽al谋艧谋r h蓹r d蓹f蓹, bir svop az kimi, yaln谋z var
n蓹 bu idi.
>> ANDI PENG: B蓹li, bel蓹 ki, siz tamamil蓹 do臒ru ist蓹yirik.
V蓹 bu bir hald谋r sizin Cavab h蓹qiq蓹t蓹n, 莽ox m眉r蓹kk蓹b idi
bir 莽ox verm蓹k laz谋md谋r.
Bel蓹 ki, m蓹n run-- olacaq Burada b眉t眉n bu silm蓹k 眉莽眉n gedir.
H蓹r k蓹s yax艧谋?
M蓹n bu silm蓹k bil蓹r?
OLDU.
Siz n ax谋r olacaq d蓹f蓹 ilk d蓹f蓹, sa臒?
Onlar ax谋r olacaq n m蓹nfi 1, ikinci d蓹f蓹, sa臒?
V蓹 sonra saxlamaq olacaq n mina 2, Et Cetera, gedir.
David oldu臒u m眉hazir蓹, bu etdi, 茝g蓹r b眉t眉n bu d蓹y蓹rl蓹r 蓹lav蓹 蓹g蓹r,
Siz bir 艧ey almaq like-- yeah-- mahiyy蓹tc蓹 yaln谋z azald谋r 2-d蓹n
n a艧a臒谋 kvadrat.
Siz almaq olacaq Orada q蓹rib蓹 fraksiyas谋.
V蓹 bel蓹 ki, yaln谋z bilirik ki, n h蓹r zaman kvadrat
qismini 眉st眉n tutur.
V蓹 bu halda, 蓹n pis uzunlu臒u n kvadrat olard谋.
Bu azalan idi 眉莽眉n, siz蓹, hesab edir蓹m ki,
svop h蓹r bir zaman etm蓹k laz谋md谋r.
>> Potensial n蓹 olard谋, 蓹n yax艧谋 halda uzunlu臒u?
Siyah谋s谋 art谋q idi, yaln谋z dey蓹k m蓹qs蓹dil蓹 uzunlu臒u n蓹 olard谋?
>> Auditoriya: n.
ANDI PENG: Bu d蓹qiq, n var.
V蓹 n蓹 眉莽眉n n?
Auditoriya: Siz, 莽眉nki yaln谋z H蓹r bir d蓹f蓹 yoxlamaq laz谋md谋r.
ANDI PENG: M蓹hz.
, M眉mk眉n olan 蓹n yax艧谋 uzunlu臒u bel蓹 bu siyah谋 art谋q idi
s谋ralan谋r,-nin 1, 2, 3 dey蓹k 4-- siz yaln谋z vasit蓹sil蓹 getm蓹k olard谋, siz yoxlamaq olard谋
Siz oh, onlar b眉t眉n pan g枚rm蓹k olard谋.
M蓹n d蓹yi艧dirm蓹k yox idi.
Men etdim.
Bel蓹 ki, bu halda, yaln谋z n var v蓹 ya add谋mlar say谋 yaln谋z
ilk siyah谋s谋nda yoxlamaq idi.
>> V蓹 sonra, indi hit durub sort,
alqoritm u莽urum 眉莽眉n mahiyy蓹tc蓹 bir sorted v蓹 莽e艧idl蓹nm蓹mi艧 hiss蓹si daxil.
V蓹 sonra bir-bir, 莽e艧idl蓹nm蓹mi艧 d蓹y蓹rl蓹r
onlar谋n m眉vafiq daxil siyah谋n谋n ba艧谋nda m枚vqel蓹ri.
>> Bel蓹 ki, m蓹s蓹l蓹n, biz bir var 3 siyah谋s谋, 5, 2, 6, 4 yenid蓹n.
Biz haz谋rda bilirik ki, 莽e艧idl蓹nm蓹mi艧 biz yaln谋z var, 莽眉nki
onu axtar谋r ba艧lad谋.
Biz bir n蓹z蓹r v蓹 biz bilirik ki, ilk d蓹y蓹ri, sa臒 莽e艧idl蓹nir?
Yaln谋z bir s谋ra il蓹 ist蓹yirsinizs蓹 size bir, bu s谋ralan谋r ki, bilirik.
>> Bel蓹likl蓹 biz bilirik ki, Dig蓹r d枚rd 莽e艧idl蓹nm蓹mi艧 var.
Biz vasit蓹sil蓹 getm蓹k v蓹 biz ki, d蓹y蓹ri g枚r眉r眉k.
Geri getm蓹k ed蓹k.
5 ki, d蓹y蓹ri g枚rm蓹k?
Biz buna n蓹z蓹r.
Biz 3 il蓹 m眉qayis蓹.
Biz daha 莽ox oldu臒unu bilirik 3, bel蓹 ki, s谋ralan谋r ki, bilirik.
Bel蓹likl蓹, biz art谋q bilirik ki, ilk iki 莽e艧idl蓹nir v蓹 son 眉莽 deyil.
>> Biz 2 n蓹z蓹r.
Biz ilk 5 il蓹 yoxlamaq.
5 azd谋r?
Bu deyil.
Bel蓹likl蓹, biz a艧a臒谋 axtar谋r saxlamaq laz谋md谋r.
Sonra 3 off 2 oldu.
Bu az?
Yox.
Bel蓹 ki, 2 daxil edilm蓹lidir bilm蓹k 枚n v蓹 3 v蓹 5
h蓹m d蓹 h蓹yata s枚vq etm蓹k laz谋md谋r.
6 v蓹 4 il蓹 yenid蓹n bu edin.
V蓹 biz yaln谋z, mahiyy蓹tc蓹 yoxlan谋lmas谋 saxlamaq biz yaln谋z yoxlamaq harada yoxlamaq yoxlamaq.
V蓹 sa臒 q蓹d蓹r m枚vqeyi, biz n枚v yaln谋z
do臒ru m枚vqe onu daxil edin, olan bu ad谋 haradan g蓹ldiyi deyil.
>> Bel蓹 ki, yaln谋z alqoritm var, pseudocode 枚zl眉y眉nd蓹 c眉r,
biz h蓹yata ke莽ir蓹c蓹kl蓹rini nec蓹 bir durub sort.
Pseudocode burada.
Bu, b眉t眉n online var.
He莽 bir narahatl谋q u艧aqlar 蓹g蓹r Bu a艧a臒谋 sur蓹ti 莽al谋艧谋r.
Bel蓹 ki, bir daha eyni question-- n蓹 茝n yax艧谋 v蓹 蓹n pis runtimes olacaq
durub sort 眉莽眉n?
Bu son suala 莽ox ox艧ar.
M蓹n 30 kimi, u艧aqlar verm蓹k laz谋md谋r saniy蓹 h蓹m莽inin bu bar蓹d蓹 d眉艧眉nm蓹k.
>> H蓹r k蓹s ist蓹yir OK M蓹n蓹 蓹n pis uzunlu臒u verm蓹k?
B蓹li.
>> Auditoriya: n kvadrat.
>> ANDI PENG: Bu kvadrat n oldu.
V蓹 niy蓹 n kvadrat edir?
>> Auditoriya: 脟眉nki 茝ks 眉莽眉n, var
is-- olan n d蓹f蓹 ke莽m蓹k n 眉莽眉n
ANDI PENG: B蓹li, d蓹qiq.
Bubble s谋rala kimi bel蓹 eyni 艧ey.
Bu siyah谋da oldu臒u halda azalan, sen
ilk d蓹f蓹 yoxlamaq 眉莽眉n gedir.
V蓹 sonra h蓹r 蓹lav蓹 d蓹y蓹ri, sen
眉莽眉n ged蓹n qar艧谋 yoxlamaq 眉莽眉n Sa臒 h蓹r bir d蓹y蓹ri?
V蓹 bel蓹 tamamil蓹, siz etm蓹k olacaq bir n pass d蓹f蓹 bir n, ke莽m蓹k
n kvadrat edir.
N蓹 yax艧谋 halda haqq谋nda?
B蓹li.
>> Auditoriya: n m蓹nfi 1, 莽眉nki ilk bir art谋q kvadrat edir.
>> ANDI PENG: Bel蓹 ki, yax谋n.
Cavab h蓹qiq蓹t蓹n n edir.
Ilk biridir 脟眉nki s谋ralan谋r, onu h蓹qiq蓹t蓹n bil蓹r
biz yaln谋z h蓹yata lucked ki, m蓹s蓹l蓹n, ki, 2
ki莽ik say谋 ola oldu.
Amma bu h蓹mi艧蓹 bel蓹 olmayacaq.
2 art谋q 蓹vv蓹lind蓹 莽e艧idl蓹nir 蓹g蓹r ancaq, baxmaq v蓹 burada 1 var
1 qabar gedir.
V蓹 bu son olacaq up zaten 莽arpd谋.
>> 茝n yax艧谋 halda bel蓹 Bu, h蓹qiq蓹t蓹n, yaln谋z n olacaq.
茝g蓹r 1, 2, 3, 4, 5, 6, 7, 8, sen
ax谋r gedir b眉t眉n siyah谋s谋n谋 d蓹f蓹
h蓹r 艧ey yolunda g枚rmek 眉莽眉n yoxlamaq.
脟al谋艧an h蓹r k蓹s ayd谋nd谋r habel蓹 se莽ilm蓹si d蓹f蓹?
M蓹n ke莽ir al谋ram bilirik Bu, h蓹qiq蓹t蓹n, h谋zl谋.
Amma yaln谋z bilirsinizs蓹 bilirik ki, 眉mumi anlay谋艧lar, siz yax艧谋 olmal谋d谋r.
OLDU.
Bel蓹likl蓹, m蓹n kimi, b蓹lk蓹 u艧aqlar verm蓹k laz谋md谋r, bir d蓹qiq蓹 qon艧ular谋 dan谋艧maq
n蓹 yaln谋z bir on 蓹sas f蓹rql蓹r
n枚v bu c眉r aras谋nda.
Biz tezlikl蓹 art谋q getm蓹k laz谋md谋r.
Auditoriya: OK, Oh.
ANDI PENG: B蓹li.
OLDU.
Cool, bir sinif kimi reconvene bildirin.
OLDU.
Bel蓹 ki, bu idi c眉r bir m蓹nada a莽谋q sual
ki, onlara cavab 莽ox var.
V蓹 biz q谋sa b蓹zil蓹ri art谋q getm蓹k laz谋md谋r.
M蓹n yaln谋z u艧aqlar almaq ist蓹yirdi f蓹rqli n蓹 d眉艧眉n眉r
n枚v 眉莽 n枚v.
M蓹n d蓹, b枚y眉k e艧itdim n蓹 sort birl蓹艧m蓹si deyil question--?
B枚y眉k sual ki, 莽眉nki n蓹 biz n枚vb蓹ti 蓹hat蓹 edirik.
>> Bel蓹 ki, sort daxil ki, funksiyalar谋 bir sort
莽ox f蓹rqli dig蓹r n枚v.
Sizl蓹rin see-- kimi David ki demo idi
o, b眉t眉n s蓹rin oldu臒u birl蓹艧m蓹si nec蓹 g枚r蓹n noises
sort sonsuz kimi, qa莽谋b dig蓹r iki n枚v daha s眉r蓹tli?
OLDU.
Bel蓹 ki, daxil, 莽眉nki sort ki, u莽urum h蓹yata ke莽irir
v蓹 biz anlay谋艧谋 f蓹th m眉hazir蓹 莽ox dan谋艧d谋q.
Biz i艧l蓹m蓹k ist蓹yir蓹m ki, m蓹nada asan, siz b枚lm蓹k zaman deyil, daha
v蓹 probleml蓹r f蓹th v蓹 onlar谋 pozmaq a艧a臒谋, v蓹 sonra, onlara birlikd蓹 qoymaq
yax艧谋 艧eyl蓹r h蓹mi艧蓹 ba艧 verir.
>> Birl蓹艧m蓹si yolu So sort mahiyy蓹tc蓹 莽al谋艧谋r
bir ay谋ran ki, yar谋s谋nda 莽e艧idl蓹nm蓹mi艧 array.
V蓹 sonra seriallarda iki yar谋ya indirir var.
V蓹 yaln谋z bu iki yar谋ya indirir n枚v.
Bu, sad蓹c蓹 olaraq, yar谋s谋 ay谋r谋c谋 saxlay谋r yar谋s谋 yar谋s谋 h蓹r 艧ey 莽e艧idl蓹nir q蓹d蓹r
v蓹 sonra recursively birlikd蓹 b眉t眉n qoyur.
>> Bel蓹 ki, h蓹qiq蓹t蓹n m眉c蓹rr蓹d deyil.
Bel蓹 ki, bu pseudocode yaln谋z bir az.
Ki, m蓹nada edirmi Bu 莽al谋艧an yol?
Bel蓹 ki, yaln谋z bir var dem蓹k ed蓹k n elementl蓹ri array, sa臒?
N 2-d蓹n az olarsa, siz ola bil蓹r.
Bilirsiniz, 莽眉nki ki, var, 蓹g蓹r yaln谋z bir 艧ey, bu s谋ralan谋r olmal谋d谋r.
Else, sol yar谋m sort, v蓹 sonra sa臒 yar谋m sort,
v蓹 sonra daxil.
>> Ki, h蓹qiq蓹t蓹n asan g枚r眉n眉r is蓹 Bel蓹 ki, 蓹slind蓹, bu bar蓹d蓹 d眉艧眉n眉r眉k var
莽蓹tin n枚v眉d眉r. Siz kimi ist蓹yirik, 莽眉nki, yax艧谋, bu c眉r 枚z眉 莽al谋艧an.
Sa臒?
Bu 枚z眉 莽al谋艧an.
Bel蓹 ki, m蓹nada, David toxunub sinif recursion il蓹.
V蓹 bir anlay谋艧 var daha 莽ox haqq谋nda dan谋艧maq laz谋md谋r.
Bu ki, bu iki x蓹tl蓹ri var Burada, h蓹qiq蓹t蓹n, yaln谋z proqram
izah 枚z眉 run m眉xt蓹lif daxil olan.
Bel蓹 ki, daha 枚z眉n眉 run daha n elementl蓹rin b眉t枚vl眉kd蓹,
Siz onu q谋rmaq bil蓹r sol yar谋s谋 v蓹 sa臒 yar谋m
v蓹 sonra yenid蓹n ax谋r.
>> V蓹 sonra biz, vizual baxmaq laz谋md谋r M蓹n vizual 艧agird deyil蓹m, 莽眉nki.
Bu, m蓹nim 眉莽眉n daha yax艧谋 i艧l蓹yir.
Bel蓹likl蓹, biz burada bir vizual n眉mun蓹 baxmaq laz谋md谋r.
>> Alt谋 Biz bir s谋ra var deyirl蓹r elementl蓹ri, 3, 5, 2, 6, 4, 1, s谋ralan谋r deyil.
B眉t眉n h眉quqlar, bu s蓹hif蓹 haqq谋nda bir 莽ox var.
Sizl蓹rin baxmaq olar Bel蓹 ki Burada ilk add谋m, 3, 5, 2, 6, 4, 1,
Siz yar谋m ild蓹 split bil蓹r.
Siz 3, 5, 2, 6, 4, 1 var.
Bu siz蓹 aren't-- bilirik ki, onlar s谋ralan谋r v蓹 ya deyilik 蓹g蓹r bilmir蓹m,
bel蓹 ki, yar谋m, onlar谋 par莽alayaraq saxlamaq, yar谋s谋nda yar谋s谋nda, n蓹tic蓹d蓹 q蓹d蓹r
Siz yaln谋z bir element var.
V蓹 bir element h蓹mi艧蓹 do臒ru, 莽e艧idl蓹nir?
>> Bel蓹likl蓹, biz bilirik ki, 3, 5, 2, 4, 6, 1, 枚zl蓹ri t蓹r蓹find蓹n s谋ralan谋r.
陌ndi biz onlara birlikd蓹 geri qoymaq olar.
Bel蓹likl蓹, biz 3, 5 bilirik.
Biz birlikd蓹 bu qoymaq.
Biz bu sorted bilirik.
H蓹l蓹 2 var.
Biz birlikd蓹 4 v蓹 6 qoya bil蓹r.
Biz ki, 莽e艧idl蓹nir bilirik ki, bel蓹 ki, biz birlikd蓹 qoymaq.
1 var.
>> V蓹 sonra yaln谋z baxmaq Burada bu iki yar谋ya indirir.
Siz 3, 5, 2, 2, 3, 5 var.
Siz yaln谋z m眉qayis蓹 ed蓹 bil蓹rsiniz h蓹r 艧eyin ba艧lan臒谋c谋.
Bu 莽e艧idl蓹nir bilirik ki, 莽眉nki v蓹 bu s谋ralan谋r ki, bilirik.
Bel蓹 ki, sonra da yoxdur 5 m眉qayis蓹, yaln谋z 3 m眉qayis蓹.
V蓹 2, bel蓹 ki, 3-d蓹n az 2 sonunda getm蓹k laz谋md谋r bilirik.
>> Orada eyni 艧ey.
1 Burada getm蓹k laz谋md谋r.
Siz getm蓹k zaman sonra qoymaq 眉莽眉n birlikd蓹 bu iki d蓹y蓹rl蓹r,
bu 莽e艧idl蓹nir bilirik ki, v蓹 ki, 莽e艧idl蓹nir bilirik.
Bel蓹 ki, sonra 1 v蓹 2, 1 az 2 edir.
Ki, 1 ki, siz蓹 deyir Bu sonunda getm蓹k laz谋md谋r
h蓹tta 3 v蓹 ya 5 baxaraq olmadan.
V蓹 sonra 4, yaln谋z bil蓹rsiniz Burada do臒ru gedir yoxlamaq.
Siz 5 baxmaq yoxdur.
6 il蓹 eyni 艧ey.
Bilirsiniz 6-- yaln谋z ki, baxd谋 laz谋m deyil.
>> V蓹 bel蓹 ki, yol, siz etdiyiniz 枚z眉n眉z眉 q蓹na蓹t
add谋mlar bir 莽ox m眉qayis蓹 etdiyiniz zaman.
Siz h蓹r m眉qayis蓹 etm蓹k yoxdur dig蓹r elementl蓹ri qar艧谋 element.
Siz yaln谋z olanlar谋 qar艧谋 m眉qayis蓹 Siz qar艧谋 m眉qayis蓹 etm蓹k laz谋md谋r.
Bel蓹 ki, abstrakt anlay谋艧 n枚v眉 var.
He莽 bir narahatl谋q deyil, 蓹g蓹r 莽ox sa臒 h蓹l蓹 vuru艧.
Amma 眉mumiyy蓹tl蓹, bu nec蓹 bir birl蓹艧m蓹si sort i艧l蓹yir.
Suallar, tez suallar, M蓹n h蓹r蓹k蓹t 蓹vv蓹l?
B蓹li.
>> Auditoriya: Bel蓹 ki, siz almaq bildirib ki, 1 v蓹 sonra 4 v蓹 6
v蓹 onlar谋 qoydu.
Bel蓹 ki, those-- deyil deyil Siz onlara baxaraq
Biz b眉t枚vl眉kd蓹 ayr谋-ayr谋 elementl蓹ri kimi?
ANDI PENG: B蓹li.
Bel蓹 ki, n蓹 ki, 蓹sas蓹n
yeni array yarad谋r.
Bel蓹 ki, burada, m蓹n bilir蓹m ki, 枚l莽眉s眉 3 iki Diziler, sa臒?
Bel蓹 ki, bilirik ki, m蓹nim s谋ralan谋r array alt谋 elementl蓹ri olmal谋d谋r.
Bel蓹 ki, yaln谋z bir yaratmaq yadda艧 yeni m蓹bl蓹臒i.
Bel蓹 ki, n枚v kimi ist蓹yirik yadda艧 israf莽谋 olan
lakin etm蓹z bel蓹 ki莽ik, 莽眉nki.
Bel蓹 ki, 1 baxmaq v蓹 2 oldu.
V蓹 1 az 2 oldu臒unu bilirik.
Bel蓹 ki, 1-ci getm蓹k laz谋md谋r ki, bilirik o b眉t眉n ba艧lan臒谋c谋.
>> Siz h蓹tta laz谋m deyil 3 v蓹 5 oldu.
Bel蓹 ki, 1 orada gedir bilirik.
Sonra 蓹sas蓹n 1 k蓹sm蓹k.
Bu, bizim 眉莽眉n 枚l眉 kimi, var.
Sonra biz yaln谋z 2 var, 3, 5, sonra 4 v蓹 6.
V蓹 sonra, siz bilirsiniz ki, m眉qayis蓹 4 v蓹 2,
oh, 2 getm蓹k laz谋md谋r.
Bel蓹 ki, 2 a艧a臒谋 Plop, siz onu k蓹sm蓹k.
Bel蓹 ki, sonra yaln谋z 3 var 4 v蓹 6 5.
V蓹 yaln谋z onu Do臒rama saxlamaq Siz array onlar谋 qoymaq q蓹d蓹r.
>> Auditoriya: Bel蓹 ki, yaln谋z h蓹mi艧蓹 ist蓹yirik [I艧itilemez] m眉qayis蓹?
>> ANDI PENG: M蓹hz.
Bel蓹 ki, m蓹nada, etdiyiniz yaln谋z m眉qayis蓹, mahiyy蓹tc蓹,
dig蓹r qar艧谋 bir s谋ra.
V蓹 bilirik, 莽眉nki Bu, siz s谋ralan谋r ki,
vasit蓹sil蓹 baxmaq yoxdur n枚mr蓹l蓹r b眉t眉n.
Siz yaln谋z ilk bir baxmaq laz谋md谋r.
V蓹 sonra yaln谋z Plop bil蓹r Onlara a艧a臒谋, bilirsiniz, 莽眉nki
onlar谋n m蓹nsub laz谋m onlar谋n m蓹nsub.
B蓹li.
Yax艧谋 suald谋r.
>> V蓹 sonra siz 蓹g蓹r varsa bir az iddial谋,
bu kodu baxmaq 眉莽眉n 莽ekinmeyin.
Bu, h蓹qiq蓹t蓹n deyil fiziki h蓹yata ke莽irilm蓹si
biz daxil sort yazmaq nec蓹.
V蓹 bu 莽ox q谋sa g枚r蓹 bil蓹rsiniz.
Arxas谋nda Amma fikir bu, olduqca m眉r蓹kk蓹bdir.
Bel蓹 ki, bu r蓹sm kimi hiss 蓹g蓹r 枚dev gec蓹, 莽ekinmeyin.
>> OLDU.
Davud da m眉hazir蓹 bu art谋q getdi.
茝n yax艧谋 halda hans谋lard谋r runtimes, 蓹n pis halda runtimes,
v蓹 birl蓹艧m蓹si n枚v g枚zl蓹nilir runtimes?
Bir ne莽蓹 saniy蓹 d眉艧眉nm蓹k.
Bu olduqca 莽蓹tindir, lakin c眉r Bu bar蓹d蓹 intuitiv d眉艧眉n眉r蓹m.
Oldu.
>> Auditoriya: 蓹n pis halda n log n deyilmi?
ANDI PENG: M蓹hz.
V蓹 niy蓹 n log n edilir.
>> Auditoriya: deyilmi 莽眉nki d枚z蓹r蓹k daha s眉r蓹tli olur
bel蓹 ki, bir funksiyas谋 kimi 蓹v蓹zin蓹 sad蓹c蓹 n olan
kare v蓹 ya bir 艧ey?
ANDI PENG: M蓹hz.
Bel蓹 ki, s蓹b蓹bi Bu i艧 n log edir
siz蓹 n蓹 莽眉nki n b眉t眉n bu add谋mlar etdiyini?
Siz yaln谋z sa臒, yar谋m ild蓹 Do臒rama edirik?
V蓹 bel蓹 ki, biz bunu etdiyiniz zaman bunu b眉t眉n ki, daxil
yar谋s谋nda bir problem ay谋r谋c谋, yar谋s谋nda yar谋s谋nda daha yar谋ya indirir.
V蓹 bu m蓹nada, siz c眉r bil蓹rsiniz x蓹tti model aradan qald谋r谋lmas谋
ki, biz istifad蓹 etdik.
Siz do臒ramaq 莽眉nki yar谋s谋nda h蓹r 艧eyi, bir log var.
Bu yaln谋z riyazi var ifad蓹 ed蓹n yolu.
>> V蓹 sonra n蓹hay蓹t, sonunda, sen yaln谋z son bir ke莽id vasit蓹sil蓹 edilm蓹si
sa臒, 眉莽眉n onlara b眉t眉n qoymaq 眉莽眉n?
V蓹 bel蓹 ki, yaln谋z varsa bir 艧ey deyil ki, n var.
V蓹 bel蓹 c眉r ist蓹yirik iki birlikd蓹 vurulmas谋.
Siz ki, son var kimi bel蓹 ki, n log il蓹 burada n kontrol
burada.
V蓹 莽oxaltmaq 蓹g蓹r Onlara ki, n n daxil oldu.
>> V蓹 bel蓹 蓹n yax艧谋 halda v蓹 蓹n pis halda v蓹 b眉t眉n n log n ki, g枚zl蓹nilir.
Ba艧qa n枚v kimi d蓹 var.
Bu se莽im sort kimi bu m蓹nada
n蓹 etm蓹z sizin siyah谋s谋 yaln谋z gedir, var
Eyni 艧ey h蓹r zaman etm蓹k.
OLDU.
Baxmayaraq ki, u艧aqlar G枚rd眉y眉n眉z kimi, bel蓹 ki, biz n through-- getdi sonra n枚v
kvadrat, bu, 莽ox s蓹m蓹r蓹li deyil.
V蓹 h蓹tta bu n log n 蓹n s蓹m蓹r蓹li deyil.
U艧aqlar maraql谋 varsa, sort mexanizml蓹r var
onlar ki, s蓹m蓹r蓹li var ki, dem蓹k olar ki, 蓹sas蓹n d眉z uzunlu臒u.
>> Siz bir g眉nl眉k n nin var.
Siz bir log daxil n in var.
Biz onlara toxunmay谋n 陌ndi bu sinif.
Amma u艧aqlar maraql谋 蓹g蓹r, n蓹 var, google 莽ekinmeyin
蓹n s蓹m蓹r蓹li 莽e艧idl蓹nm蓹si mexanizml蓹ri.
M蓹n var, bilmir蓹m b蓹zi h蓹qiq蓹t蓹n funny olanlar
like-- b蓹zi h蓹qiq蓹t蓹n var insanlar etm蓹k funny olanlar谋.
V蓹 nec蓹 wonder onlar He莽 ki, d眉艧眉nd眉m.
B蓹zi ehtiyat varsa, google vaxt, on, b蓹zi funny yollar谋 hans谋lard谋r
ki, el蓹c蓹 d蓹 xalq谋mA臒谋r s蓹m蓹r蓹li ways-- n蓹f蓹r
n枚v h蓹yata bilmi艧l蓹r.
OLDU.
V蓹 burada yaln谋z bir laz谋ml谋 ki莽ik chart var.
Hesab edir蓹m ki, viktorina 0 蓹vv蓹l, siz b眉t眉n bilirik oda y蓹qin ki, 莽al谋艧谋r谋q olacaq
ki, yadda.
Bel蓹 ki, u艧aqlar orada g枚z蓹l.
Just made-- m蓹ntiq unutmay谋n niy蓹 o n枚mr蓹l蓹ri meydana g蓹l蓹n edilmi艧dir.
Siz h蓹mi艧蓹 itirilmi艧 edirsinizs蓹, yaln谋z etm蓹k Siz n枚v var n蓹 bilirik.
V蓹 ax谋r bil蓹r n蓹z蓹r蓹 onlara
niy蓹 o anlamaq 眉莽眉n cavab o cavab var.
>> Oldu.
Bel蓹 ki, biz h蓹r蓹k蓹t olacaq n蓹hay蓹t, axtar谋艧 眉莽眉n,.
脟眉nki sizin kimi olan pset oxumaq,
Axtar谋艧 d蓹 hiss蓹sidir bu h蓹ft蓹 problem m眉蓹yy蓹n edir.
Siz h蓹yata ke莽irilm蓹si 眉莽眉n istenir axtar谋艧lar iki n枚v.
Bir x蓹tti axtar谋艧 v蓹 bir ikili axtar谋艧 edir.
>> Bel蓹 ki, x蓹tti axtar谋艧 olduqca asand谋r.
Siz yaln谋z element axtarmaq ist蓹yirsinizs蓹 Siz almaq 蓹g蓹r bir siyah谋 g枚rm蓹k.
Siz yaln谋z vasit蓹sil蓹 t蓹krarlamaq laz谋md谋r.
V蓹 bir 艧ey b蓹rab蓹rdir 蓹g蓹r, Siz yaln谋z sa臒, qaytara bil蓹r?
Amma biz 蓹n ist蓹yirik ki, s枚hb蓹t maraql谋
ikili axtar谋艧 olan sa臒, b枚lm蓹k v蓹 mexanizmi f蓹th ed蓹n
David m眉hazir蓹 n眉mayi艧 olunub.
>> Telefon kitab misal saxla o q蓹d蓹r c蓹lb edir ki,
o c眉r m眉bariz蓹 bir Bu 枚t蓹n il bir az,
Siz yar谋s谋nda problem b枚lm蓹k oldu臒u, yar谋s谋nda yar谋s谋nda, t蓹krar,
Siz arad谋臒谋n谋z n蓹 tapmaq q蓹d蓹r?
V蓹 var d蓹 ki, uzunlu臒u.
V蓹 ed蓹 bil蓹rsiniz, bu 蓹h蓹miyy蓹tli d蓹r蓹c蓹d蓹 daha s蓹m蓹r蓹li
axtar谋艧 ba艧qa bir n枚v眉 莽ox.
>> Bel蓹likl蓹, biz haqq谋nda getm蓹k yolu ikili axtar谋艧 h蓹yata
, biz bir s谋ra olsayd谋, index 0 6, yeddi elementl蓹ri,
biz right-- ortada baxa bil蓹rsiniz sorry, bizim sual 蓹g蓹r first--
Biz sual soru艧maq ist蓹yirsinizs蓹, yoxdur array, 7 element ola
t蓹bii ki, insanlar olan v蓹 olan ki莽ik array bel蓹, bu, bizim 眉莽眉n asan
b蓹li dem蓹k.
Amma yol ikili h蓹yata ke莽irilm蓹si Axtar谋艧 ortas谋nda baxmaq olard谋.
>> Biz index 3 bilirik ki, orta, 脟眉nki biz
yeddi elementl蓹ri var bilir蓹m.
N蓹 7 2 b枚l眉n眉r?
Siz 蓹lav蓹 1 ki k蓹sm蓹k olar.
茝g蓹r ortada 3 var.
Bel蓹 ki, 7 b蓹rab蓹r 3 array var?
Bu do臒ru deyil?
Amma biz 莽ek bir ne莽蓹 ed蓹 bil蓹rsiniz.
3 az谋 7 v蓹 ya array var 7-d蓹n 莽ox 3 s谋ra edir?
>> V蓹 biz az 7-d蓹n var ki, bilirik.
Bel蓹likl蓹, biz bilirik oh, bu olmal谋d谋r ki, yar谋da buraxd谋 deyil.
Biz olmal谋d谋r bilirik sa臒 yar谋s谋nda, sa臒?
Bel蓹 ki, biz yaln谋z yar谋s谋 s谋ra k蓹sm蓹k olar.
Biz h蓹tta yoxdur Art谋q baxmaq.
Biz bilirik ki, 莽眉nki Bizim problem yar谋s谋
biz cavab oldu臒unu bilirik Bizim problem sa臒 yar谋m.
Bel蓹 ki, biz yaln谋z indi baxmaq.
>> Bel蓹 ki, indi biz baxmaq sol n蓹 orta.
Ki, index 5.
Biz yen蓹 eyni 莽ek v蓹 biz bu ki莽ik var ki, g枚r蓹c蓹ksiniz.
Bel蓹 ki, sol baxmaq.
V蓹 sonra biz ki, 莽ek g枚r眉r眉k.
Array d蓹y蓹ri edir 7 b蓹rab蓹r index 4?
Bu.
Bel蓹likl蓹, biz do臒ru qay谋tmaq, 莽眉nki bil蓹r biz siyah谋s谋na d蓹y蓹r tapd谋.
M蓹n yolu il蓹 getdi yol yoxdur ham谋 眉莽眉n m蓹nada?
OLDU.
M蓹n kimi, b蓹lk蓹 u艧aqlar verm蓹k laz谋md谋r 眉莽, d枚rd d蓹qiq蓹 anlamaq 眉莽眉n
nec蓹 bu pseudocode.
>> M蓹n bir yazmaq 眉莽眉n xahi艧 t蓹s蓹vv眉r geri funksiyas谋 adlan谋r axtar谋艧 ()
d蓹y蓹ri, bir Boolean d蓹y蓹ri, ki, kimi do臒ru idi v蓹 ya yalan
Siz a艧kar etdikd蓹 do臒ru d蓹y蓹ri, siz 蓹g蓹r yalan.
V蓹 sonra idi d蓹y蓹ri ke莽di
d蓹y蓹rl蓹ri daxil arad谋臒谋n谋z ki, array oh, m蓹n m眉tl蓹q qoymaq
s蓹hv yerd蓹 ki.
OLDU.
Zaten ki, olmal谋d谋r d蓹y蓹rl蓹ri sa臒 眉莽眉n olmu艧dur.
V蓹 sonra int n say谋 ki, massivin elementl蓹rinin.
Nec蓹 莽al谋艧谋r haqq谋nda getm蓹k olard谋 ki, problem pseudocode?
M蓹n siz蓹 kimi u艧aqlar verm蓹k laz谋md谋r 眉莽 d蓹qiq蓹 bunu.
Xeyr, m蓹n only-- var edir蓹m B蓹li, sa臒 q蓹d蓹r burada bir var.
Auditoriya: I Can?
ANDI PENG: B蓹li, m蓹n siz蓹 var.
Ki, i艧l蓹yir?
S蓹rin, OK.
>> OLDU.
B眉t眉n h眉quqlar u艧aqlar, biz ist蓹yirik onu dayand谋rmaq 眉莽眉n gedir.
OLDU.
Bel蓹likl蓹, biz bu sevimli var g眉man bu n d蓹y蓹rl蓹ri il蓹 az array.
M蓹n x蓹tl蓹ri c蓹lb etm蓹yib.
Amma biz nec蓹 getm蓹k olard谋 Bu yazmaq 眉莽眉n 莽al谋艧谋r谋q?
H蓹r k蓹s ist蓹yir M蓹n蓹 ilk x蓹tt verm蓹k?
M蓹n蓹 verm蓹k ist蓹yirsinizs蓹 Bu pseudocode ilk line.
>> Auditoriya: [i艧itilemez]
Auditoriya: Siz ist蓹yir蓹m vasit蓹sil蓹 t蓹krarlamaq 眉莽眉n
Auditoriya: Just bir loop 眉莽眉n?
Auditoriya: --for.
>> ANDI PENG: Bel蓹 ki, bu bir az 莽蓹tin var.
Ist蓹diyiniz about-- d眉艧眉n眉n Bu loop 莽al谋艧an saxlamaq 眉莽眉n
yenid蓹n 眉z蓹rind蓹 zaman q蓹d蓹r?
>> Auditoriya: [i艧itilemez] q蓹d蓹r d蓹y蓹rinin d蓹y蓹rin蓹 b蓹rab蓹rdir.
ANDI PENG: M蓹hz.
Bel蓹 ki, h蓹qiq蓹t蓹n, yaln谋z yazma bil蓹r biz bunu daha da sad蓹l蓹艧dirm蓹k bil蓹r.
Biz sa臒, bir m眉dd蓹t loop ed蓹 bil蓹r?
Bel蓹 ki, yaln谋z loop ola bil蓹r biz bir m眉dd蓹t oldu臒unu bilirik.
Amma indi, m蓹n gedir蓹m n蓹 il蓹 - "loop" dem蓹k?
Loop n蓹 until-- Bizim bit蓹n v蓹ziyy蓹ti?
M蓹n e艧itdim edir蓹m.
M蓹n kims蓹 dem蓹k e艧itdim.
>> Auditoriya: D蓹y蓹rl蓹r orta b蓹rab蓹rdir.
ANDI PENG: yen蓹 deyir蓹m.
Q蓹d蓹r v蓹 ya, Auditoriya d蓹y蓹ri siz axtar谋艧 edirik
orta d蓹y蓹rin蓹 b蓹rab蓹rdir.
>> ANDI PENG: orada deyil n蓹 olur?
N蓹 siz axtar谋艧 edirik d蓹y蓹ri bu array h蓹qiq蓹t蓹n deyil?
Auditoriya: Siz 1 qay谋tmaq.
>> ANDI PENG: Amma biz n蓹 ist蓹yirik biz bir v蓹ziyy蓹t varsa q蓹d蓹r loop?
B蓹li.
>> Auditoriya: yaln谋z bir d蓹y蓹r var q蓹d蓹r?
ANDI PENG: Siz loop until-- bel蓹 ki, siz etdiyiniz bilirik ki,
sa臒, bir max d蓹y蓹ri 眉莽眉n gedir?
V蓹 siz olacaq bilirik ki, sa臒 min d蓹y蓹ri var?
D蓹, bir 艧ey var, 莽眉nki M蓹n 蓹vv蓹l dem蓹k unuttum
ki, bir 艧ey ikili axtar谋艧 haqq谋nda t蓹nqidi
Sizin array art谋q 莽e艧idl蓹nir olunur.
Bunu he莽 bir yol var, 莽眉nki Bu yaln谋z t蓹sad眉fi d蓹y蓹rl蓹r 蓹g蓹r.
Biri 蓹g蓹r bilmir蓹m dig蓹r daha b枚y眉k, sa臒?
>> Bel蓹 ki, bilirik ki, sizin max v蓹 Sizin d蓹qiq蓹 sa臒, burada var?
Siz d眉z蓹li艧 etm蓹k olacaq 蓹g蓹r Sizin d蓹qiq蓹 v蓹 mid-- sizin max
yaln谋z g眉man ed蓹k sizin ortalar谋nda d蓹y蓹ri do臒ru burada var
siz 蓹sas蓹n olacaq loop minimum q蓹d蓹r
sa臒, sizin max eyni, v蓹 ya haqq谋nda Sizin max sizin min eyni deyil.
Sa臒?
Ki, ba艧 zaman, 莽眉nki siz bilirsiniz ki, Siz n蓹hay蓹t eyni d蓹y蓹r t蓹艧kil etdik.
Bel蓹 ki, sizin min q蓹d蓹r loop ist蓹yir蓹m daha az v蓹 ya oops to-- b蓹rab蓹r
deyil 莽ox v蓹 ya b蓹rab蓹r daha az, max around-- dig蓹r yoldur.
>> Ki, hissi etm蓹k mi?
Hesab edir蓹m ki, h眉ququ almaq 眉莽眉n bir ne莽蓹 莽al谋艧谋r etdi.
Amma loop sizin max d蓹y蓹ri q蓹d蓹r mahiyy蓹tc蓹 dem蓹k olar ki, az
daha ya minimum b蓹rab蓹r, sa臒?
Bildiyiniz zaman ki Siz n枚qt蓹d蓹 etdik ki.
Auditoriya: zaman ki maksimum d蓹y蓹ri minimum az ola bil蓹rmi?
ANDI PENG: Siz saxlamaq , d眉z蓹li艧 hans谋
biz gedir n蓹 bu bunu etm蓹k.
Ki, hissi edirmi?
Minimum v蓹 maksimum 蓹dal蓹tli Biz y蓹qin ki, integers
ist蓹diyiniz davam yaratmaq biz arad谋臒谋n谋z harada track.
Array m枚vcuddur, 莽眉nki as谋l谋 olmayaraq, biz i艧le.
Kimi, biz, h蓹qiq蓹t蓹n, fiziki deyilik sa臒 serial谋n off Do臒rama?
Biz yaln谋z d眉z蓹li艧 edirik biz bax谋r谋q.
Ki, hissi edirmi?
>> Auditoriya: B蓹li.
>> ANDI PENG: OK.
Ki, loop 眉莽眉n 艧蓹rt var Bel蓹 ki, biz bu loop daxilind蓹 n蓹 ist蓹yirsiniz?
Biz n蓹 etm蓹k ist蓹y蓹n olacaq?
Bel蓹 ki, indi, biz var bir max v蓹 min, sa臒,
y蓹qin ki, burada haradasa yaratm谋艧d谋r.
Biz y蓹qin ki, ist蓹yir蓹m olacaq sa臒 orta tapmaq 眉莽眉n?
Nec蓹 ki, biz olacaq orta tapmaq m眉mk眉n?
Mathematical-- n蓹dir
Auditoriya: Max plus 2 b枚l眉n眉r min.
ANDI PENG: M蓹hz.
Ki, hissi edirmi?
V蓹 u艧aqlar niy蓹 biz g枚r眉rs眉n眉z bu niy蓹 yaln谋z use-- etm蓹yib
蓹v蓹zin蓹 bunu yaln谋z n 2 b枚l眉n眉r?
N d蓹y蓹ri 莽眉nki eyni qalmaq olacaq.
Sa臒?
Amma biz minimum t蓹nziml蓹m蓹k v蓹 maksimum d蓹y蓹rl蓹ri, onlar d蓹yi艧m蓹k olacaq.
V蓹 n蓹tic蓹 olaraq, bizim orta 莽ox d蓹yi艧dirm蓹k 眉莽眉n gedir.
Biz ist蓹yirik n蓹 ki, var burada bu h眉ququ yoxdur.
OLDU.
>> V蓹 sonra, indi ki, biz yeah varsa, bizim g枚rd眉k.
>> Auditoriya: Just tez question-- zaman min v蓹 max dem蓹k,
ki, f蓹rz olunur Bu, art谋q s谋ralan谋r?
>> ANDI PENG: B蓹li, ki, h蓹qiq蓹t蓹n bir bir ikili axtar谋艧 眉莽眉n ilkin 艧蓹rt
Siz var ki, bu s谋ralan谋r bilm蓹k.
Niy蓹 sort olan siz yazmaq sizin problem ikili axtar谋艧 蓹vv蓹l m眉蓹yy蓹n.
OLDU.
Bel蓹 ki, indi biz burada bizim orta bilirik ki, , n蓹 burada n蓹 etm蓹k ist蓹yirsiniz edir?
>> Auditoriya: Biz m眉qayis蓹 etm蓹k ist蓹diyiniz dig蓹r bir ki.
ANDI PENG: M蓹hz.
Bel蓹 ki, m眉qayis蓹 etm蓹k olacaq d蓹y蓹ri ortalar谋nda, sa臒?
V蓹 n蓹 deyir biz蓹 m眉qayis蓹 zaman?
Biz sonra n蓹 etm蓹k ist蓹yirsiniz?
>> Auditoriya: d蓹y蓹r olarsa ortalar谋nda 莽ox, biz onu k蓹sm蓹k ist蓹yir蓹m.
ANDI PENG: M蓹hz.
D蓹y蓹ri b枚y眉k Bel蓹 ki ortalar谋nda 莽ox, biz ist蓹yirik
bu d蓹yi艧m蓹k ist蓹yirsinizs蓹 gedir minimum v蓹 Maxes T蓹klif Reading, sa臒?
Biz d蓹yi艧dirm蓹k ist蓹yirsiniz?
Biz bilirik Bel蓹 ki, 蓹g蓹r d蓹y蓹ri haradasa burada biz d蓹yi艧dirm蓹k 眉莽眉n n蓹?
Biz bizim d蓹yi艧m蓹z ist蓹yir蓹m minimum sa臒 ortalar谋nda olacaq?
V蓹 sonra ba艧qa, bu var, 蓹g蓹r yar谋m, n蓹 biz d蓹yi艧dirm蓹k ist蓹yirsiniz?
>> Auditoriya: Maksimum.
ANDI PENG: B蓹li.
V蓹 sonra yaln谋z olacaq sa臒 loop saxlamaq 眉莽眉n?
Indi bir iteration sonra vasit蓹sil蓹 siz burada bir max var.
V蓹 sonra bir orta yeniden hesaplayabilirsiniz.
V蓹 sonra m眉qayis蓹 ed蓹 bil蓹rsiniz.
V蓹 siz saxlamaq olacaq d蓹qiq蓹 v蓹 Maxes q蓹d蓹r
mahiyy蓹tc蓹 n枚qt蓹d蓹 var.
Siz bilirsiniz ki, zaman ki siz sonunda t蓹艧kil etdik.
V蓹 ya siz g枚rd眉k v蓹 ya o n枚qt蓹d蓹 deyil.
>> Bu ham谋 眉莽眉n m蓹nada edirmi?
OLDU.
Bu, olduqca vacibdir Siz laz谋md谋r, 莽眉nki
Sizin kodu ax艧am bu yazmaq 眉莽眉n.
Amma u艧aqlar olduqca yax艧谋 var Siz bunu etm蓹k laz谋md谋r n蓹 m蓹nada,
olan yax艧谋d谋r.
OLDU.
Bel蓹likl蓹, biz yeddi haqq谋nda var d蓹qiq蓹d蓹 b枚lm蓹 buraxd谋.
Bel蓹likl蓹, biz haqq谋nda dan谋艧maq olacaq biz bunu olacaq bu pset.
Bel蓹 ki, pset iki yar谋ya indirir b枚l眉n眉r.
陌lk yar谋 daxildir bir tapmaq h蓹yata
茝g蓹r x蓹tti axtar谋艧 yazmaq, bir ikili axtar谋艧 v蓹 莽e艧idl蓹nm蓹si alqoritmi.
>> Bel蓹 ki, bu ilk bir pset oldu臒u vaxt
deyirl蓹r n蓹 siz蓹 u艧aqlar verilm蓹si olacaq distribution kodu kodu
biz 蓹vv蓹lc蓹d蓹n yaz谋l谋 ki, ancaq off b蓹zi par莽alar谋 sol
Siz yaz谋l谋 ba艧a 莽atd谋rmaq 眉莽眉n.
Bu baxmaq u艧aqlar, bel蓹 ki, indeksi, h蓹qiq蓹t蓹n, qorxuram almaq bil蓹r.
Siz Ahh, m蓹n kimi, yaln谋z edirsinizs蓹 ki, bunu n蓹 bilmir蓹m,
M蓹n kimi, ki, g枚r眉n眉r, bilmir蓹m bel蓹 m眉r蓹kk蓹b, Ahh, istirah蓹t.
Yax艧谋d谋r.
Spec oxuyun.
spec tam siz蓹 izah ed蓹c蓹k Bu proqramlar谋n b眉t眉n n蓹 edirik.
>> M蓹s蓹l蓹n, generate.c bir proqramd谋r ki, pset il蓹 g蓹l蓹c蓹k.
Siz, h蓹qiq蓹t蓹n, toxunmaq var, lakin yoxdur Siz bunu n蓹 anlamaq laz谋md谋r.
V蓹 generate.c, bunu b眉t眉n ya t蓹sad眉fi 蓹d蓹d yaradan
v蓹 ya bir kimi, bir toxum ver蓹 bil蓹r Bu edir 蓹vv蓹lc蓹d蓹n haz谋rlanm谋艧 say谋,
v蓹 daha 蓹d蓹d yarad谋r.
Bel蓹 ki, x眉susi bir yol var generate.c h蓹yata olan
Siz yaln谋z n枚mr蓹l蓹ri bir d蓹st蓹 ed蓹 bil蓹rsiniz Siz dig蓹r 眉sullarla test 眉莽眉n.
>> Bel蓹 ki, ist蓹yirdi 眉莽眉n M蓹s蓹l蓹n, sizin tapmaq test,
Siz generate.c run ist蓹yirsiniz, , 蓹d蓹d bir d蓹st蓹 yaratmaq
v蓹 sonra k枚m蓹k莽il蓹ri funksiyas谋 ax谋r.
Siz oldu臒unuz sizin k枚m蓹k莽il蓹ri funksiyas谋 h蓹qiq蓹t蓹n fiziki kodu yazmaq.
V蓹 kitabxana fayl谋 olaraq k枚m蓹k莽il蓹ri hesab ki, tapmaq 莽a臒谋r谋r yaz谋l谋 edirik.
Bel蓹 helpers.c 蓹rzind蓹, siz laz谋md谋r axtar谋艧 v蓹 莽e艧idl蓹nm蓹si yoxdur.
>> V蓹 sonra mahiyy蓹tc蓹 olacaq yaln谋z onlar谋n ham谋s谋n谋 qoymaq.
nec蓹 spec siz蓹 x蓹b蓹r ver蓹c蓹kdir command line qoymaq.
V蓹 olmad谋臒谋n谋 test ed蓹 bil蓹rsiniz v蓹 ya Sizin sort v蓹 axtar谋艧 莽al谋艧谋r谋q.
Cool.
H蓹r k蓹s art谋q ba艧lay谋b v蓹 qar艧谋la艧谋lan probleml蓹r v蓹 ya suallar谋n谋z
bu il蓹 indi var?
OLDU.
>> Auditoriya: g枚zl蓹yin.
M蓹nim bir sual谋m var.
>> ANDI PENG: B蓹li.
>> Auditoriya: M蓹n bunu a莽谋lm谋艧 helpers.c x蓹tti axtar谋艧
v蓹 bu, h蓹qiq蓹t蓹n i艧 deyil.
Amma sonra, biz yaln谋z a艧kar silin v蓹 ikili axtar谋艧 var.
Bu i艧 deyil, 蓹g蓹r Bel蓹 ki, f蓹rqi yoxdur?
>> ANDI PENG: Q谋sa cavab yoxdur.
Lakin ild蓹n biz deyilik ist蓹yirik
Auditoriya: Amma he莽 kim nin h蓹qiq蓹t蓹n yoxlan谋lmas谋.
ANDI PENG: Biz he莽 vaxt ist蓹yirik ki, g枚r蓹c蓹ksiniz gedir.
Amma y蓹qin ki, etm蓹k ist蓹yir蓹m Sizin axtar谋艧 i艧l蓹rini davam etdirir.
Sizin x蓹tti 脟眉nki 蓹g蓹r Axtar谋艧 i艧 deyil,
sonra 艧ans谋n谋 sizin ikili var Axtar谋艧 kimi yax艧谋 getmir.
Ox艧ar var Onlar谋n h蓹m d蓹 m蓹ntiq.
V蓹 he莽 bir, h蓹qiq蓹t蓹n etm蓹z.
Bel蓹 ki, yaln谋z olanlar谋 莽evirm蓹k laz谋md谋r sort v蓹 ikili axtar谋艧 var.
B蓹li.
>> V蓹 h蓹m莽inin, u艧aqlar bir 莽ox idi helpers.c t蓹rtib etm蓹k 眉莽眉n 莽al谋艧谋r谋q.
Siz, h蓹qiq蓹t蓹n, icaz蓹 deyilik bunu helpers.c 莽眉nki
蓹sas funksiyas谋 yoxdur.
V蓹 bel蓹 ki, yaln谋z olmal谋d谋r h蓹qiq蓹t蓹n t蓹rtib olmaq
z蓹ngl蓹r tapmaq 莽眉nki, yaratmaq v蓹 tapmaq helpers.c v蓹 bu 蓹rzind蓹 f蓹aliyy蓹t g枚st蓹rir.
Ki ay谋klama edir, bel蓹 ki, butt bir a臒r谋.
Amma ki, biz n蓹 var, n蓹 var.
Auditoriya: Siz sa臒, b眉t眉n etm蓹k?
ANDI PENG: Siz yaln谋z bil蓹rsiniz B蓹li, el蓹c蓹 d蓹 b眉t眉n edir.
OLDU.
Bel蓹 ki, n蓹 bax谋m谋ndan var pset siz b眉t眉n etm蓹k xahi艧 olunur.
茝g蓹r h蓹r hans谋 bir sual谋n谋z varsa, hiss b枚lm蓹 sonra m蓹n蓹 sual pulsuz.
M蓹n 20 d蓹qiq蓹 kimi, burada olacaq.
>> V蓹 B蓹li, pset nin h蓹qiq蓹t蓹n, pis deyil.
Siz u艧aqlar OK olmal谋d谋r.
Bu, yaln谋z t蓹limatlar谋na 蓹m蓹l edin.
C眉r m蓹ntiqi, hissi var, n蓹 olmal谋d谋r ba艧 v蓹 siz g枚z蓹l olacaq.
Qorxuram etm蓹yin.
Kod bir 莽ox var art谋q yaz谋l谋.
茝g蓹r deyils蓹 qorxuram etm蓹yin ki, b眉t眉n n蓹 dem蓹kdir ba艧a d眉艧m蓹k.
Bir 莽ox varsa, bu tamamil蓹 g枚z蓹l var.
V蓹 ofis saat g蓹lir.
Biz bir n蓹z蓹r k枚m蓹k ed蓹c蓹yik.
>> Auditoriya: 蓹lav蓹 il蓹 funksiyalar谋, biz bu q蓹d蓹r g枚r眉n眉r?
>> ANDI PENG: B蓹li, h蓹min kodu var.
15 oyun, yar谋s谋 da Bu art谋q sizin 眉莽眉n yaz谋l谋.
Bel蓹 ki, o funksiyalar谋 Art谋q kodu.
Yep.
Oldu.
Yax艧谋, u臒urlar yax艧谋.
Bu iyr蓹nc g眉n.
Bel蓹 ki, in艧allah u艧aqlar 莽ox hiss etmir daxili olma v蓹 kodla艧d谋rma haqq谋nda pis.