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. 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.