>> DAVID MALAN: Ondo da.
Itzuli gara.
Beraz, programazio on segmentu honetan zer ez genuke gauza nahasketa bat da, pentsatu nuen.
One, egin apur bat zerbaiten eskuak-on,
gehiago ludiko bat erabiliz arren programazio environment--
bat dela erakutsiz zehazki ideia mota du
dugu buruz hitz egiten, baina apur bat gehiago formalki.
Bi, batzuk begiratu Modu tekniko gehiago
Programatzaile bat zela benetan konpondu miatzen arazoa bezalako arazoak
duten begiratu aurretik dugu eta gainera, funtsean
interesgarri ordenatzeko arazoa.
>> get joan bere gain hartu besterik ez dugu Telefono liburu hori horrela antolatu zen,
baina hori bakarrik da benetan mota bat hainbat modutan arazoren hard
konpondu.
Beraz, hauek erabili ahal izango dugu arazo klase bat
Gauzak ordezkari dagoela den, oro har, konpondu liteke.
Eta gero hitz egingo dugu xehetasun batzuk buruz zer
deitzen dira datuak structures-- lotuta zerrendak bezalako modu fancier
eta hash taulak eta zuhaitz Programatzaile bat litzateke benetan
erabili eta, oro har, erabili arbel zuri bat margotzeko
argazki bat zer zuen inplementatzeko ENVISIONS
software pieza batzuk.
>> Beraz, egin eskuak-on the zati lehen utzi.
Beraz, besterik gabe, zure esku batekin zikin ingurumena izeneko scratch.mit.edu.
Hau tresna bat erabili dugu, hau da gure graduko klasean.
oso diseinatutako Nahiz 12 urte eman ondoren,
erabili dugu sortu du pixka bat nahiko parte
polit bat, fun geroztik ikasteko modu grafikoa
programazioari buruz zerbait apur bat.
Beraz, URL hori buru, non duzu Orri bat ikusi beharko nahiko honetan bezala,
eta aurrera eta sakatu Bat egin Scratch goiko eskuineko
eta erabiltzaile-izena eta bat aukeratu pasahitza eta, azken finean, lortu zaitez
account-- scratch.mit.edu bat.
hau erabili nuen bezala pentsatu nuen Aukera hau lehen erakusteko.
Galdera bat zen atsedenaldian zertaz kodea benetan itxura.
Eta hitz egiten ari ginen C buruz atsedenaldian,
in en bereziki bereziki bat txikiagoa hizkuntza zaharrago bat maila.
Eta egin dut azkar bat Google bilaketa C kodea aurkitu
bilaketa bitarra, algoritmoa for dugun Telefono liburu hori bilatu lehenago erabiltzen da.
Adibide zehatz honetan, noski, ez du telefono-liburu bat bilatu.
sorta oso bat bilatzen du, besterik ez da ordenagailuaren memorian zenbakiak.
Baina nahi izanez gero besterik lortu bisuala zer benetako programazio baten zentzua
hizkuntza itxura, itxura honen antzeko zerbait apur bat.
Beraz, 20-plus da, 30 edo, beraz, kode lerro,
baina hizketaldia dugu ziren break baino gehiago izatea
Nola hau benetan izan zen buruz lortzen zeroen eta morphed
eta ezin duzu besterik leheneratu bada prozesatu eta zeroen eta bai batetik joan
kodea itzuli.
>> Zoritxarrez, prozesua hain da eraldatzaile
dela asko errazago egin baino.
Aurrera joan nintzen eta benetan aktibatuta Programa hori, Backtracking,
zeroen eta bat bidez sartu Programa egikaritzerako konpiladoreak erabiltzen dut
gertatuko hemen eskubidearen nire Mac on.
Eta begiratu duzu pantaila bada Hemen, zehazki bideratua
erditik horiek sei zutabe on bakarra, zeroen eta bakarrik ikusiko duzu.
Eta horiek zero eta zeintzuk dira erabiltzen konposatzen zehazki, irizpide programa hori.
>> Eta orain bost bit zati bakoitza, zeroen eta byte bakoitza hemen,
adierazten instrukzio batzuk normalean ordenagailu baten barruan.
Eta hain zuzen ere, entzun dituzun bada marketing leloa "Intel barruan" - hori,
jakina, besterik gabe esan nahi izan duzu Intel CPU edo garuneko ordenagailu barruan.
Eta zer esan nahi duen PUZ bat da izango da Hori instrukzio multzo bat duzu,
nolabait esateko.
>> Munduko CPU behin, askok egun hauetan egin Intel horiek,
finitu bat ulertzen argibideak kopurua.
Eta argibide horiek mailan hain behean gisa gehitzeko, bi zenbaki horiek elkarrekin,
biderkatu bi zenbaki horiek elkarrekin, mugitu datu zati hau hemendik
Hemen memoria izateko, gorde hau Hemendik informazioa memorian hemen,
eta beraz forth-- beraz, oso, oso behe-maila, xehetasun ia elektronikoak.
Baina matematiko horiek eragiketak akoplatu
zer eztabaidatu dugu, Datuen irudikapena
zeroen eta, ahal dena eraikitzen
ordenagailu bat, gaur egin daiteke, ala ez textual, grafiko, musika da,
edo bestela.
>> Beraz, hau oso erraza da iristeko Azkar belar artean galduta.
Eta han asko da sintaktikoak erronkak
Horren bidez, errazena egin bada, Typos programa bat ere ez ergelena
ezgaitasunaren lan egingo du.
Eta beraz ordez bat erabiliz C bezalako hizkuntza goizean,
izango litzateke pentsatu nuen gehiago fun benetan egiten
zerbait gehiago bisuala, bertan berriz, umeentzako diseinatutako
Benetan manifestazio bat perfektua benetako programazio baten
hizkuntza hori besterik ez da gertatzen ordez testu pictures erabili
ideia horiek irudikatzeko.
>> Beraz, behin hain zuzen ere, izan duzu bat kontu scratch.mit.edu on,
sakatu Sortu botoia top at gunearen geratzen.
Eta bezalako ingurune bat ikusi beharko duzu bat nire pantailan ikusi nahi dut
hemen.
Eta besterik gabe, apur bat igarotzen dugu denbora pixka hemen jolasten.
Ikus dezagun ezin dugu guztiak konponduko bada zenbait Utzi arazoak elkarrekin honela.
>> Beraz, zer honen barruan ikusi ahal izango duzu environment-- eta benetan besterik utzi
me eteteko.
Da inor ez da hemen?
Ez hemen?
ONDO DA.
Hargatik seinalatu zidan gutxi batzuk ingurune honen ezaugarri.
>> Beraz, pantailaren goiko ezkerreko aldean, dugu Scratch etapa dute, nolabait esateko.
Scratch ez da soilik izenean programazio hizkuntza hau;
gainera, ez da katu baten izena dela lehenetsia ez laranja ikusiko duzu.
da etapa bat zuen, beraz, askoz bezala deskribatu dut
dortoka lehenago batean egotea bezala angeluzuzen taula zuri ingurumena.
Cat hau egungo munduan erabat mugatzen da rectangle eman duten goi han.
>> Bien bitartean, eskubidea Atzelari hemen, da
besterik gidoiak gunea, Arbel huts izango bada.
Hau da, non ari gara idazten joan gure une bat besterik programak.
Eta bloke hori guk erabili hau puzzle programa idazteko
piezak, bazaude Borondate hementxe horiek erdian,
eta sailkatu ari dira funtzionalitate arabera.
Beraz, adibidez, aurrera noa joan eta, gutxienez, horietako bat erakusteko.
Aurrera joan eta klik egingo dut Kontrol mailaren gora eman.
>> Beraz, goiko horiek eman sailkatuta daude.
Kontrol kategorian klik noa.
Baizik eta, Ekitaldiak klik noa Kategoria, lehen bat ireki gora.
Eta, nahiz eta batera jarraitu nahi izanez gero hau egiten dugun bezala, nahiko ongi etorri zara.
klik eta arrastatu hau noa Lehena, "berdea Ez klik."
Eta, ondoren, besterik gabe askatu noa gorabehera nire arbel hutsik goialdean.
>> Eta zer da Scratch buruz nice da puzzle pieza hau, noiz
beste puzzle batekin tartekatuta piezak, literalki egin da joan
zer puzzle pieza horiek esateko ez.
Beraz, adibidez, Scratch eskubidea da orain bere munduaren erdian.
Aurrera joan eta aukeratu noa orain, demagun, Motion kategorian,
zuk egin nahi izanez gero gauza bera Mugimenduan kategorian.
Eta orain konturatu oso bat daukat puzzle pieza sorta hemen
, Hori berriro ere, mota zer esaten dute.
Eta aurrera noa eta arrastatu eta joan askatu mugimendu blokea eskuineko hemen baino.
>> Eta nabarituko gisa laster, du "bandera berdea behealdean hurbil
bertan "botoia, oharra zenbat lerro zuri bat agertuko da,
ia da, nahiz eta gisa magnetikoak, hara joan nahi du.
Just utzi, eta atxikitzeko izango da elkarrekin eta forma bat egingo du.
Eta orain egin dezakezu agian ia asmatzen non honekin goaz.
>> begiratuz Scratch fasean bada hemen eta gehiagoko haren goiko begiratu,
argi gorri bat ikusiko duzu, a gelditzeko seinale, eta bandera berdea.
Eta aurrera noa joan eta nire pantailan ikusi
une bat besterik ez, ahal izango banu.
egin klik noa Ez berdea oraintxe,
eta itxuraz 10 urrats izan zuen mugitu edo 10 pixel, 10 puntuak, pantailan.
>> Eta, beraz, ez dela zirraragarria, baina utzi niri proposatu
nahiz eta hau irakasteko gabe, besterik ez egin du zure intuition-- egin let erabiliz
proposatu zidan irudikatu duzula nola egiteko Scratch ibilaldi eskubidea etapa itzali.
Izan bidea egin zion eskuineko aldean dagoen pantailan, eskubidea modu guztiak.
Let duzu une bat eman dit edo, hala behar duten wrestle.
Begirada bat hartu nahi dezakezu beste kategoria blokeak at.
Ados.
Beraz, besterik gabe, Laburpena denean behar dugu Bandera Berdea klik hemen
eta mugitu 10 urrats dago bakarrik instrukzioa, denbora dut bakoitzak
sakatu bandera berdea, zer gertatzen ari da?
Beno, nire programa exekutatzen ari.
Beraz, hori egin izan dut agian 10 aldiz eskuz,
baina hori apur bat sentitzen bit hackish, nolabait esateko,
Horren bidez, ez naiz benetan arazoa konpontzeko.
Dut berriro saiatzen naiz eta behin eta berriro, eta berriro
I arte sort ustekabean lortzeko zuzentaraua
abiatu nintzen lehenago lortzea.
>> Baina ezagutzen dugun gure Pseudocode lehenago, ez dagoela
begizta programazioan ere nozio hau, Zerbait behin eta berriro.
Eta horrela ikusi nuen duzula mordo bat zer puzzle pieza iritsi?
Errepikatu arte.
Beraz, zerbait egin izan dugu atsegin errepikatu arte.
Eta zer errepikatu zehazki arte?
>> ONDO DA.
Eta goazen bat hori da me zertxobait une bat besterik ez errazagoa.
Dezagun aurrera eta hau egin.
Ohartu, zuk ere izan daitekeelarik Kontrol azpian aurkitu,
ez errepikatu bloke honetan, ez da bertan ez du itxurarik handi hori.
Han ere ez da askoz gela bi lerro horia dutenek baino.
Baina batzuk bezala izan liteke Nabaritu, arrastatu eta jaregin bada,
nabarituko nola forma bete egiten dela.
>> Eta are Cram daiteke gehiago.
Besterik ez dugu mantendu bada hazten arrastatu eta haren gainean flotatzen.
Eta ez dakit zer da onena hemen, beraz, utzi
me gutxienez bost aldiz errepikatu, for Adibidez, eta gero atzera agertokira
eta sakatu bandera berdea.
Eta orain konturatzen ez da nahiko.
>> Orain dituzu batzuk proposatu, gisa Victoria besterik ez zuen, 10 aldiz errepikatu.
Eta, oro har, ez du lortu zion modu guztiak,
baina ez litzateke ez sendoagoak izan modu arbitrarioki kalkulatzen baino
zenbat mugimendu egiteko?
Zer hobeto bloke bat izan liteke errepikatu baino 10 aldiz izan?
>> Bai, beraz, zergatik ez zerbait egin betiko?
Eta orain, puzzle pieza hau mugitu me Han barruan eta naiz hau kentzeko.
Orain konturatu ez du axola non Scratch hasten da, doa ertzean zuen.
Eta zorionez MIT, nor Scratch egiten, besterik
ziurtatu egiten zuen hori inoiz ez erabat desagertu.
Beti hartu ahal izango duzu bere buztana.
>> Eta besterik gabe, intuizioa, zergatik ez du mugitzen mantendu zuen?
Zer gertatzen da hemen?
gelditu omen zuen, baina Jaso dut eta arrastatu ondoren bada
baino gehiago ez joateko gogoa mantentzen zuen.
Zergatik da hori?
Truly, ordenagailu bat da, hitzez hitz, zer esan nahi duzun egin egingo.
Beraz, bada, esan duzu lehenago egin du Gauza honako betiko, mugitu 10 urrats,
nik joan eta jarraitzea joan gorria stop seinale hit I arte
eta programa geldi.
>> ez baduzu Beraz, nahiz eta Horretarako, nola jakingo nuen
Scratch mugimendua egiten azkarrago pantailan zehar?
urrats gehiago, ezta?
Beraz ordez 10 egiteko aldi berean, zergatik ez dugu
aurrera eta aldatzeko zaie zer litzateke propose-- duzu 50?
Beraz, orain ez dut berdea sakatu joan Ez, eta hain zuzen ere, oso azkar doa zuen.
>> Eta hau, jakina, besterik ez da Animazio manifestazio bat.
Zer da animazioa?
Honez besterik ez duzu giza erakusteagatik Irudi osoa sorta benetan,
Benetan, oso azkar.
Eta hala bada, ari gara kontatzen urrats gehiago mugitu zion,
Besterik ari gara efektua izan beharrik aldaketaren non da pantailan zuen
azkarrago bakoitzeko denbora-unitate guztiak.
>> Orain hurrengo erronka proposatu zen off errebote zion ertzean dute.
Eta jakitea zer puzzle gabe Pieza exist-- da fina delako
ez baduzu eskuratu challenge-- etapa zer
ez intuizioz egin nahi duzula?
Nola litzateke atzera errebote zion ditugu eta dagozkio, ezkerreko eta eskuineko arteko?
>> Bai.
Beraz, nolabaiteko behar dugun baldintza, eta guk
Badirudi baldintzazkoak dute, beraz, hitz egiten, Kontrol kategorian.
Bloke horiek zein Ziurrenik nahi dugu?
Bai, agian "bada, orduan."
Beraz, nabarituko horia bloke artean Hemen dugu, ez da hau "bada"
edo "bada, bestela," bloke hori izango baimendu erabaki bat hau egin egin gurekin
edo hori egin.
are habia Eta dezakezu horiek Hainbat gauza egin.
Edo ez baduzu zuk hemen desagertu oraindik, aurrera doinuak kategoriara
-Nik ikus dezagun hemen bada.
>> Beraz, zer bloke lagungarriak izan daitezke hemen zuen etapa off bada detektatzeko?
Bai, konturatu bloke horietako batzuk parametrized daiteke, beraz, hitz egiten.
sort pertsonalizatu ahal izango dira, ez HTML ez bezala, atzo izaera horrekin,
non atributu horiek motatako Etiketa baten portaera pertsonalizatzeko.
Era berean, hemen, ahal hunkigarri hau hartu dut blokea eta aldaketa eta galdera eskatu,
sagua ukitu duzu Kurtsorea bezala erakuslea
edo dira ertza ukitu duzu?
>> Hargatik, joan eta hori egin.
, urruntzeko une batez noa.
Let puzzle pieza hau hartu me Hemen, puzzle pieza hau,
eta ez naiz nahasi joan horiek une bat besterik ez da.
hau mugitzeko noa, aldatu honen ertza ukitu,
eta motion noa Horretarako.
Beraz, hemen osagai batzuk.
baina Nik nahi dut dena dela uste dut.
>> Norbait nahi nola proposatzeko dut horiek, agian, behetik gora konektatu ahal
Ordena izatearen arazoa konpontzeko Scratch mugimendua eskuinera ezkerretik eskuinera ra
eskuinetik ezkerrera, bakoitzak ezkerrera denbora besterik horman errebote off?
Zer egin nahi dut?
Zein blokea behar konektatu nahi dut "Denean berdea Ez klik lehen"?
>> Ados, dezagun hasteko batera "betiko".
Zer doa barruan hurrengo?
Beste norbaitek.
Ados, mugitu urratsak.
Ados.
Orduan zer?
Orduan, bada.
Eta nabarituko, itxura nahiz tartekatuta elkarrekin ongi,
aski izango da hazten bete.
Bakarrik izango da, non nahi dut salto.
>> Eta zer egin artean jarri dut bada eta gero?
Seguruenik, "ukitu ertzean bada."
Eta, adi, berriz, handiegia da da, baina bete hazi egingo da.
Eta, ondoren, aktibatu 15 gradu?
Zenbat gradu?
Bai, beraz 180 spin egingo modu me guztiak inguruan.
Beraz, ikus dezagun eskubide hori lortu badut.
Txikiagotzeko me.
>> Dezagun arrastatu me Scratch eman.
Beraz, pixka bat desitxuratu zuen orain, baina hori da isuna.
Zer egingo zuen berrezarri erraz dut?
zertxobait tranparik noa.
Beraz naiz jarriz I blokea, besterik argi izan.
90 gradu seinalatzen zion nahi dut lehenetsita eskubidea,
beraz, ez dut besterik esateko joan programazioaren egin.
Eta hemen dugu.
egin duela dirudien dugu.
Apur bat arraroa da, baita Honez goitik behera ibiltzeko zuen.
Dezagun dei akats bat dela.
Hori akats bat da.
bug programa bat, bat batean akats bat da error logikoa dudala, giza, egin.
Zergatik da goitik behera joan zen?
Ba MIT torlojua sortu edo egin nuen?
>> Bai, esan nahi dut, ez da MIT hutsegite. Eman zidaten puzzle pieza bat
dioen gradu kopurua batzuk piztu.
Eta Victoria en iradokizun, 180 gradu inflexio ari naiz,
bertan, eskuineko intuizioa da.
Baina 180 gradu inflexio literalki 180 gradu inflexio esan nahi du,
eta hori ez da benetan zer nahi dut, itxuraz.
Zeren eta, gutxienez, izan zuen hau bi dimentsioko mundua,
beraz inflexio da benetan joan hura irauli goitik behera.
>> seguruenik zer blokea erabili nahi dut ordez, Oinarritutako hemen zer ikusten duzu?
Nola liteke hau konpondu dugu?
Bai, beraz, seinalatu dugu kontrako norabidean.
Eta egia esan, nahiz eta hori da ez da nahikoa izango,
ahal dugun bakarra gogor kodea delako ezkerreko edo eskuineko seinalatuz.
>> zer egin izan dugu ezagutzen duzu?
Badirudi bat daukagu ​​bezala Erosoago bloke hemen.
Handiagotzeko dut badituzu ikus Zerbait hemen nahi dugu?
Beraz, garbi ikusten da MIT bezala dauka abstrakzioa hemen eraiki.
Bloke hau badirudi baliokide da horrek beste bloke, plural?
>> bloke honetan badirudi baliokide da bloke hirukote hau osoa
duten gune honetako dugu.
Beraz, bilakatzen da errazteko dut nire Programa ohitu hori guztia kentzeko arabera
eta besterik jarri hau hemen.
Eta orain, oraindik zuen pixka bat buggy, eta hori da orain.
utziko dugu izan.
Baina nire programa da, nahiz errazagoa, eta hau ere,
ordezkari izango litzateke programazioa helburu bat
da haien egiteko zure kodea bezala simple, ahalik eta trinkoa,
oraindik ari den bitartean ahalik eta irakurri.
Ez duzu nahi hain laburra izan dadin gogorra dela ulertu.
>> Baina konturatu ordezkatu dut denak bat ere hiru blokeak,
eta hori da, dudarik gabe, gauza ona da.
Nik abstrakziogune dut kanpoan nozioa Oraindik dituzun ala ez egiaztatzea
bloke bakar batekin ertzean.
Orain fun izan dezakegu honekin, hain zuzen ere.
Horrek ez gehitzeko hainbeste balio intelektual baina ludikoak balio.
Aurrera joan noa eta soinu hau har hemen.
Beraz, aurrera, eta utzi me gelditu une batez programan.
Honako grabatzeko noa, nire mikrofonoa sartzeko aukera ematen digu.
>> Hemen gara.
Ouch.
Dezagun saiatu berriro.
Hemen gara.
Ados, okerreko gauza grabatu dut.
Hemen gara.
Ouch.
Ados.
Orain dela kentzeko behar dut.
Ados.
>> Beraz, gaur egun I a besterik grabazioa "ouch."
Beraz, gaur ez naiz joango gara Animatu eta deitu hau "ouch."
Atzera egin noa Nire gidoiak, eta orain
Konturatu bloke hori deitzen da play soinu "meow" edo soinua erreproduzitzeko "ouch."
hau arrastatu noa, eta non behar hau jarri dut komiko efektua?
Bai, beraz, gaur egun, mota da buggy, baita orain hau Bloke
nabarituko nola honetan "ertzean bada, errebote "auto-jasotako mota da.
Beraz, hau konpondu behar dut.
Dezagun aurrera eta hau egin.
Demagun hau kentzeko me eta atzera jo Gure jatorrizko izateko, nahita
funtzionalitate.
Beraz, "ertza ukitzen bada, orduan" Nahi dut , Buelta Victoria proposatu bezala,
180 gradu.
Eta ez jolastu nahi dut soinua "ouch" ez?
>> Bai, konturatu kanpo da bloke horia dela.
Beraz, ere, izango litzateke bat bug, baina ez dut nabaritu da.
Beraz, ez dut arrastaka sortu hemen, eta nabarituko da barrutik da "bada."
Beraz, "bada" moduko hau da bezalako beso-like blot of
hori bakarrik joan zer da barruan.
Beraz, orain, urruntzeko nuen bada annoying-- arriskua
>> COMPUTER: Ouch, ai ene, ai ene.
>> DAVID MALAN: Eta izango joan betirako.
Orain besterik gauzak azkartzeko Hemen, utzi aurrera me eta ireki,
goazen batzuk me utzi esatea klaseko nire stuff propioa.
Eta utzi ireki me, demagun, hau utzi bat gure irakaskuntza bekadun moduan egin
Duela urte pare bat.
Beraz, batzuk gogora ekarri ditzake Joko hau antaño,
eta benetan azpimarragarria da.
egin dugun arren programak errazena oraintxe,
dezagun zer hau benetan itxura.
Dezagun play hit me.
>> Beraz, joko honetan, bat dugu Igel, eta gezi erabiliz keys--
urrats handiagoak gogoratzen dut baino hartzen zuen Igel honen gaineko kontrola daukat.
Eta helburua, lanpetuta zehar lortu autoak sartu exekutatzen gabe errepidean.
Eta dezagun see-- igoko naiz hemen, I egunkaririk batek korrituko itxaron behar.
Hau akats bat bezala sentitzen.
Hau akats bat mota da.
Ados.
Ni honetako dut hemen, han, eta ondoren mantentzeko duzu
guztiak lortu arte joan Lily pads igelak.
Azken hau, agian begiratu konplexuagoa guztiak,
baina utzi saiatu horrek hondatu hau behera adimen
eta hitzez osatzen duten bloke sartu.
Beraz, ez da, seguruenik puzzle bat Pieza hori ez dugu oraindik ikusi
baina hori zanpatze erantzuten, Gauzak teklatuan sakatu dut.
>> Beraz, ez da ziurrenik nolabaiteko bloke dela dio, gako berdin up bada,
ondoren egin hutsetik batera zerbait agian mugitu da 10 urrats modu hau.
behera giltza sakatzen bada, mugitu 10 urrats Modu horretan, edo ezkerreko giltza, mugitu 10 urrats
Modu honetan, 10 urrats hori.
Nik argi eta garbi aktibatuta I katua igel batean.
Beraz, hori besterik non Scratch deiak deitu dugu mozorroa, gisa
besterik igel argazki bat inportatu.
>> Baina zer gehiago gertatzen ari da?
Zer beste kode lerro, zer beste puzzle pieza
egin Blake, gure irakaskuntza fellow, programa honetan erabili, itxuraz?
Zer guztia egiteko move-- zer programazio eraikitzeko?
>> Mugimenduan, sure-- beraz, k blokea, ziur.
Eta zer da mugitzen bloke ren, ziurrenik barruan?
Bai, begizta nolabaiteko, agian, betirako blokeatu, agian, errepikatu Bloke
blokea arte errepikatu.
Eta hori zer egunkariak egin eta Lily pads eta beste guztia mugitzen
atzera eta aurrera.
Besterik amaigabe gertatzen.
>> Zergatik dira autoak batzuk besteek baino azkarrago mugitzen?
Zer da programa horiek desberdin?
Bai, seguruenik, horietako batzuk hartzen dira urrats gehiago aldi berean, eta horietako batzuk
aldi berean urrats gutxiago.
Eta efektu bisuala azkar motela versus da.
>> Zer gertatu dela uste duzu?
Nire igel lortu nuen modu guztiak Kalean eta ibaian zehar
Lily zona, zerbait kalera Azpimarratzekoa gertatu.
Zer gertatu bezain laster, hori egin nuen bezala?
It gelditu.
Igel Hori gelditu, eta bigarren igel bat jaso nuen.
Beraz, zer eraikuntza izan behar erabili ez, zer Ezaugarri?
>> Bai, beraz, ez nolabaiteko baldintzatzea "bada" han, too.
Eta out-- ez dugu ikusten dute hau bihurtzen da baina ez da beste ez dagoela bloke
esan daiteke, zauden hunkigarri bada pantailan beste gauza bat,
you the Lily zona, ukitu ezkero "ondoren."
Eta gero, hori denean dugu egiteko bigarren igel agertzen.
Beraz, Joko hau da, zalantzarik gabe, nahiz eta Oso datatua, nahiz eta hasiera batean
ez da hainbeste gertatzen on-- eta Blake ez zuen hau Greba bi minutu,
Ziurrenik eramatean zuen hainbat ordu-joko hau sortzeko
oinarritutako bere memoria edo bideoetan antaño en bertsio baten.
Baina gauza txiki horiek guztiak isolatuan pantailan joan
irakiten behera horiek oso erraz constructs-- mugimenduak edo adierazpenak
atsegin eztabaidatu dugu, begizta eta baldintzak, eta hori buruz.
Ez da bat beste ezaugarri batzuk fancier.
Horietako batzuk dira guztiz estetiko edo akustikoak,
soinuak atsegin dut besterik jokatzen.
Baina zati handiena, zuk hizkuntza hau, Scratch dute,
oinarrizko guztia eraikin bloke duzula
C, Java, JavaScript behar, PHP, Ruby, Python,
eta beste edozein hizkuntzatan.
Scratch buruzko edozein galdera?
Ados.
Beraz, ezin izango dugu sakonago murgiltze Scratch den, Oraindik ongi etorri arren, asteburu honetan,
haurrekin batez ere baduzu edo ilobak eta, besteak beste,
horiek aurkeztu Scratch den.
Benetan da wonderfully ludiko bat ingurunearekin, bere egileek esan bezala,
Oso altua sabaiak.
hasi baginen ere ekin Oso behe-mailako xehetasun
benetan egin ahal izango duzu, pixka bat nahiko harekin batera, eta hori da, beharbada
zehazki hori manifestazio bat.
>> Baina utzi batzuk gehiago trantsizioa arazo sofistikatua, izango bada,
"Bilatzen" bezala ezagutzen da, eta "Ordenatzeko," oro har.
izan dugu telefono-liburu hau lehenago hemen da besterik da discussion-- beste bat
hori bilatu nahi izan dugu gehiago eraginkortasunez delako
hipotesi garrantzitsu bat.
Eta, argi izan behar, zer hipotesi nengoen egiteko
telefono-liburu honen bidez bilatzen?
Hori Mike Smith izan zen telefono liburua, nahiz eta I
kudeatzeko gai izango litzateke hura gabe eszenatokia
ez dut gelditu besterik ez bada, behar baino lehenago.
Liburua alfabetikoan da.
Eta hori oso eskuzabala hipotesi, hori delako
esan someone-- mota naiz Korner baten ebaketa,
atsegin dut azkarrago norbait delako naiz beste egin lan asko bat niretzat.
>> Baina zer gertatzen da telefonoa book Unsorted ziren?
Agian Verizon lortu alferrak, besterik bota Guztion izenak eta zenbakiak hor
agian, ordena honetan bertan dute sinatu telefono zerbitzua.
Eta zenbat denbora du me hartu du Mike Smith bezalako norbait aurkitu?
1.000 orrialde telefono liburu zenbat orrialdeek egin bidez begiratu behar dut?
>> Denak.
sort zara zorte.
literalki daukazu at bakoitzean begiratu Orri liburu telefonoa besterik ez bada
ausaz ordenatuko.
zortea izan dezakezu eta Mike aurkitu Oso lehen orrian, zeren zuen
Lehenengo bezero zen Telefono zerbitzua eskatzeko.
Baina izan zuela baliteke azkena, too.
>> Beraz ausazko ordena ez da ona.
Beraz, demagun ordenatzeko behar dugu telefono book edo horrelako datuak orokorrean
Hori Zuk ematen dugu.
Nola egin ahal dugu?
>> Beno, utzi saiatu besterik ez dit Adibide sinple bat hemen.
Dezagun aurrera eta zozketa bat taula gainean zenbakiak batzuk.
Demagun zenbakiak dira behar dugu, demagun, lau, bi, bat, eta hiru.
Eta, Ben, ordenatzeko zenbakiak hauek guretzat.
>> Ados, ona.
Nolatan hori?
Ados.
Beraz, txikiena hasteko balio eta altuena,
eta hori da benetan intuizio ona.
Eta konturatzen gara gizakiak benetan polita dira
arazoak konpontzeko onak Hau atsegin, gutxienez
datuak nahiko txikia da.
Bezain laster, ehunka izan dugun heinean zenbakien, zenbakiak, milaka,
zenbakiak milioika, Ben ziurrenik ezin izan du egin nahiko azkar hori,
ez zirela suposatuz zenbakiak hutsuneak.
Nahiko erraza milioi bat zenbatu bestela, besterik gabe, denbora kontsumitzen.
>> Beraz, algoritmoa soinuak Ben erabili besterik orain bezala
bilaketa kopuru txikiena izan da.
Beraz, nahiz eta gizakiak hartu ahal informazio asko ere ikusmen,
ordenagailu bat da, benetan apur bat gehiago mugatua.
Ordenagailua ezin bakarrik byte begiratu aldi berean
edo, agian, lau aldia batean bytes egun hauetan agian 8 byte aldia batean
baina oso kopuru txikia Une jakin batean byte.
>> Beraz, emandako benetan behar dugun lau balioak bereizi hemen
eta Ben dezakezu uste izatea bezala ordenagailu bat, hala balitz blinders
ez zuela ezer ikusten aldia batean zenbaki bat baino
beraz, oro har dugu bere gain hartuko du, bezala English, ezkerretik eskuinera irakurri dugu.
Beraz, lehenengo zenbakia Ben seguruenik begiratu lau izan zen eta, ondoren, oso azkar
konturatu da nahiko handia zenbaki utzi bila mantentzeko me.
>> Ez da bi.
Itxaron minutu batez.
Bi eta lau baino txikiagoa da.
gogoratzen dut.
Bi da orain txikiena.
Orain one-- are hobeto.
Hori da, are txikiagoa.
Bi ahaztu noa eta jakin ezazue orain.
>> Eta ezin begira gelditu zen?
Beno, oinarritutako zezakeen Informazio horren arabera,
baina bilaketa Hobe zuen Zerrendako gainerako.
zer zero bada zerrendan zirelako?
Zer negatiboa bada zerrendan ziren?
He bakarrik daki bere erantzuna zuzena da zuen zorrotz bada
Zerrenda osoa hautatuta.
Beraz, begiratu hau gainerako at dugu.
Hori Three-- denbora galtze bat izan zen.
Got unlucky, baina izan dut oraindik zuzena hacerlo.
Eta, beraz, gaur egun, zuen ustez Hautatutako kopuru txikiena
eta besterik jarri hasieran Zerrendaren, ez dut egingo hemen bezala.
Orain zer egin zenuen ondoren, nahiz eta ez dut pentsatu ia
neurri hau?
Errepikatu prozesua, beraz begizta nolabaiteko.
Ideia ezagun bat da.
Hortaz, hona hemen lau da.
Hori da, gaur egun txikiena.
Hori hautagai bat da.
Orain ez.
Orain bi ikusi ditut.
Hori dela elementurik hurrengo txikiena da.
Three-- hori ez da txikiagoa, beraz, orain Ben pluck daiteke bi.
>> Eta orain, prozesua errepikatu dugu, eta jakina hiru erabat atera ondoan.
Errepikatu prozesua.
Lau lortzen atera.
Eta, orain, zenbakiak atera dugu, beraz, zerrenda ordenatuko behar da.
>> Eta hain zuzen ere, hau algoritmoa formal bat da.
ordenagailu zientzialari litzateke deitu "aukeraketa ordenatu," hau
ideia moduko bat izatea Zerrendara iteratively-- berriro
eta behin eta berriro hautatu kopuru txikiena.
Eta zer polita da buruz Beraz, besterik darn intuitiboa da.
Hain erraza da.
Eta bera errepika dezakezu eragiketa behin eta berriro.
Erraza da.
>> Kasu honetan azkarra izan zen, baina zenbat denbora hartu du benetan?
Dezagun dirudi eta sentitzen pixka bat gehiago lapurtera.
Bat, bi, hiru, lau, bost, sei, zazpi, zortzi, bederatzi, 10, 11, 12, 13, 14,
15, saioa 16 zenbakia arbitrarioa.
Nahi dut gehiago hau denbora besterik lau baino.
Beraz, I got bada osotasunean zenbakiak sorta da gaur egun egiten
ez du axola, nahiz zer dezagun are-- dute
zer hau pentsatzen algoritmoa benetan atsegin.
>> Demagun daude zenbakiak ez.
Berriz ere, ez du axola zer dira, baina ausazko ari dira.
Ben-en algoritmoa aplikatuz naiz.
kopuru txikiena hautatu behar dut.
Zer egin dezaket?
Eta noa fisikoki ez da une honetan jarduteko out.
Begira, begira, begira, begira, begira.
Soilik ordua iritsi nintzen arabera Zerrenda amaieran can
txikiena konturatzen naiz zenbakia bi une honetan izan zen.
Ez da One zerrendan.
Beraz, behera jarri dut bi.
>> Zer egin behar dut hurrengo?
, Begira, begira begira, begira.
Orain kopurua zazpi aurkitu nuen, zeren ez dago zenbakien horiek hutsuneak
baina besterik ez da arbitrarioa.
Ados.
Beraz, behera jarri ahal izango dut zazpi.
Looking begira, begira.
>> Orain naiz suposatuz, la Jakina, Ben ez duela
aparteko RAM dute, aparteko memoria, baita, noski,
kopuru bera bilatzen dut.
Ziur naiz I gogoratu izan da zenbaki horiek guztiak,
eta hori da erabat egia.
Baina Ben gogoratzen bada guztiak zenbakien baina ikusten zuen,
berak ez du benetan egin funtsezko aurrerapena
zuen dagoeneko duelako bilatzeko gaitasuna
taula gainean zenbakiak bidez.
guztia gogoratzea Zenbakiak ez du laguntzen,
Oraindik ere ezin zuen ordenagailu bat bezala delako bakarrik, esan dugu, zenbaki bat begirada
aldi berean.
Beraz, ez dago tranparik moduko ez dagoela leverage dezakezu.
>> Beraz, errealitatean, gisa I mantentzeko zerrendan bilatzen,
literalki ez dut besterik mantentzeko joan atzera eta aurrera horren bidez, plucking
Zenbaki hurrengo txikiena.
Eta gisa nolako dezakezu infer nire mugimenduak silly batetik,
hau besterik lortzen oso lapurtera oso azkar,
eta be going back dudalako eta aurrera, atzera eta aurrera, nahiko pixka bat.
Orain azoka izango da, ez daukat joan nahiko, ondo, dezagun see-- azoka izango da,
Nik ez dut nahiko oinez asko urrats bakoitzean.
Zeren, noski, nik bezala hautatu zenbakiak zerrendan,
gainerako zerrendan heldu laburragoa.
>> Eta beraz dezagun uste buruz zenbat urrats benetan naiz
aldi bakoitzean bidez traipsing.
Oso lehen egoera horretan 16 zenbakiak izan genuen,
eta beraz maximally-- dezagun besterik Horretarako discussion-- bat
16 bidez begiratu behar izan nuen txikiena aurkitu zenbakiak den.
Baina behin out pultsatuzko I kopuru txikiena, nola
luze geratzen den zerrenda, jakina zen?
Just 15.
Beraz, zenbat zenbakiak egin Ben edo tengo den bigarren aldiz inguruan begiratu bidez?
15, besterik gabe, joan eta txikiena aurkitu.
Baina orain, noski, zerrenda, gehiegi, aurretik baino txikiagoa.
Beraz, urrats zenbat egin nuen hurrengo denbora hartu behar?
14 eta, ondoren, 13 eta, ondoren, 12, plus dot, dot, dot, bat besterik ez naiz utzi arte.
Beraz, gaur egun ordenagailu zientzialari litzateke eskatu, bai, zer egiten berdinak hori?
benetan hormigoizko batzuk berdin da kopuru hori, zalantzarik gabe, ezin izan dugu
egiten arithmetically, baina hitz egin nahi dugu Algoritmoen eraginkortasun buruz
Apur bat gehiago formulaically, zenbat denbora zerrenda da independentea.
>> Eta orain, zer dakizu?
Hau da, 16, baina aurretik esan dut, dezagun deitu arazoaren tamaina
n, non n zenbaki batzuk.
Agian, 16, agian, hura izan hiru, agian, milioi bat da.
Ez dakit.
Ez zait axola.
Benetan nahi dut formula bat erabiltzen dut, ahal
erabili algoritmo hau konparatzeko beste algoritmoak aurka
norbaitek erreklamatu daitezke hobeto edo okerrago.
>> Eta gertatu da, eta I bakarrik Badakizu honetan kalifikazio-eskola batetik,
hau benetan lan egindako aldi berean baino Gauza gisa baino N n plus bat bi baino gehiago.
Eta hau gertatzen den, berdintzen Jakina, karratu n plus n bi baino gehiago.
Beraz, bada, formula bat nahi nuen urrats nola askotan
ziren batere ari da parte hartzen zenbaki horiek behin eta berriro
eta behin eta berriro, esango nuke karratu n plus n bi baino gehiago.
Baina badakizu zer?
Hau besterik itxura narratsa.
I besterik benetan bat nahi gauzen zentzu orokorrean.
Eta agian, gogorarazten batxilergoko han
Ordena epe altuena nozioa da.
Termino horiek zein, n karratu n, edo erdia,
denboran zehar inpaktu gehien?
handiagoa n lortzen, eta horrek gai hauetan gehien?
>> Beste era batera esanda, I plug bada milioi bat ere, n karratu
ziurrenik izango da A. faktorea,
milioi bat delako aldiz bera asko handiagoa da
osagarriak milioi baino plus bat.
Beraz, badakizu zer?
Hau da, besteak beste, darn a big zenbakia zenbaki bat plazan baduzu.
Hau ez da benetan axola.
Ari gara cross joan dela out eta ahaztu.
Eta beraz, ordenagailu zientzialari batek esaten duten algoritmo honen eraginkortasuna
n ordena da squared-- benetan hurbilketa bat esan nahi dut.
Da Sort gutxi gorabehera n karratu.
Denborarekin, handiagoa eta handiagoa n lortzen, hau
zer egin zenbatespen ona da eraginkortasuna edo eraginkortasun eza
Algoritmo honen benetan da.
Eta eratortzen dut, noski, benetan math egiten from.
Baina orain, besterik ez naiz astintzen Nire eskuak, I delako besterik
Nahi algoritmo hau zentzu orokor bat.
>> Beraz, logika bera erabiliz, bere aldetik, kontuan hartu dezagun algoritmoa beste
Dagoeneko bilaketa lineala at-- begiratu.
Noiz nintzen bilatzen Telefono liburu egiteko
Ez da ordenatzeko, bilatzen Telefono liburu bidez
zela esaten gordetzen dugu 1.000 urratsak, edo 500 urrats.
Baina utzi orokortu.
ez da n orrietan bada telefono-liburuan, zer da
Iraupena edo Bilaketa lineala eraginkortasuna?
da ordena on It zenbat urrats aurkitu
Mike Smith bilaketa lineala erabiliz, lehen bildu, edo are bigarrena?
>> Kasu txarrenean, Mike In Liburuaren amaieran da.
Beraz, telefono-liburuaren 1.000 orrialde ditu, bada, Azken aldiz esan dugu, txarrena kasuan,
iraun dezake gutxi gorabehera zenbat Orri askotan Mike aurkitzeko?
1.000 Like.
It muga da.
bat posible egoera txarrena da.
Baina, berriro ere, zu kanpoan mugitzen dugu 1.000 orain bezalako zenbakiak.
besterik n da.
>> Beraz, zer da ondorio logikoa?
Mike aurkitzea telefono batean liburu hori n orrialde ditu
hartu dezake, eta kasu oso txarrenean, zenbat n ordena urratsak?
Eta hain zuzen ere, ordenagailu bat Zientzialari esango luke
Iraupena, edo hori performance edo eraginkortasuna
edo eraginkortasunik eza, bezalako algoritmo bat bilaketa lineala n ordena da.
Eta bera aplikatu ahal izango dugu Zerbait out zeharkatu logika
bigarrena egin nuen bezalaxe algoritmoa izan telefonoaren liburua dugu,
non bi orrialde aldi berean joan ginen.
>> Beraz, 1.000 orrialde telefono book might eramango gaituzte 500 orri txandaka, plus bat
Atzera bikoiztu egin dugu pixka bat bada.
Beraz, telefono-liburu bat n orrialdeek badu, baina Bi orrialde aldi berean egiten ari gara,
gutxi gorabehera zer?
N bi baino gehiago, beraz, horrelako bi baino gehiago n da.
Baina erreklamazio bat egin nuen Une ago two-- gorako n
Hori bera moduko gisa besterik n.
Etengabeko faktore bat besterik ez da, ordenagailu zientzialari esango luke.
Demagun bakarrik dutelakoan en aldagaiak, really--
aldagaiak handiena ekuazioa.
>> Beraz, bilaketa lineala, egin ala bat aldi berean, garai hartan bi orrialde orria edo,
moduko funtsean bera.
Oraindik n ordena.
Baina aldarrikatu nire argazki batekin dut lehenago duten hirugarren algoritmoa ez zen
lineala.
ez zen lerro zuzen bat da.
lerro makurrak hori izan zen, eta algebraiko formula ez zen zer?
n-- of Saioa hain saioa oinarria bi n.
Eta ez dugu gehiegi sartu logaritmoak buruzko xehetasun askoz gaur,
baina ordenagailua zientzialari gehienek ez litzateke esango oinarrian zer da.
da delako guztiak besterik faktore konstante, nolabait esateko,
besterik arina zenbakizko ezberdintasunak.
Eta, beraz, hau oso ohikoa izango litzateke ordenagailua bereziki formal modu
taula batean zientzialari edo zuri-taula batean programatzaile
benetan argudiatuz horrek algoritmoa erabili zuten
edo zer eraginkortasuna beren algoritmoa da.
>> Eta hori ez da beti zerbait edozein zehaztasun handiz eztabaidatzeko,
baina programatzaile ona norbait da ona eta hondo formal bat dauka.
to hitz egin ahal izan zuen, Bide-mota honetan duzu
eta benetan egiteko arrazoibide kualitatibo gisa
zergatik algoritmo bat edo software pieza bat
beste modu batzuk baino hobea.
zalantzarik Could you delako besterik pertsona bat programa exekutatu
eta zenbatu segundu kopurua zenbaki batzuk ordenatzeko hartzen,
eta batzuk exekutatu dezakezu beste pertsonaren programa
eta zenbatu kopurua segundo hartzen du.
Baina hori modu orokorrago bat da algoritmoak aztertzeko erabili ahal izango duzu,
izango bada, besterik on paper edo besterik hitzez.
Gabe nahiz korrika, gabe nahiz eta lagin Sarrerek nahian,
Besterik ezin duzu arrazoia bidez.
Eta beraz, sustatzailearen edo bada kontratatzeko hura izatea edo bere sort nahi argudiatzeko
zergatik beren algoritmoa, bere sekretua milioiak bilatzen saltsa
for web orrien zure konpainia hobea da, horiek
argumentuak mota dira haien egiteko gai izan behar du.
Edo, gutxienez, hauek dira gauza mota
noiz etorriko litzateke eztabaida, at Gutxienez eztabaida oso formal batean.
Ados.
Beraz, Ben zerbait proposatu izeneko aukeraketa ordenatu.
Baina ez naiz, ez da hori proposatzera joan beste hau egiten, gehiegi moduak.
Zer ez nuen benetan gustatzen zait Ben-en algoritmoa buruz
da ibiltzera zuela, edo ni oinez, atzera eta aurrera
eta atzera eta aurrera eta atzera eta aurrera.
Zer ordez bada egin ziren I zenbaki horiek hemen antzeko zerbait
eta besterik bakoitzaren aurre izan ziren I zenbakia, aldi berean, naiz eman zuen bezala?
>> Beste era batera esanda, hona hemen Nire zenbakien zerrendan.
Lau, bat, hiru, bi.
Eta ez dut honako hau egin behar.
zenbakiak txertatzeko noa non baizik sartzen dira
horiek hautatzen aldi berean bat baino.
Beste era batera esanda, hemen kopurua lau da.
>> Hemen nire jatorrizko zerrenda da.
Eta ez dut nahi mantentzea joan funtsean zerrenda berria hemen.
Beraz, hau zaharra zerrenda da.
Hau zerrenda berria da.
kopurua lau lehen ikusi nuen.
Nire zerrenda berria da hasieran hutsik, beraz kenduz, kasu
duten lau da orain askotariko zerrenda.
Besterik ez naiz zenbakia nabil eman hartuta, eta egiten naiz jarriz nire zerrenda berrian.
>> Zerrenda berria hau ordenatuko da?
Bai.
It ergela da, ez da besterik ez delako bat elementu, baina erabat ordenatuta.
Ez dago ezer lekuz kanpo.
It interesgarriagoa, algoritmo hau, denean mugitu hurrengo urratsera dut.
>> Orain bat daukat.
Bat, beraz, jakina, pertenece hasita, edo zerrenda berri honen amaieran?
Hasieran.
Beraz, lan batzuk egin behar dut orain.
batzuk ari naiz ditudan Nire markagailuko askatasun
besterik gabe, gauza marraztuz non nahi dut,
baina hori ez da benetan ordenagailu bat ere zehatza.
Ordenagailu bat, ezagutzen dugun bezala, dauka RAM, edo Random Access Memory,
eta hori byte bat eta beste byte eta beste byte.
Eta gigako badaukazu RAM, bat milioi byte,
baina fisikoki ari dira nonbaiten.
Ezin duzu besterik mugitu duzu stuff inguruan marrazketa taula gainean arabera
nahi duzun lekuan.
Beraz, nire zerrenda berri badu memoria lau kokapenak,
zoritxarrez lau da Dagoeneko okerreko lekuan.
>> Beraz kopurua txertatzeko bat Ezin dut besterik marraztu ezazu hemen.
memoria kokapena Hau ez da existitzen.
Hori iruzurra izango litzateke, eta izan naiz Pictorially iruzurra minutu batzuetan
hemen.
Beraz, benetan, inork hemen jarri nahi badut, aldi baterako kopia lau daukat
eta, ondoren, bat jarri bertan.
>> Oso polita, hori da zuzena, Hori teknikoki posible,
baina konturatzen aparteko lana da.
Ez nuen besterik jarri kopuruaren leku.
lehen bat mugitu behar izan nuen zenbakia, ondoren, bere tokian jarri,
beraz, mota horretako bikoiztu egin dut nire lana zenbatekoa.
Beraz, kontuan izan hori.
>> Baina ez naiz orain, elementu hau egiten.
Orain hiru kopurua hartu nahi dut.
Non, noski, ez da sartzen?
Artean.
Ezin dut tranparik jada eta besterik jarri ez,
, Berriz, memoria hau delako kokapenak fisikoan da.
Beraz, lau kopiatu behar dut eta hirurak jarri hemen baino.
Ez da gauza zaila.
aparteko urrats bat besterik ez da Oso merke sentitzen, berriro.
>> Baina hemendik mugituko dut bi arte.
bi, jakina, dagokion hemen.
Orain nola ikusten hasten zara lana pilatzen dezake.
Orain zer egin behar dut?
Bai, lau mugitu behar dut, Gero dut hiru kopiatzeko,
eta orain bi sartu ahal izango dut.
Eta honekin harrapatzen algoritmoa, interesgarriagoa da nahikoa,
dela suposatzen muturreko bat dugu Kasu non demagun, zortzi, zazpi utzi da,
sei, bost, lau, hiru, bi, bat.
Hau da, testuinguru askotan, kasu okerrena,
darn gauza delako da literalki atzeraka.
>> Ez du benetan eraginik Ben-en algoritmoa,
baita Ben en aukeraketa ere sort zuen mantendu egingo
atzera eta aurrera zerrendan zehar joan.
Eta ni beti ari zen delako Gainerako osoa zerrenda bidez,
Ez du axola non elementuak dira.
Baina nire txertapenak kasu honetan planteamendu utzi hau.
>> Bat, bi, hiru, lau, bost, sei, zazpi, zortzi.
Bat bi hiru lau, bost, sei, zazpi, zortzi.
Zortzi hartu noa, eta nora jarri dut?
Beno, nire zerrenda hasieran, Zerrenda berria hau ordenatuta dagoelako.
Eta zeharkatuko dut it out.
>> Nora zazpi jarri dut?
Darn.
han joan behar da, beraz, kopiatzea batzuk egin behar dut.
Eta orain zazpi doa hemen.
Orain mugitzeko I sei izateko.
Orain lana are gehiago da.
>> Zortzi dauka hemen joan.
Zazpi hemen joan behar du.
Orain sei hemen joan daiteke.
Orain bost hartu dut.
Orain zortzi ditu joan Hemen, zazpi dauka hemen joan,
Sei hemen joan behar du, eta orain bost eta errepikatu.
Eta nahiko askoz naiz da etengabe mugitzen.
>> Beraz, amaieran, algoritmoa honen zaitugu deitu txertatzeko sort benetan
lan asko, gehiegi.
Besterik ez da desberdinetako lan Ben baino mota.
Ben-en lana izan me joan atzera eta aurrera denbora guztian,
hurrengo txikiena hautatuz elementu behin eta berriro.
Beraz, lan mota oso bisuala hau izan zen.
>> beste algoritmo honek, hau da, oraindik correct-- lana lortuko du done--
besterik lanaren zenbatekoa aldatzen.
atsegin Oraindik, hasieran dirudi , Aurrezteko besterik Oraindik delako
elementu bakoitzari aurre aurrean ireki guztiak oinez gabe
Ben bezalako zerrendan zehar bidea zen.
Baina arazoa da, batez ere, horietan zoro bat kasuetan guztiak atzeraka da,
besterik Oraindik motatako Lan gogorra atzeratzea
Zure akatsak konpondu arte.
>> Eta hala bada hau imajinatu dezakezu zortzi eta zazpi eta sei eta bost
eta geroago, lau eta hiru eta bi zerrendan zehar beren bidea mugituz,
besterik ez dugu aldatu du lan mota egiten ari gara.
Horren ordez egiten hartan Nire iterazio hasieran,
Besterik ez naiz egiten at iterazio bakoitzaren amaieran.
Eta gertatu da algoritmo hau da, gehiegi, oro har, deitu txertatzeko, ordenatu,
da, halaber, ordena n karratu orrian.
Egia esan, ez da hobea, no hobeto batere.
>> Hala eta guztiz ere, ez dago hirugarren hurbilketa bat da animatuko nuke gurekin kontuan hartu,
hau da hau.
Beraz, demagun nire zerrenda, sinpletasunagatik berriro, lau, bat, hiru,
two-- zenbakiak besterik lau.
Ben intuizio ona izan, ona giza intuizioa
aurretik, horren bidez osoak konpondu dugu Zerrendara txertatzeko ordenatu eventually--.
Gurekin coaxed nituen.
Baina azter ditzagun du Zerrenda hau konpontzeko modurik errazena.
>> Zerrenda hau ez da horrela antolatu.
Zergatik?
Ingelesez, azaldu zergatik ez da benetan ordenatuta.
Zer ez du esan nahi ordenatuko?
>> Ikaslea: Ez da sekuentziala.
>> DAVID MALAN: ez sekuentziala.
Emadazu adibide bat.
>> STUDENT: Jarri ordenan.
>> DAVID MALAN: OK.
Emadazu Adibide zehatz bat.
>> Ikaslea: goranzkoa.
DAVID MALAN: Ez, ordena gorakorrean.
Kontuz zehatzagoak.
Ez dakit zer esan nahi gorantz sailkatu duzu.
Zer dago oker?
>> Ikaslea: artean txikiena zenbakiak ez da lehen espazioan.
>> DAVID MALAN: Txikiena zenbakia en Ez da lehenengo espazioan.
Be zehatzagoa.
harrapatzeko dut hasita.
kontatuta ari gara, baina Zer da ordena hemendik?
>> Ikaslea: Zenbakizko segida.
DAVID MALAN: Zenbakizko segida.
Guztion eramateko moduko Oso maila altua hemen da.
Just literalki esan dit zer da might bost urteko bat bezala oker.
>> Ikaslea: Plus bat.
>> DAVID MALAN: Zer da hori?
>> Ikaslea: Plus bat.
>> DAVID MALAN: Zer inork plus esan nahi duzu?
Give me a desberdinetako bost urteko.
Zer gertatzen da, ama?
Zer gertatzen da, aita?
Zer esan nahi duzu, hau ez da horrela antolatu?
>> STUDENT: ez da leku egokian.
>> DAVID MALAN: Zer da ez leku egokian?
>> Ikaslea: Four.
DAVID MALAN: OK, ona.
Beraz, lau ez da non egon behar du.
Hain zuzen ere, eskubide hau da?
Lau eta bat, lehena bi zenbakiak ikusi nuen.
hau da hala?
Ez, Oraindik dute ordena, ezta?
Izan ere, uste orain Ordenagailu bat inguru, gehiegi.
bakarrik egin ahal izango da, agian, begiratu, agian bi gauzak once-- at
eta benetan gauza bakarra aldi berean, baina ezin da gutxienez
Gauza bat begiratu ondoren, Hurrengo gauza haren ondoan.
>> Beraz, ez dira horiek ordenan?
Noski ezetz.
Beraz, badakizu zer?
Zergatik ez haurra hartu dugu urrats arazoa konpontzen
ordez fancy horiek egiteko Ben, non bezalako algoritmoak
zuen sort konpontzen arabera Zerrendako begizta bidez
ordez zer egiten nuen, non I mota besterik finkoa da joan gara?
Dezagun, besterik gabe, literalki apurtu behera antolatuta numerikoak ordena nozioa,
deitzen dena delakoa want-- duzu Pairwise alderaketon sartu.
>> Lau eta bat.
Hau al da ordena zuzena?
Hargatik konpondu dela.
One eta lau, eta, ondoren, besterik ez dugu kopia hori.
Ondo da, ona.
bat eta lau konpondu dut.
Hiru eta bi?
No.
Demagun nire hitzak nire behatzak etortzeko.
Lau eta hiru?
>> Ez da ordena, beraz, ez dut joan bat, hiru, lau, bi gauza egin.
Ados, ona.
Orain lau eta bi?
Hori konpontzeko, gehiegi behar dugu.
Beraz, bat, hiru, bi, lau.
Beraz, hau da ordenatuko da?
Ez, baina hurbilago ordenatuko?
>> da, hau finkoa dugulako akats, akats hau konpondu dugu,
eta akats hau konpondu dugu.
Beraz, hiru akatsak konpondu dugu, dudarik gabe.
Oraindik ez du benetan begiratu ordenatuko, baina Objektiboki ordenatuko hurbilago dago
akats horietako batzuk finkoak ditugulako.
>> Orain zer egin behar dut hurrengo?
motatako zerrendaren amaierara iritsi naiz.
konpondu egin zirudien dut akatsak guztia, baina ez.
Kasu honetan, zenbaki batzuk delako bubbled izan liteke sortu gertuago
zenbakiak bestearen dagoela dira oraindik behar bezala erabili.
Beraz, egin dezagun berriro, eta ez dut besterik ez da leku garai honetan.
One eta hiru?
Ondo dago.
Hiru eta bi?
Noski ez, beraz dezagun aldatu.
Beraz, bi, hiru.
Hiru eta lau?
Eta orain, izan besterik ez bereziki pedantic hemen.
Da ordenatuko?
You gizakiak ezagutzen ordenatuko da.
>> Berriro saiatu behar dut.
Beraz Olivia berriro saiatu naiz proposatuz.
Zergatik?
Zeren eta ordenagailu bat ez dute gure giza begiak luxua
besterik back-- OK glancing, egin dut.
Nola ez, ordenagailua zehazteko zerrendan, gaur egun antolatuta?
Mekanikoki.
>> bidez joan behar dut beste behin ere, eta bada bakarrik dut
ez egin / akatsik aurkitu ahal izango dut gero ordenagailuan bezala bukatzeko, bai,
Bukatu dugu.
Beraz, bat eta bi, bi eta Hiru, hiru eta lau.
Orain dut betiko esan daiteke hau da ordenatuta, aldaketarik ez dudalako.
Orain akatsen bat izango litzateke, eta, besterik gabe, inozoak badut, ordenagailua,
galdera horiek berriro galdetuko erantzun desberdinak espero.
Ez luke gertatuko.
>> Eta beraz, orain zerrenda ordenatuko da.
Zoritxarrez, garai exekutatzen Algoritmo hau ere karratu n dago.
Zergatik?
duzulako n zenbakiak, eta batean Kasu txarrena n zenbakiak mugitu behar duzu
n aldiz duelako Jarraitzeko behar duzu Atzera begiratu eta potentzialki konpondu
zenbaki horiek.
Eta gehiago egin ahal izango dugu azterketa formal, too.
>> Beraz, hau da hartu dugun esateko hiru planteamendu desberdin, bata
Horietako berehala intuitiboa Ben batetik bat itzali
Nire iradoki txertatzeko den Honen moduko
non mota duzu galduko ikusmena zuhaitzak, hasieran basoan.
Baina orduan urrats bat itzuliz gero, voila, konpondu dugu ordenatzeko nozioa.
Beraz, hau da, esango nuke, maila txikiagoa agian
horiek beste batzuk baino algoritmoak, baina dezagun
ikusiko dugu, ez bada bistaratu horien honen bidez.
>> Beraz, hau da, polita batzuk software hori norbaitek
taberna koloretsu hori erabiliz idatzi zuen honako hau egin digu doa.
Taberna horietako bakoitzak zenbaki bat adierazten du.
barran Taller, handiagoa kopurua, txikiagoa tabernan,
zenbaki txikiagoa.
Beraz, haien polita piramide bat nahi dugu non txiki batean hasten da eta lortzen big,
eta hori dela esan nahi du taberna horiek ordenatzen dira.
Beraz, aurrera noa eta aukeratu joan, adibidez, Ben-en algoritmoa
lehen aukera aukeraketa ordenatu.
>> Eta nabarituko zer egiten ari den.
Modu haiekin aukeratu ikusteko algoritmoa honetan
da, hori izan dut atsegin nire zerrenda paseoan,
Programa honetan oinez bere zenbakien zerrenda bidez,
arrosa bakoitzean azpimarratuz zenbaki hartan gehiago begiratzen.
Eta zer da buruz oraintxe gertatuko den?
>> txikiena kopurua dela I edo Ben-batean aurkitu
lortzen zerrendaren hasieran joan zen bizitzera.
Eta konturatu kanporatu egin zuten kopurua duela han,
eta primeran fina da.
Ez nuen xehetasun maila hori hartzea.
Baina, jarri behar dugu kopuru hori nonbait,
beraz, joan besterik ez dugu nahi Leku irekia sortu zen.
Beraz, ez dut hau azkartzeko joan sortu, bestela delako
Oso lapurtera bihurtzen azkar.
Animation speed-- ez gara.
Printzipioz Beraz, gaur egun bera I aplikatuz zen, baina zuk
Algoritmoaren sentitzeko, baduzu has daiteke Izango da, edo apur bat argiago ikusten da.
Algoritmo honek eragina dauka hurrengo elementu txikiena hautatuz,
beraz ari den martxan jarriko duzu ikusi arrapala da ezker.
Eta iterazio bakoitzean, gisa I proposatu, apur bat gutxiago lan egiten du.
Ez du modu guztiak joan Ezkerretik zerrendaren amaieran itzuli,
baita dagoeneko daki horiek ordenatzen dira.
Beraz, mota sentitzen da bezala Azkartu urrats bakoitza da, nahiz
Denbora kopuru bera hartzen.
Ez dago besterik gutxiago urrats gainerako.
Eta orain, mota dezakezu sentitzen duzu Algoritmo garbitzen da amaieran,
eta hain zuzen ere, gaur egun ordenatuko da.
>> Beraz txertatzeko ordena guztiak egin.
berriro ausaz array behar dut.
Eta konturatu besterik ezin dut mantendu da, zoriz,
eta hurbilketa bat lortu dugu aldi berean, txertatzeko ordenatu.
Let it motela me down hemen.
Has gaitezen berriro hori.
Gelditu.
>> Dezagun saltatzeko lau.
Bertan dugu.
Ausaz dute array.
Eta hemen txertatzeko ordenatu go-- dugu.
Play.
Nabarituko dela bakoitzak aurre elementu berehala aurkitzen da,
izatea delarik ere bada okerreko lekuan oharra
hori gertatuko ditu lan guztia.
gehiago aldatzearen mantendu behar dugu eta elementu gehiago gela egiteko
Bat egin den lekuan jarri nahi dugu.
>> Beraz, horretan ari gara bideratua Ezkerretik zerrendan soilik amaieran.
Ohartu ez dugu, nahiz eta begiratu at-- Ez dute ezer pink nabarmenduta
eskubidea.
Ari gara hemen arazoei joan gara,
baina asko sortzen ari gara geure lan egiteko oraindik.
Eta hau azkartuko dugu, beraz, bada eman orain amaitzean joan,
beste sentitzen ditu bertara, hain zuzen ere.
Besterik ezkerreko muturrean bideratua baina apur bat gehiago lan needed-- gisa egiten
gauzak leuntzeko moduko baino, gauzak konpontzen,
baina, azken finean, arazo batekin elementu bakoitzak bat aldi berean
ondo arraio iritsi arte, dugu guztiak ezagutzen nola hau da Amaierara joan,
beraz underwhelming txiki bat da beharbada.
>> Baina end-- zerrendan spoiler-- da ordenatuko joan.
Hargatik begiratu azkena batean.
Ezin besterik saltatzeko dugu orain.
Ia ez gara.
Bi, joan den joateko bat.
Eta voila.
Bikain.
>> Beraz, orain egin azken banan utzi, berriro, zoriz burbuila sort.
Eta konturatu hemen, motela naiz batez ere, behera, hau mantentzeko duela bitartez datorrela.
Baina konturatu besterik egiten Pairwise comparisons-- tokiko soluzioak moduko.
Baina laster lortuko dugu gisa pink zerrenda amaieran,
Zer ari da berriro gertatuko nahi izan du?
Bai, nahi izan da joan berriro hasi, delako bakarrik
pairwise akatsak finkoa.
Eta hori oraindik agerian izana besteek.
Eta hau arindu baduzu, egingo duzu ikusi duten, izen dakar askoz bezala,
txikiagoa du elementuen edo, hobeto esanda, handiago elementuen hasita
burbuila sortu goian, izango bada.
Eta elementu txikiagoak dira burbuila ezkerrera behera hasita.
Eta, hain zuzen, hori da mota efektu bisuala baita.
Eta, beraz, hau amaituko da akabera bat oso antzekoa da, gehiegi ere.
>> Ez dugu bizitzea bat bereziki honetan.
Demagun hau ireki zidan orain, gehiegi.
Ez da gutxi batzuk beste algoritmoak munduan, haietako batzuk baino
Hemen harrapatu dira.
Eta batez ere ikasleentzat Ez diren nahitaez entzunezko edo matematiko,
aurretik egin dugun bezala, ahal dugun halaber, egin hau audially
Soinu bat erlazionatuko badugu honekin.
Eta besterik gabe, fun, hona hemen bat algoritmo ezberdinak batzuk,
eta horietako bat bereziki Oraindik nabarituko da deitu joan "batu ordenatu."
>> Benetan da funtsean bat algoritmoa hobeto,
hala nola batu hori, bat sort direnak, ikusten ari zara buruz,
ez da karratu n ordena.
da ordena n aldiz, saioa It n, hau da, benetan txikiagoak eta, beraz,
horiek beste hiru baino azkarrago.
Eta badira beste pare bat silly direnak hori ikusiko dugu.
>> Beraz, hemen soinu batzuk joan ginen.
Hau txertatzeko ordena, beraz, berriro besterik ez da elementu aurre
datozen bezala.
Hau burbuila sort da, beraz, horiek garai batean bikote kontuan hartuta.
Eta berriro, elementu handiena dira goian borborka.
>> Hurrengo sortu aukeraketa ordenatu.
Hau Ben-en algoritmoa, non da Berriro Honez iteratively hautatu zuen
du elementu hurrengo txikiena.
Eta berriro, orain ezin duzu benetan entzuten duten Honez azkartu da baina bakarra, orain arte ere
Honez gero eta gutxiago egiten den bezala iterazio bakoitzean lan.
Hau bat azkarragoa da, batu, ordenatu, hau da, zenbakiak klusterrak ordenatzeko
elkarrekin eta, ondoren, horiek konbinatuz.
Beraz look-- ezkerreko erdia dagoeneko ordenatuko da.
>> Orain eskuineko erdia ordenatzeko da, eta orain, horiek konbinatu bat sartu.
Hau zerbait deitzen da "Gnome sort."
Eta nolako dezakezu hori ikusi nik atzera eta aurrera,
lan konpontzen pixka bat hemen eta Han hasten da lan berri aurretik.
Eta hori da.
Ez dago moduko beste, Hau da, Benetan, besterik xede akademikoetarako,
"Ergelak ordenatu," horrek hartzen izeneko Zure datuak, ordenatzen da ausaz,
eta, ondoren, egiaztatzen ordenatuko bada.
Eta ez baldin bada, berriro ordenatzen hura ausaz, egiaztatzen da horrela antolatu bada,
eta ez bada errepikatzen.
Eta teorian probabilistically, hau osatuko du,
baina nahiko denbora pixka bat ondoren.
Ez da gehien Algoritmoen eraginkorra.
Beraz, edozein horietan galderak algoritmoak edo ezer berezirik
bertan, gehiegi?
>> Beno, utzi tease gain, zer guztiak Lerro hauek dira dudan marrazkia ditudan
eta zer ordenagailua naiz suposatuz kanpaia azpian egin dezake.
zenbaki horiek guztiak erabiltzen nuke argudiatu drawing-- mantendu dut lortu behar dute
gordetako memoria nonbait.
tipo hau kendu egingo dugu orain ere.
>> Beraz, memoria zati bat batean ordenagailu beraz RAM DIMM da
atzo, dual zer bilatuko dugu inline memoria module-- itxura hau.
Eta horiek txip txiki beltz bakoitzak byte kopurua batzuk, normalean.
Eta gero urre pin bezala dira hariak lotzen da ordenagailua,
eta berdea taula silizio besterik ez da zer mantentzen dena, guztiak elkarrekin.
Beraz, zer da benetan esan nahi?
If I motatako irudi hori bera marrazteko, Demagun sinpletasunagatik
DIMM honetan, dual hori inline memoria modulua,
RAM gigabyte bat, gigabyte bat da memoria, hau da, zenbat byte guztira?
gigabyte batek byte zenbat da?
Hori baino gehiago.
1.124 kilo da, 1.000.
Mega milioi da.
Giga milioi bat da.
>> Am I etzanda?
Ezin baita etiketa irakurri dugu?
Hau da, benetan 128 gigabyte, beraz, gehiago da.
Baina hau asmoa dugu gigabyte bat besterik ez da.
Beraz, esan nahi du ez da milioi bat memoria byte niretzat eskuragarri
edo 8 milioi bit, baina goaz ari byte dagokionez hitz orain,
aurrera.
>> Beraz, zer esan nahi duen hori da, byte, hau byte bat da,
hau byte bat da, eta benetan nahi badugu
zehatzei dugu behar luke izan marrazteko bat milioi karratu gutxi.
Baina zer esan nahi du horrek?
Beno, let me besterik argazki honetan ere.
Nik zerbait bada itxura orain honek bezala, lau byte da.
>> Eta orain lau zenbakiak jarri izan dut hemen.
Bat bi hiru lau.
Edo lau letrak edo ikurrak jarri izan dut.
"Hey!" eskubidea han joan daiteke, letrak bakoitzean delako,
eztabaidatu dugu, irudikatzen litezke
zortzi bit edo ASCII edo byte batekin.
Beraz, beste era batera esanda, ezin duzu jarri 8 milioi gauzak barruan
inork memoria makila honen.
Orain, zer da gauzak jarri back esan nahi du memorian kopiak hau bezalako kopiak?
Hau da, zer programatzailea "Array". Bat deitu
Ordenagailu-programa bat ere, ez duzu uste azpiko hardware buruz, per se.
besterik zeuk uste duzu beharrik gisa milioi byte guztira sarbidea,
eta ezer dezakezu berarekin nahi duzun.
Baina komenientziagatik Oro har, erabilgarria da
Zure memoria eskubidea mantentzea bakoitzak hau bezalako bestearen ondoan.
Beraz zoom honetako nuen bada Halako on ari gara, ez delako joan
bilioi bat squares-- gutxi marrazteko Demagun taula honetan adierazten duten
memoria makila hori orain.
Eta besterik ez dut gisa marraztu asko bezala, nire markatzailea ondorioz sortu me hemen emanez.
Beraz, orain makila bat dugu Taula gainean oroimenaren
hori lortu bat, bi, hiru, lau, bost, sei, bat, bi, hiru, lau, bost, sei,
seven-- orain 42 byte memoria pantaila osoaren arabera.
Eskerrik asko.
Bai, nire aritmetika.
Beraz, 42 memoria byte hemen.
Beraz, hau benetan esan nahi?
Beno, informatika programatzailea litzateke benetan, oro har,
memoria honetan addressable bezala pentsatzea.
Beste era batera esanda, horietako bakoitza kokapenak memoria, hardware ere,
helbide berezia du.
>> Ez da gisa One BRATTLE konplexua Square, Cambridge, Mass., 02138.
Horren ordez, zenbaki bat besterik ez da.
Hau da, byte kopurua zero, hau da bat, hau da, bi, hau da, hiru,
eta hau 41 da.
Itxaron minutu batez.
42 esan dut une bat duela pentsatu dut.
zero at kontatuta hasi nintzen, beraz, benetan zuzena da.
Orain ez dugu benetan marrazteko sareta gisa, eta sareta bat bezala marraztu baduzu
Gauzak benetan uste dut pixka bat engainagarria.
Zer programatzailea litzateke, bere baitan,
Oro har, hau pentsatzea memoria zinta bat bezalakoa da gisa,
Maskaratzea zinta zati bat bezala Hori besterik ez, eta betiko doa
edo exekutatzen duzun arte oroimen gabe.
Beraz, bide ohikoagoa den marrazteko eta besterik memoria pentsatzen
hori da, byte zero, bat izango litzateke, bi, hiru, eta, ondoren, puntu, dot, dot.
Eta duzu 42 hala nola byte guztira, nahiz eta fisikoki agian benetan arren
horrelako zerbait gehiago izan.
>> Beraz, orain duzu uste baduzu, zure memoria honetan bezala, zinta bat bezala,
hau da, zer programatzailea berriro memoria array bat deitu litzateke.
Eta, benetan gorde nahi duzu ordenagailuaren memorian zerbait,
Oro har, ez duzu dendan gauzak back-to-back back-to-back to.
Beraz dugun izan zenbakiak buruz hitz egiten.
Eta noiz nahi nuen arazoak konpontzeko bezalako lau, bat, hiru, bi,
nahiz eta besterik ez dut marrazten zen arren soilik zenbakiak lau, bat, hiru,
bi taula gainean, ordenagailuaren litzateke benetan dute memorian instalazio honek.
>> Eta zer ondoan izango litzateke bi ordenagailuaren memorian?
Beno, ez dagoela erantzun ez.
ez benetan jakin dugu.
Eta hain luze jo ordenagailua ez da beharrezkoa da,
ez du izan behar zaintzeko zer da hurrengo zenbakiak buruz zaintzen du.
Eta noiz lehenago ordenagailu bat dagoela esan nuen Baino ezin helbide begiratu aldi berean,
hau zergatik mota da.
>> Ez da erregistro bat bezala jokalari eta irakurketa buru bat
soilik jakin bat begiratzeko gai izatea fisiko bat zahar-espedientea hasi groove
aldi berean, era berean, Ahal ordenagailua eskerrik bat
bere CPU eta bere izateko Intel instrukzio multzoa,
zeinen instrukzioa artean Oroimen irakurri
edo gorde bat, memoria ra ordenagailua bakarrik dezakezu begiratu
aldia batean kokapen bat batzuetan bien konbinazioa,
baina aldi berean kokapena benetan bakarrarekin.
Beraz, egiten ari ginen hainbat algoritmo horiek,
Ez dut besterik batean idazten vacuum-- lau, bat, hiru, bi.
Zenbaki horiek benetan dira memoria nonbait fisikoak.
Beraz, ez dira txiki txiki transistoreak edo nolabaiteko
azpian elektronika kanpaia balio horiek gordetzeko.
>> Eta, guztira, zenbat bit dira inplikatutako oraintxe, besterik gabe, argi izan behar da?
Beraz, hau lau byte da, edo orain 32 bit guztira da.
Beraz, ez dira benetan 32 zeroen eta direnak lau gauza hauek idazterakoan.
There are hemen baino gehiago, baina berriro ez dugu horri buruzko zaintzeko.
>> Beraz, gaur egun dezagun eskatu beste Galdera memoria erabiliz,
amaieran delako Egun bariantza da.
Ez dio axola zer liteke batekin egiten dugu Ordenagailua, egunaren amaieran
hardware da oraindik etorri kanpaia azpian bera.
Nola zuen ezer gorde dut hemen?
Beno, ordenagailu batean hitz bat bezala "Hey!" gorde beharko litzateke, besterik gabe, hau bezalako.
Eta luzeagoa nahi baduzu hitza, besterik gabe, ahal duzun
gainidatziko eta zerbait esan "Kaixo" eta denda hemen bezala.
>> Eta beraz, hemen ere, contiguousness honetan da benetan abantaila bat,
ordenagailu bat besterik ez delako ezkerretik eskuinera irakurri.
Baina hemen kontua da hori.
Hitz honen testuinguruan, h-e-l-l-o, harridura,
nola liteke ordenagailua dakit non hitza hasten eta non bukatzen den hitza?
zenbakiak testuinguruan, nola ordenagailua ez
Badakizu zenbat denbora sekuentzia Zenbakiak da edo bertan hasten da?
Beno, bihurtzen da eta ezin izango dugu gehiegi
detail-- maila honetan sartu ordenagailuak mugitu inguruan gauzak oroimenean
literalki helbide hauek medio.
Beraz, ordenagailu batean, bazaude kodea idatziz gauzak gordetzeko
hitzak bezala, zertan ari zaren Egiten idazten ari da
esamoldeak gogoratzen duten non hasi ordenagailuaren memorian hitz horiek dira.
Hargatik bat egin zidan oso, Adibidez, oso erraza.
>> Aurrera joan noa eta ireki, testu programa sinple bat,
eta ez naiz sortu joan Fitxategi bat izeneko hello.c.
Informazio hau gehiena dugu ez du sartu zehaztasun handiz,
baina egingo dut idatzi joan hizkuntza hori bera ere programa,
C. Hau da, orain arte gehiago beldurra, Gainera, nire ustez, Scratch baino,
baina espirituz oso antzekoa da.
Izan ere, kizkur horiek giltza mota dezakezu
zer ez horixe egin dut uste.
>> Hori da, benetan dezagun.
Noiz berdea Ez klik, honako hau.
inprimatu nahi dut "kaixo".
Beraz, hau da, gaur egun pseudocode.
Mota naiz lerro lausotzen.
C, hizkuntza hau hitz egiten ari naiz buruz, lerro hau inprimatu kaixo
benetan "printf" bihurtzen parentesi batzuk eta puntu bat.
>> Baina zehatza ideia bera da.
Eta hau oso lagungarria "Berdea Ez klik" bihurtzen
askoz gehiago urrutira "int hutsune nagusia."
Eta hau benetan mapping ez, beraz, besterik ez dut hori ez da joan.
Baina kizkur giltza bezalakoak dira makurrak puzzle hau bezalako piezak.
>> Beraz, zuk nolako ahal asmatzen.
Nahiz eta inoiz ez duzula aurretik programatu, zer programa hau seguruenik, zer egin?
Seguruenik inprimatzen kaixo harridura puntu batekin.
>> Hargatik saiatu dela.
hura gorde dut.
Eta hau da, berriro ere, oso bat eskola zaharra ingurumena.
Ezin dut egin klik, ezin dut, ezin arrastatu.
komando idatzi behar dut.
Beraz, nire programa exekutatu nahi dut, beraz, hau egin liteke dut, hello.c bezala.
Fitxategia I ran da.
Baina itxaron, urrats bat dut falta.
Zer esan dugu beharrezkoa da a C bezalako hizkuntza bat zapaldu?
Besterik ez dut idatzizko iturri kodea, baina zer egin behar dut?
Bai, konpiladore bat behar dut.
Beraz, nire Mac hemen, daukat bat GCC izeneko programa, GNU C konpilatzailea,
horri esker, aldi Halako egin dit Nire iturburu-kodea sartu, dugu deitu,
makina kodea.
>> Eta hori ikusten dut, berriro, honela, hauen
dira zero eta bai I just Nire iturburu kodea batetik sortu,
zero eta bai guztia.
Eta exekutatu nahi badut Nire programa da gertatzen
deitu behar a.out reasons-- historikoa "kaixo".
da berriro exekutatu ahal izango dut.
Kaixo, kaixo, kaixo.
Eta lanean ari dela dirudi.
>> Baina horrek esan nahi du, nonbait, nire ordenagailuaren memorian hitzak dira
h-e-l-l-o, harridura.
Eta bihurtzen da, besterik gabe gisa alde batera utzita, zer ordenagailu bat litzateke normalean
hacerlo daki hori non Gauzak hasteko eta end-- da
sinbolo berezi bat jarri hemen doa.
Eta hitzarmena jarri zero zenbakia hitz baten amaieran
Zu non benetan amaitzen, beraz,
ez mantendu, gero eta gehiago inprimatzeko karaktere baino benetan asmoa.
>> Baina eramateko hemen, nahiz eta hau da, nahiko urrutira arren,
azken finean, hori da nahiko erraza.
ziren zinta moduko eman duzu, huts bat Espazio horren gainean letrak idatzi ditzakezu.
Besterik ez duzu bat izatea sinbolo bereziak, arbitrarioki bezala
zero zenbakia, to amaieran jarri Zure hitzak, beraz, ordenagailu hori ezagutzen,
oh, inprimatzeko gelditu behar dut ondoren harridura ikusten dut.
hurrengo gauza ez delako ASCII zero balioa da,
edo pertsonaia null gisa Norbaitek esango luke.
Baina ez da arazo bat mota hemen, eta ez dezagun atzera leheneratu
une batez zenbakiak den.
Demagun hori egiten dut, hain zuzen ere, zenbakiak array bat,
eta suposatzen duten Programa naiz idazten da
kalifikazioa irakasle batek liburu bat bezala eta irakasleak ikasgelan bat.
Eta programa honek aukera ematen du berari idatzi beren ikasleen puntuazioak
galdetegiek.
Eta demagun ikaslea lortzen 100 bere lehen quiz, agian
80 bat hurrengo batean, orduan bat bezala 75, gero 90 bat laugarren galdetegi orrian.
>> Beraz, istorioa Puntu honetan, array tamaina lau da.
Ez dago memoria erabat gehiago izan du ordenagailua, baina array, nolabait esateko,
tamaina lau da.
Demagun orain, irakasleak nahi duen bosgarren klasean galdetegi bat esleitzeko.
Beno, gauza bat zuen edo zuen egin behar joan
da orain balio gehigarri bat gordetzeko hemen.
Baina array bada irakaslearen ditu Programa honetan sortutako tamaina da,
sorta batekin arazo bat dela Ezin besterik mantentzeko duzu memoria gehituz.
Zeren bada beste zati Programa hitzaren ditu "hey" bertan?
>> Beste era batera esanda, nire memoria izan daiteke programa batean ezer erabil.
Eta aldez aurretik bada idatzi dut, beno, Nahi sarrerako lau galdetegi partiturak dut,
Hemen eta hemen go dute agian.
Eta bat-batean, zure kontuan aldatzeko geroago eta esan bosgarren galdetegi bat egin nahi dut
puntuak, ezin duzu besterik ez edonon nahi duzun,
baita zer hau bada memoria erabiltzen ari da
Zerbait egiteko beste programa batzuk Bestela edo beste programaren ezaugarri batzuk
ari martxan?
Beraz, aldez aurretik uste duzu nola zure datuak gorde nahi duzun,
orain margotu ditudan duzulako yourself izkinan digital bat sartu.
>> Beraz, irakasle bat egin dezake ordez esan programa bat idazten duzunean
gordetzeko bere kalifikazio, badakizu zer?
eskatzeko noa, nire programa idazten denean,
nahi dut zero, bat, bi, hiru, lau, bost, sei, zortzi kalifikazio osotara.
Bat, bi, hiru, lau, bost, sei, zazpi, zortzi.
Irakaslearen ahal pasatxo-esleitu memoria denean bere programa idazten
eta esan, zer dakizu?
Inoiz ez naiz gehiago esleitu joan seihileko batean zortzi galdetegiak baino.
Joseba.
Ez dut inoiz esleitu dela.
Beraz, modu honetan, berak ditu denda ikasleen puntuazioak malgutasuna,
75, 90, eta, agian aparteko non like Ikasleak lortu estrak, 105.
>> Baina bada irakaslearen inoiz hiru espazio horiek erabiltzen ditu,
ez intuitiboa eramateko bat da hemen.
Hark zuzenduko du, hau da, besterik gabe espazioa alferrik galtzen.
Beraz, beste era batera esanda, ez da hau programazio denerako komunak
non bai esleitu ahal izango duzu zehazki, askoz ere memoria nahi duzun bezala,
horietatik hankaz da super zarela efficient-- ari ez parrastatzailea ere
all-- at baina horrek arazotxo da zer zure kontuan denean aldatzen baldin baduzu
gorde nahi duzun programa erabiliz Zu baino datu gehiago jatorriz xedea.
>> Beraz, agian konponbidea da, orduan, programak idazten modu bat,
memoria gehiago erabiltzen dutela baino benetan behar.
Horrela ez duzu joan arazo hori sartu exekutatu,
baina parrastatzailea ere zu.
Eta orduan eta memoria gehiago erabiltzen du programa, eztabaidatu dugun bezala, atzo, gutxiago
memoria hori eskuragarri beste programak,
lehenago zure baliteke ordenagailua motela behera delako memoria birtuala.
Eta, beraz, irtenbide ezin hobea zer izan liteke?
>> Under-puntuek dirudi txarra.
Over-puntuek txarra dela dirudi.
Beraz, zer hobeto irtenbide bat izan liteke?
Reallocating.
Kontuz dinamikoagoa.
Ez behartu yourself bat aukeratu priori, hasieran, zer nahi duzu.
Eta, zalantzarik gabe, ez gehiago-esleitu, kausituko izan parrastatzailea.
>> Eta beraz, helburu hori lortzeko, dugu Behar Datuen egitura hau bota,
nolabait esateko, kanpoan.
Eta orain zer programatzailea normalean erabiliko du
zerbait ez deritzo array baina lotuta zerrenda bat.
Beste era batera esanda, berak izango hasteko beren memoria pentsatzea
Forma baten antzeko zerbait izateaz dutela daiteke honela marraztu.
zenbaki bat gordetzeko ere nahi badut programa bat September da, beraz,
Eman dut nire ikasleak galdetegi bat; nahi dut ikasleen lehen galdetegi gordetzeko,
eta 100 bat lortu deitu nuen dute Nire ordenagailua galdetzera joan,
Programaren dut modu idatzia, memoria zatia bat da.
Eta ez dut gordetzeko joan 100 zenbakia da, eta hori da.
>> aste Gero batzuk geroago nire bigarren galdetegia lortu dut,
eta denbora behar idazten da % 90 horretan, noan
ordenagailu eskatu, beno, ordenagailua, ahal beste zatia memoria bat behar dut?
Honez niretzat hau ematera joan memoria zatia hutsik.
90 zenbakia jarri noa, baina nire programan nolabait edo other--
eta ez dugu kezkatu buruz sintaxia dute hau egiteko behar dut
nolabait kate gauza horiek elkarrekin.
Eta horiek kate dut elkarrekin zer gezi bat hemen itxura.
>> Hirugarren quiz datorren, erran nahi dut, beno, ordenagailua,
ematen dit beste zatia memoria bat.
Eta ez dut behera jarri nahi dut edozein dela ere, izan zen 75 bezala,
eta kate honen I elkarrekin orain, nolabait.
Laugarren galdetegi batera dator, eta, agian, hori lauhilekoaren amaieran da.
Eta puntu horretan nire programaren arabera memoriarekin izan liteke
guztiak leku baino gehiago, fisikoki baino gehiago.
Eta, beraz, besterik ez Jaurtiketa, naiz hau marrazteko aurrera joan
quiz-- zer zen hura ahaztu dut; I uste agian 80 edo zerbait
horrela hemen.
>> Baina hori fina, Pictorially delako lerro hau marraztu dut.
Beste era batera esanda, egia esan, zure ordenagailuaren hardwarearen ere,
Lehenengo puntuazio agian azkenean, hemen da delako
eskubidea lauhilekoaren hasieran.
Hurrengoa azkenean baliteke hemen denbora pixka bat delako gainditu ditu
eta programa martxan mantentzen.
Hurrengo puntuak, eta hori izan zen 75 bat, hemen baino gehiago izan ditzake.
Eta azken puntuazio izan liteke 80 bat, hemen baino gehiago da.
>> Beraz, errealitatean, fisikoki, hau izan liteke Zein da zure ordenagailuaren memorian itxura.
Baina hau ez da mental erabilgarria ordenagailu programatzailea paradigma.
Zergatik behar non Laguntza heck zure datuak bukatzen da?
Nahi besterik ez duzu datuak gordetzeko.
>> Honek mota gure eztabaida bezalako Kuboa marrazketa lehenago.
Zergatik axola zer angelu kubo da
eta nola marraztu buelta eman behar duzu?
Kubo bat Nahi besterik ez duzu.
Era berean, hemen duzu besterik kalifikazioa book nahi.
Nahi besterik ez duzu pentsatzen hau zenbakien zerrenda bat bezala.
Nork zaintzen nola da inplementatu hardware in?
>> Beraz, abstrakzioa orain Argazki hau hemen da.
Hau da zerrenda lotuta, gisa programatzailea da deitu litzateke,
bat duzu heinean zerrenda, zenbakien jakina.
Baina Pictorially lotu geziak horien bidez,
eta geziak horiek guztiak are-- azpian kanpaia, ari zaren bitxia bada,
Gogoratzen gure hardware fisikoak erabiltzen ditu helbideak zero, bat, bi, hiru, lau.
geziak horiek guztiak dira mapa bat bezalakoa da 90 is-- edo argibideak, non bada orain
zenbatu lortu nuen.
>> Zero, bat, bi, hiru, lau, bost, sei, zazpi.
bezalako 90 at dago erabilgarri memoria helbidea zazpi zenbakia.
geziak horiek guztiak dira da paper puska bat bezala
hori norabide emanez Programa dioen mapa hau jarraitu
to kokapena zazpi iristeko.
Eta han aurkituko dituzu Ikaslearen bigarren galdetegia puntuazioa.
Bien bitartean, 75-- hau jarraitzen badut, hau da, zazpi, zortzi, bederatzi, 10, 11, 12,
13, 14, 15.
>> beste gezi Hau besterik adierazten memoria kokapena 15era mapa bat.
Baina, berriro ere, programatzaile, oro har, ez du Ez Xehetasun maila honetan zaintzeko.
Eta gehien programazio guztietan Hizkuntza gaur, programatzailea
ez du, nahiz eta jakin non memoria zenbaki horiek benetan dira.
Guztiak berak ditu ingurukoa da zaintzeko direla nolabait lotuta elkarrekin
datu-egitura batean.
>> Baina bihurtzen da, ez gehiegi teknikoak lortzeko.
Baina ezin dugu agian, besterik ez delako ordaindu eztabaida hau hemen,
Suposatzen bazenuke dugun Arazo hau hemen array bat.
Ikus dezagun damutuko dugu hemen gertatzen bada.
Honek 100, 90, 75, eta 80 da.
>> Dezagun laburki egin me erreklamazio hau.
Array bat da, eta, berriro ere, array baten ezaugarri nabarmenetako
dela zure datu guztiak da atzera back to memoria gordetzeko atzera literalki
byte bat edo, agian, lau byte, byte kopuru finko batzuk kanpoan.
lotutako zerrenda bat, eta horrek agian marraztu dugu Hau atsegin, kanpaia azpian nor
daki non stuff hori da?
Ez du, nahiz honelako osotasunean behar.
Datu batzuk izan daiteke Atzera Ezkerretik han.
Zuk ez duzu, nahiz eta jakin.
>> Eta orain sorta batekin, bat duzu Ezaugarri ausazko sarbidea bezala ezagutzen.
Eta zer ausazko sarbidea bide da ordenagailuak berehala salto egin dezake
Bat kokapena array bat da.
Zergatik?
ordenagailua daki delako Lehenengo kokapena dela
zero, bat, bi, eta hiru.
>> Eta horrela joan nahi baduzu du elementu batetik honetan,
literalki, in the ordenagailuaren gogoan, besterik gehi bat.
Hirugarren elementua joan nahi izanez gero, besterik gehitu hurrengo elementu one--, besterik
gehi bat.
Hala ere, bertsio honetan Istorioaren, demagun
ordenagailuan unean ari da Etxean edo 100 zenbakia aurre.
Nola lortu hurrengo duzu kalifikazioa liburuan guztirakoak?
>> zazpi hartu behar duzu urratsak, zein da arbitrarioa.
Hurrengo bat lortzeko, behar duzu hartu beste zortzi urrats to 15 lortu.
Beste era batera esanda, ez da bat zenbakiak arteko etengabeko hutsunea,
eta beraz kontua besterik ez da ordenagailua denbora gehiago puntua da.
Ordenagailua bilatu ditu ordena memoria bidez
da zer bilatzen ari zaren aurkitzeko.
>> Beraz, array bat joera bat izan nahi du, berriz, Datu azkarra structure-- duzulako
literalki besterik ez dezake aritmetika simple eta non nahi duzu lortuko bidali gehituz,
lotutako zerrenda bat Adibidez for, Ezaugarri hori sakrifikatu duzu.
Ezin besterik lehen joan bigarren hirugarren izateko laugarren.
mapa jarraitu behar duzu.
urrats gehiago hartu behar duzu balore horiek, iritsi eta bertan
kostu bat gehituz izan badirudi.
Beraz prezioa ordaindu ari gara, baina zer zen Ezaugarri Dan hemen bilatuz zen?
Zer lotutako zerrenda bat egiten du itxuraz egiten uzten digu,
bertan jatorria izan zen bereziki istorio hau?
>> Zehazki.
tamaina dinamikoa da.
gehitu ahal izango dugu zerrenda honetan.
Dugu, nahiz txikitu dezakezu zerrendan, beraz, Hori bakarrik ari gara askoz memoria erabiliz
Benetan nahi dugu, eta, beraz, Oraindik ez dugu inoiz baino gehiago-puntuek.
>> Orain besterik benetan Nit-hautakorra izan nahi du, ez ezkutuko kostua.
Beraz, behar ez bakarrik utzi duzu me konbentzitu duzu hori sinesgarria denerako.
Badira beste ezkutuko kostua da hemen.
Prestazioa, argi izan behar da, dela dinamismoa lortu dugu.
beste elementu bat nahi dut, besterik ezin dut marraztu eta zenbaki bat jarri hor.
Eta, ondoren, lotu ahal dut argazki batekin hemen,
hemen baino gehiago, berriz, berriro ere, ez dut bada margotu neure burua txoko batean,
beste zerbait dagoeneko erabiltzen ari bada memorian hemen, naiz suerte dut.
Nik margotu dut neure burua txoko sartu.
>> Baina zer da ezkutatzea argazki hau kostua?
Ez da zenbatekoa besterik ez da denbora da hartzen duten
hemendik joan hemen, horietatik zazpi urrats da, ondoren,
Zortzi urrats, eta horrek bat baino gehiago da.
Zer da beste ezkutuko kostua?
Ez bakarrik denbora.
Informazio gehiago Beharrezkoa irudi hori lortzeko.
>> Bai, mapa hori, scrap txiki horiek paper, haiek deskribatzeko jarraitzen dudalarik.
Hauek horiek geziak baino ez dira doan.
ordenagailu batek badakizu zer ordenagailu bat dauka.
zeroen eta bai ditu.
gezi bat edo bat ordezkatzen nahi badituzu mapa edo zenbaki bat, memoria pixka bat behar duzu.
Beraz, beste prezioa duzu lotutako zerrenda bat ordaintzeko,
komun bat informatika baliabide, espazioa ere bada.
>> Eta hain zuzen ere, beraz, beraz, normalean, Transakzioak artean
software ingeniaritza diseinatzen sistemak denbora eta espazioa da
dira zure osagaiak bi, bi Zure garestia osagaiak.
Hau da, niri balio duten denbora gehiago Mapa honetan jarraitu behar dut, zeren,
baina, aldi berean niretzat balio duten espazio gehiago Mapa hau mantendu behar dudalako.
Beraz, itxaropena, mota dugu, gisa Atzo eta gaur egun baino gehiago eztabaidatu,
onurak dela kostuak gainditzen dira.
>> Baina ez dago bistako irtenbide hemen.
Agian better-- da la azkar eta zikin,
Kareem proposatutako lehenago bezala memoria bota arazoa at.
Just erosi memoria gehiago, uste gutxiago arazoa konpontzeko buruz gogorra,
eta konpondu modu errazago batean.
Eta hain zuzen ere, lehenago, Transakzioak buruz hitz egin dugu,
ez zen espazioan Ordenagailua eta denbora.
sustatzailearen denbora, izan zen bertan oraindik beste baliabide bat da.
>> Beraz, berriro ere, oreka hau da erabakitzen saiatzen gauza horiek zein
zauden pasatzeko prest?
Zein da gutxienez garestia da?
Zein errendimendu du emaitza hobeak?
Bai?
>> Hain zuzen ere.
Kasu honetan, Oraindik baduzu maps-- zenbakiak ordezkari
horiek hizkuntza askotan deitzen "Erakusle" edo "helbideak" -
espazio bikoitza da.
Hori behar ez bezala bikoitza balitz bezala txarra oraintxe ari gara zenbakiak gordetzeko.
Demagun ziren gordetzeko dugu hospital-- batean gaixoaren Erregistro
Pierson izenak, telefono zenbakiak, beraz, segurtasun sozial zenbakiak, medikua
historia.
Kutxa honetan, askoz ere izan liteke, askoz handiagoa da, eta kasu horretan
txiki txiki erakuslea, helbidea sartu hurrengo element-- ez da big aurre.
hala nola, Fringe bat da kostua ez du axola.
Baina kasu honetan, bai, bikoiztea da.
Galdera ona.
>> Hitz egin dezagun denbora bat egin dezagun gutxi zehazkiago.
Zer ari da denbora zerrenda honetan bilatzen?
Demagun bilatu nahi dut ikasleen kalifikazio guztiak bitartez,
eta ez da, n kalifikazio Datu egitura honetan.
Hemen ere, maileguan hartu ahal izango dugu lehenago hiztegia.
Hau lineala datu-egitura bat da.
>> Big n O da, zer beharrezkoa den zaitez Datu egitura honen amaieran,
whereas-- eta ez dugu ikusten hau lehenago array bat ematen dizu
zer izeneko denbora etengabe, eta horrek esan nahi du urrats bat edo bi urrats edo 10 urrats
ez du axola.
kopuru finko bat da.
ezer egin ditu array tamaina.
Eta horren arrazoia, berriro, ausazko sarbidea da.
Ordenagailua besterik berehala beste kokaleku salto,
guztiak berdinak direlako beste guztia distantzia.
Ez dago pentsamendu parte hartzen da.
Ados.
Beraz, ahal badut, utzi saiatu me margotzeko bi final argazkiak.
bat oso ohikoa hash taula bat bezala ezagutzen.
Beraz, eztabaida hau motibatzeko, utzi hau nola egin pentsatzen dit.
>> Beraz, nola da hau?
Demagun arazoa dagoela orain konpondu nahi ditugu
dago hiztegian batean gauzatzeko beraz, ingelesez hitzak sorta oso bat
edo dena delakoa.
Eta helburua da erantzun ahal izateko formularioa galderei da hau hitz bat?
Beraz, nahi ezartzeko zuzentzaileari bat, besterik ez
hiztegia fisiko bat bezala Gauzak begiratu dezakezu hori.
Demagun hau egin sorta batekin nengoela.
Horretarako izan dut.
>> Eta demagun hitz sagar dira eta platano eta cantaloupe.
Eta ezin dut fruituak uste hori d hasiko da, beraz, besterik ez gara
Hiru fruituak izan da joan.
Beraz, hau array bat da, eta ez gara hitz hauek guztiak gordetzeko
Hiztegi hau array gisa ere.
Galdera da, bada, nola bestela ezin Informazio hau gorde duzu?
>> Ba, ez dut hemen tranpa mota, baita hitzen letrak horietako bakoitzaren
benetan banakako byte bat.
Beraz, nahi dut izan bada nit-hautakorra, benetan behar dut
den honetan zatitzerakoan askoz sartu memoria zatiak txikiagoak,
eta zehazki hori egin izan dugu.
Baina ari gara sartu exekutatu arazoa bera lehen bezala.
Zer bada, Merriam Webster edo Oxford gisa du aurtengo bakoitzean hitz gehitu dira
hiztegian ez egiten dugu zertan nahi geure margotzeko
sorta batekin txoko batean?
>> Beraz, horren ordez, agian smarter hurbilketa bat sagar jarri bere nodo edo kutxa batean,
dugu esango lukeen bezala, platano, eta gero hemen cantaloupe behar dugu.
Eta dugu kate gauza horiek elkarrekin.
Beraz, hau array da, eta hau zerrenda lotuta dago.
Ezin duzu nahiko ikusten baduzu, ez besterik dio "array", eta hau dio "zerrendan."
>> Beraz, bera dugu gai zehatza, lehen bezala,
Horren bidez, orain dugu gure zerrendan lotutako dinamismoa.
Baina nahiko motela dictionary ez dugu.
Demagun Hitzak bilatzeko bat nahi dut.
agian niretzat big n O urratsak, baita hitzaren might
izan modu guztiak amaieran zerrendan, cantaloupe bezala.
Eta bihurtzen da programazioan, ordenatu
Datu Grial santua egiturak, zerbait da
hori ematen dizu etengabeko array bat bezala denbora
baina hori oraindik dinamismoa ematen dizu.
>> Beraz, ahal munduak bi onenak izan dugu?
Eta, hain zuzen ere, zerbait da Hash taula izeneko
ahalbidetzen duen zehazki egiten duzun , Gutxi gorabehera bada ere.
Hash taula bat da hazle baten Datu egitura dugun
gisa pentsa dezakezu array bat konbinazio
eta ez dut marrazteko Halako eta lotutako zerrendak bezalako
egingo dut hau bezalako marraztu hemen baino.
>> Eta bide batez, gauza hau lanak honako hau da.
hau bada hash da gaur egun mahaian Nire hirugarren datu-egitura da,
eta gorde nahi dut Hitz hau, ez dut
Nahi besterik gordetzeko guztia hitz back to back Itzuli behar.
zenbait onura ateratzeko nahi dut Informazio pieza
hitz hori dizute buruz Lortzen me non azkarragoa da.
>> Beraz, emandako hitzak sagarra eta platano eta cantaloupe,
nahita hitz horiek aukeratu nuen.
Zergatik?
Zer da sort funtsean Hiru buruzko hainbat?
Zer da bistako?
letrak ezberdinekin hasten dira.
>> Beraz, badakizu zer?
jarri beharrean baino nire hitz guztiak bera ontzian, nolabait esateko,
honelako zerrenda bat handi batean, zergatik ez egin Gutxienez saiatu naiz optimizazioa
eta nire zerrendak 1/26 betiere.
sinesgarria optimizazioa A zergatik ez izan liteke
hitz bat txertatzeak I Datu egitura sartu,
ordenagailuaren memorian, zergatik sartu ez du 'a' hitz guztiak jarri dut hemen,
guztiak 'b' hitzak, hemen, eta 'c' hitz guztiak hemen?
Beraz, hau bueltarik, sagar bat jarriz Hemen, platano hemen, cantaloupe hemen,
eta abar.
>> Eta gehigarri bat badut hitza bezalakoa Zer da beste bat?
Apple, banana, madari.
Edonork fruta bat pentsatzea duten a, b, c edo hasten da?
Blueberry-- perfektua.
Hori da azkenean hemen doa.
Eta horrela izan behar dugu, badirudi mugagabeko irtenbide hobea,
zeren orain nahi badut bilatu sagarra, I
lehen aukera ez dut besterik dive Nire datuak egitura sartu.
Ez dut nire ordenagailuaren memoria murgiltzea.
gutun lehen lehen dut begiratu.
>> Eta hau da, ordenagailu bat Zientzialari esango luke.
hash zure datuak egitura sartu duzu.
Zure sarrera, eta bertan hartu Kasu honetan sagar bezala, hitz bat da.
aztertuko duzu, begira Kasu honetan lehenengo letra,
horrela, osatzerakoan.
Hashing termino orokor bat da, zeinaren bidez Zerbait sarrera gisa hartu duzu
eta irteera batzuk ekoizteko duzu.
Eta hori ere irteera Kasu kokapena da
bilatu, lehenengoa nahi duzu kokapena, bigarren kokapena, hirugarren.
Beraz, sarrera sagarra da, irteera da lehenengo.
sarrera banana, da irteera bigarren izan behar du.
Sarrerako cantaloupe da, irteera hirugarren izan behar du.
sarrera Blueberry da irteera berriro izango da bigarren.
Eta hori zer ematen dizu lasterbideak zure memoria bidez
Ordena hitz iristeko edo datu gehiago eraginkortasunez.
>> Orain hau moztu eta behera gure denbora potentzialki bezainbeste bat bezala 26 daudelarik arabera,
bere gain hartzen duelako bada hori askotan bezala "a" hitzak "z" gisa
hitzak "q" hitzak, eta horrek Ez da benetan realistic--
zehiarketa dute topo egingo duzun alphabet-- hizkiak zenbait
baina hau gehikuntzaren bat izango litzateke Planteamendu hori uzten du
Hitzak askoz ere azkar lortu duzu.
Eta egia esan, sofistikatua programa, munduaren Google du,
world-- Facebooks du hash taula bat erabili zuten
Helburu desberdinak asko da.
Baina ez lukete hain inozoa besterik gutun lehen begiratu
Sagar edo platano edo madari edo cantaloupe,
baita horiek ikusi dezakezu bezala zerrendak izan, oraindik lortu luzea.
>> Eta, beraz, hau agian oraindik sort izan of linear-- beraz sort motela,
big n O batera bezala eztabaidatu dugun.
Beraz, zer da benetako ona hash taula bat izango zuzen ere, egin array askoz handiagoa izango da.
Eta askoz gehiago erabiliko du sofistikatua hash funtzioa,
beraz, ez da, besterik gabe, begiratu "bat."
Agian begiratu egiten da "bat-p-p-l-e" eta nolabait bihurtzen bost hizki horiek
Kokapena sartu non sagar gorde behar dira.
Oraindik besterik naively letra 'bat' erabiltzen dugu Bakarrik, atsegina eta erraza delako.
>> Baina hash taula bat, in Azkenean, uste dezakezu
ren konbinazio gisa array bat, eta bakoitzak bere
lotutako zerrenda bat dauka haien Ahalik eta laburren izan behar du.
Eta hau ez da bistako irtenbide bat.
Izan ere, doitze askoz Hori gertatzen den kanpaia azpian denean
mota horiek gauzatzeko Datu-egitura sofistikatu
da zer eskubidea da array luzera?
Zer da eskuineko hash funtzioa?
Nola ez, gauzak gordetzeko memorian?
>> Baina konturatzen nola azkar eztabaida moduko honetan
areagotu, bai orain arte mota dela bat buru Puntu honetan, baino horrek
fina da.
Baina hasi ginen, oroitzapen, benetan dituzten Zerbait behe-mailako eta elektronikoak.
Eta, beraz, hau da, berriro ere, hau abstrakzioa gaia,
non behin jartzean hasten zara ematen, OK, baina Nik deitu ez dago
Memoria fisikoa, Ados, behin kokapen fisikoa helbide bat dauka,
Ados, lortu nuen, adierazten ahal dut Helbide horiek geziak bezala
oso azkar hasteko nahi dute elkarrizketetan sofistikatuagoa
azken batean, badirudi ahalbidetuz gurekin Bilatzen bezalako arazoak konpontzeko
eta sailkatzeko modu eraginkorrean.
Eta gainerako ziurtaturik, too-- hau uste dudalako
da sakonena batzuk sartu ditugu desagertu horiek CS gaiak proper-- dut dugu
Egun bat eta erdi batean egiten honetan Azpimarratu zer normalean egiten liteke baino gehiago
zortzi asteko ikastaroa seihileko batean.
>> horiek edozein galdera?
No?
Ados.
Beno, zergatik ez dago pausatu dugu, hasteko lunch bat minutu batzuk goiz,
berrekiteko hasi besterik ordubete inguru?
Eta Dut linger galdera batekin pixka bat.
Ondoren, naiz joan behar joan hartu pare bat deiak hau da Ados.
musika batzuk dizut txanda, bien bitartean, baina lunch izkinan ingurukoa izan behar du.