[Musika jotzen] David J. MALAN: Eskubidea guztiak. Beraz, ongi etorria itzuli. CS50 hau da, eta ez da hiru aste bukaeran. Beraz, iraganeko hainbat astetan gogoratzen, gara, nahiko pixka bat igarotzeko C, programazio on, sintaxia denbora. Eta nahiko normala da, Oraindik bada Arazoa Ezarri 2, borrokan ari izan behar zure burua banging hormaren kontra. Críptica begira akats mezu da eta bugs duzula ezin nahiko atzetik behera. Delako, atseden ziurtatu, hori besterik Aste batzuk barru atzera begiratu beharko duzu on César bezalako gauzak, eta [? V-genair,?] agian crack, eta konturatzen besterik noraino etorri duzun denbora epe labur batean. Beraz, bada kontsolatu da, hor zintzilik oraingoz. Gaur egun, ordea, trantsizio hasiko dugu gauzak goi maila. Eta emandako hartzeko hasiko dugu you guys ezagutzen programa, edo gutxienez hasieratik du erosotasun-maila duten. Eta nola hasten dugu kontuan hartu behar dugu programak diseinatzeko gehiago joan eraginkortasunez. Nola optimizatu buruzko gaitezke Gure algoritmoen eraginkortasuna, eta oro har, konpontzeko interesgarri arazoak. Eta emandako hartzen hasita, nahi izan dugu, nahi badu, kodea sortu genezake edozein adibideak egin nahi dugu. Gaur egun, beraz, ez dugu ukitu teklatu kode edozein. Maila askoz ere handiagoa izango da egingo, eta azken finean, arazoak konpontzeko buruz. Beraz, puntu hori lortzeko, let me proposatzen honako zazpi duten laukizuzenak adierazten zazpi ate atzean eta, beraz, bere osotasunean mordo dira zenbakiak, horien artean, kopurua 50 da. Let me Hau proiektu honetako pantaila hemen bai. Proposatu eta behar dugun boluntario laguntzeko aurkitu me aurrean zenbaki bat internet hemen ikusi. Gora etorri, arrosa da. Guztiak eskubidea. Zein da zure izena? Jennifer: [INAUDIBLE] David J. MALAN: Barkatu? Jennifer: Jennifer. David J. MALAN: Jennifer. Ondo da, Jennifer. Niza zu ezagutzeaz. Goazen gora. Horiek, beraz, hemen zazpi ate daude, eta zer Gustatzen Gurekin nahi baduzu, hemen egin ditut, Zure ikaskideekin guztien aurrean, gaude kopurua, 50 da. Zenbaki bat aurkitzeko, begiratu dezakezu atzean ate horietako edozeinetan, besterik gabe sakatu ate bat da, eta bertan bere zenbakia agertuko dira. Eta ikus dezagun nola azkar gurekin aurkitu ahal zenbakia, 50. 15. 16. 50. Nicely done. Guztiak eskubidea. Jennifer txalo egiteko txanda. [Txaloak] Guztiak eskubidea. Beraz, zein izan zen zure estrategia zenbaki aurkitzeko, 50? Jennifer: Um, agian, bada, pentsatu nuen - [INAUDIBLE] David J. MALAN: Oh. Eman bigarrena. Beraz, izan zen zure estrategia zenbaki aurkitzeko, 50? Jennifer: Beraz hartan dut hasteko ikusi zer hasten lehen zenbakia izan zen, eta gero pentsatu nuen, agian bada ordenatuko ari dira, besterik ez dut gorde handiagorik sortu atea joka? David J. MALAN: OK. Eta topatu duela dirudi dugu kasuan hori izango da. Nahiz dezagun atzera azala geruza besterik pixka bat, eta joan nahi duzun Animatu eta agerian beste ateak aukeratu ahal izan duzu? Jennifer: Oh, maitea. David J. MALAN: Ah. Jennifer: Beraz, lortu nuen zortea. David J. MALAN: Beraz, zortea lortu duzu. Guztiak eskubidea. Beraz, ez da txarra. Baina hori interesgarria da ezagutzeko, ezta? Bere gain hartu baduzu, eta lortu egin duzu, hain zuzen ere, zortea pixka bat, besterik ez. Baina bere gain hartu dituzun zenbakiak zirela bada ordenatuko da, ezin zehatzagoa izango duzu nola eragin gisa zure portaera? Jennifer: Beraz, horrela antolatu ziren, I pentsatu agian handiena txikiena. David J. MALAN: OK. Jennifer: edo hau amaitu bada izateaz benetan handia, eta gero txikiena handiena. David J. MALAN: OK. Beraz, txikienetik handienera, edo txikienetik handienera. Baina utzi niri proposatu, demagun duzu izan ahaztuak unlucky, eta suposatzen dute ez ziren, hain zuzen ere, ordenatuta, zenbat ate horiek agian izan duzun peek duten kasuan txarrena atzean? Jennifer: horiek guztiak. David J. MALAN: horiek guztiak. Hargatik orokortu n bezala. Han gertatzen 7 izango da, baina egin dezagun gehiago Oro har, esan en n buruzko ateak pantaila hemen. Beraz, kasurik okerrenean ere, izango litzateke 7 ateak, edo n ateak atzean begiratu. Eta, beraz, hau da, benetan, pixka bat da Zorte gaur egun, baina benetan da lineala era algoritmo, nahiz duzu ziren inguruan saltatzen mota. Azoka hori? Jennifer: Bai. David J. MALAN: Beno, let me ikusi bada estrategia aldaketa mugitu dut digu bada Gure bigarren Adibidez hemen 7, hainbat ateak. Zenbakiek berdinak, baina hori denbora ordenatuko dira. Zein da zure estrategia hemen izango da, kanpo jarri zure gogoaren saiatzen zer beste zenbakiak izan ziren - Jennifer: OK. David J. MALAN: - lehenago? Jennifer: dezagun hasteko lehena izan da. David J. MALAN: Eskubidea guztiak. Lehen hasi. 4. Orain, nora joan nahi duzun, eta zergatik? Jennifer: 4 benetan txikiak. Hala bada, agian, txikiena ordenatu dira handienera, behar bi aldiz izan da, eta -. David J. MALAN: OK. Ikus dezagun, zein uste duzu? Jennifer: Saiatu azkena. Niza. David J. MALAN: Oso nicely done. Guztiak eskubidea. [Txaloak] David J. MALAN: OK. Beraz, benetan ari zaren egiten horribly, zeren zaren egiten oso ondo. Zein uzten ezin digu zenbait puntu. Beraz, atzera jaurti hemen saiatu horrek. Jennifer: OK. David J. MALAN: Oso ondo egiten da, hala ere. Beraz, hasi hasieran baduzu, zela 4, gero ikusi duzu amaierara mugitu. Baina demagun ez duzu lortu zortea ez dago, eta, demagun, 50 izan zen, nonbait. Zein da zure hirugarren urratsa izan da? Jennifer: Joan atzera hasieran. David J. MALAN: itzuli hasieratik. OK, beraz, ukitu dut litzateke ate honetan, hain zuzen, 8. Guztiak eskubidea. Beraz, hori ez da 50. Non litzateke begiratu duzu hurrengoa? Jennifer: nuen ez bada dakite antolatuta. David J. MALAN: zuzena. Beno, egin baduzu, badakizu ziren horrela antolatu - Jennifer: Oh, jakin zuen bai. David J. MALAN: -, baina ez zuen daki non 50 izan zen? Jennifer: Horretarako, mantendu egingo da. David J. MALAN: Eskubidea guztiak. Ados. Mantendu egingo da. Ados, lan egiten duten ahal dut. Jennifer: OK. David J. MALAN: orain, zaren besterik ez bada jarraitzea joan, zer da zure algoritmoa devolving babesaz sartu. Jennifer: lineala -. David J. MALAN: lineal mota da. Baina utzi niri proposatu, utzi jarri spot on me. Let orria freskatu dit. zenbaki bera, beraren antolamendua, bera ateak. Baina uste itzuli duten lehen egunean klase telefonoa liburu bat Tore dugu erdia, ordenatu, eta zer izan zen gure estrategia ez? Jennifer: erdian Hasi. David J. MALAN: OK. Beraz, erdiko hasiko da. Hargatik, aurrera eta hori simulatzeko. Erdian Hasi arabera atea dela agerian utziz. Zenbakia 16, beraz. Beraz, zer egingo indartsu zentzuduna egin dute, nor Tore telefono liburuaren erdia, hurrengo etxebizitza lortzeko? Jennifer: Zati hau joan. David J. MALAN: Eta zergatik eskuinera? Jennifer: ziren badute sort txikiena du handienera, eta, ondoren, 50 izan beharko luke bukaera hartan. David J. MALAN: Ongi. Guztiz arrazoizkoa. Beraz, telefono-liburu bat bezala, joan nahi duzun eskubide gisa ezkerreko aurka, baina hemen eramateko gakoa da. Kanpoan orain bota dezake, edo malko off, Arazo honen erdia, zuk utzi ez 7 ateak, baina benetan bakarrik 3. Hau da, gutxi gorabehera erdia Arazoaren tamaina. Guztiak eskubidea. Beraz, orain zer izan nahi duzu egiten joan ondoren? Jennifer: 16 Beraz, ez da oraindik nahiko txikiak, erlatiboa 50, eta, beraz, agian, saiatu dut, , atsegin dute hau. David J. MALAN: Eskubidea guztiak. 42. Guztiak eskubidea eta, beraz, orain, zer da zure sena diozu? Jennifer: bota dezaket hori, eta, ondoren, besterik ez - David J. MALAN: OK. Ona, bota dezakezu ezkerreko erdia ez. Jennifer: - hautatzeko hau. David J. MALAN: Eta eskubidea. Jennifer: Bai. David J. MALAN: Beraz, nahiz eta zaila da agian ikusteko, orduan bakarrik 7 ateak, pentsatu, orain, sendotasuna du algoritmoa aplikatu besterik ez duzu. Aurreko kasuan, zenuen lortzeko zortea izan zen handia. Baina erabili heuristiko bat egin duzu, Esango nuke. Zure instincts moduko erabiltzen duzu, eta , horrela antolatu da da nahiko galtzen jakitea hasieran txikiak, jakina, dugu got gehiago joateko eskubidea. Baina zentzu batean, zortea got you, agian hau kopurua 100 izan zen, zeren eta, eta, agian, 50 erdian gehiago izan zen. Agian, 50 izan zen, nahiz eta hemen. Baina, zer txiki bat egin duzu ezberdinean Garai honetan izan zen, eta gauza bera egin duzu behin eta berriro. Eta argudiatu nahi nuke zer duzun hori zuen, telefono bidez bada ere eragina liburua, adibidez, zerbait askoz gehiago algoritmikoak, eta askoz gutxiago berezi cased. Askoz gutxiago senezkoa. Beraz, egunaren amaieran, nola litzateke eraginkortasuna deskribatu duzu lehen bildu, non duzu joan Ezkerretik eskuinera, versus bigarren algoritmoa hemen? Jennifer: hori behar du, bezala, agian halve denbora, edo, are gehiago, bai. David J. MALAN: OK, agian, are gehiago. Bultza dezagun pixka bat hori gogorragoa da. Benetan, jarraituko dugu, hau bada logika, erdira murriztu da, zalantzarik dugu denbora exekutatzen bigarren algoritmoa bota erdia arabera zenbakiak, baina zer egin zuen hurrengo dugu iterazio denean, Jennifer agerian bigarren zenbakia? Ateak kopurua erdira murriztu dugu berriro. Eta gero, zer egin behar dugu horren ondoren, bada gehiago zegoen ateak jolastu? Horietako halve nahi dugu, eta, berriro ere, eta berriro, eta berriro. Eta hau besterik ez duzu guys bezala guztiak zutik, lehen aste honetan klasean eserita, baina zure erdia, erdiak behera eserita baduzu, baduzu erdia eserita, bat bakarti arte arima zen zutik. Eta esan du lasterketak, denbora hori dela, urrats kopurua hartu zen zer ordena on? HIZLARIA: 1 [INAUDIBLE] David J. MALAN: Beraz log oinarri-n 2, edo gehiago besterik ez, besterik gabe, n saioa. Beraz, zerbait logaritmikoa. Eta grafikoan ez zen lerro zuzen bat hori bakarrik got okerragoa eta okerragoa izan zen, interesgarri hau kurba hori ez da lortzeko hain txarra denboran zehar. Hargatik ideia hori mantendu. Dezagun eskerrak Jennifer. Eskerrik asko, beraz, datozen sortu askoz. Eta, bat sec. No mahaian lanparak, gaur egun, baina ez dute CS50 estresa pilotak. Jennifer: Yay. David J. MALAN: Ongi da, hemen. Eskerrik asko erori for estresa sortu hemen. Guztiak eskubidea. Beraz, ikus dezagun orain, ez dugu bada formalizatzeko honetan pixka bat gehiago. Beraz, berriro ere, zer egin besterik ez dugu izan zen funtsean, gauza bera egin dugu duten lehenengo astean. Baizik eta amaieran baino lineal batekin algoritmoa, eta horrek irudikatu dugu Aurretik honetan lerro zuzen gisa, Horren bidez, jarri dugun ate bat baino gehiago baldin pantailan, ondoren, Jennifer litzateke izan, begiratu potentzialki, ko atea gehiago atzean. Jarri dugu bi ateak bada, baliteke zuen atzean begiratu bi ateak. Eta, beraz, ez zen lineala honetan tamainaren arteko harremana , esan du, x-ardatzean arazoa, eta zenbat denbora hartzen du y sobre konpontzeko. Baina irudian nintzen alluding lehenago izan zen, berdea, lerro hau. Green nahita, zeren sentitu besterik ez da hobea. Teorian, algoritmoa, noiz egin dugu telefono-liburua da, noiz egin dugu zaudete, elkarri kontatuta, eta bigarren kasuan, noiz Jennifer besterik egin ezazu hemen, sort zen funtsean, hobeto. Izan zen ez delako, besterik gabe, bi aldiz azkarrago. Ez zen, nahiz eta lau aldiz azkar. Erabat zer menpe izan zen sarrera tamaina izan zen, baita zenbat urrats hartu du azken finean. Eta, beraz, hau ideia sinplea guztiak dugun hartu telefono-liburua da emandako, ahal izango dira, era berean, aplikatu honen antzeko zerbait. Eta hau gehiago kasualitatez izan liteke ezagutzen, zuk eginen lukeen bezala imajinatu, banatu eta konkistatzeko. Ez genuen bezala, jakina, telefono-liburua da. Baina pseudocode du, oroitzapen, hau izan zen. Beraz, ez dugu berriro, baina gogoratzen lehen aste hori, guztiok altxa eta gero erdia eseri, erdi eseri duzun erdia eseri. Hori zen algoritmo bat ezarri tranpa modu bat, apur bat, hori da, ez zen soilik dit bat kontatuta, funtsean, eraginkortasun handiagoz. Kasu horretan, aprobetxatuz nintzen Bigarren mailako baliabide bat. Ordena, PUZ bat baino gehiago, hainbat garunak, hainbat pertsona smart gela zituzten lortu zerbait from me laguntzen zerbait lineal logaritmikoa, zerbait tik zerbait berdea gorria. Baina kasu honetan, Jennifer, bakarrik ahal funtsean, haren hobetzeko Bere lehenengo algoritmoa errendimendua arabera, berriro ere, besterik gabe, apur bat gogorragoa pentsatzen. Eta orain, denbora ezartzea dator gauza horiek, eta, kalkulatzen zer kode lerro, hala nola idatzi dezakezu Horietako duzula errepikatu ahal izango da berriro, eta berriro, eta berriro, Sort begizta bat modan. Ari bazara, ez delako izan joan luxuzko, Jennifer lehen bezala egin zuten, eta besterik ez dute IFS sorta oso bat eta esan, hmm, lehenengo zenbaki hori 4 bada, utzi amaieran modu guztiak salto egin zidan. Ooh, kopuru hori handiegia bada, utzi inori itzuli ahal dit bigarren elementua. Aurkituko dela asko izango izango dituzu zailagoa formalizatzeko duguna gizakiak hartu oso moduzko gisa ematen heuristikoak, baina ordenagailu bat baino ez da zer esango egin egingo. Azken hau oso interesgarria inplikazioak. Grafiko hori sort ekarri zuen, ordenatzeko gaindituak izaten ikusmen, baina oharra, non grafikoa lerro zuzen bat da? Non Grafiko lineala da deitzen dugun n? Beno, Ordena da behealdera argazki hau, ezta? Guztiak egin dugu da Ordena dugu, beraz, zoom out X-ardatza eta y ardatzean, zer zentzu bat lortzen saiatzeko kurba mota batzuk itxura. Eta matematika espezifikotasuna esamoldeak, gaur egun, ez du axola, beraz, asko, baina konturatu ez dagoela asko da algoritmo hori askoz okerragoa baino zerbait da lineala. Izan ere, n cubed itxura nahiko txarra. 2-n itxura nahiko txarra. n karratu itxura nahiko txarra. Eta ikusiko dugu zer horietako batzuk agian, errealitatea gaur izango da. Eta egunkari-n ez da txarra sentitzen, baina n baino hobeto log oinarria 2 n da. Baina, badakizu, izan litzateke, nahiz gehiago amazing Jennifer, edo guk bada, lehen aste hori, etorri arte zerbait n log log da. Beraz, beste era batera esanda, ez da osoa, hau Posible irtenbide sorta arazoak, baina hemen, oharra zer gertatuko. Noiz zooma I, bihurgune horietako zein da absolutua izan behar du frogatzeko joan pantailan direnak txarrena orain? Beraz n cubed itxura polita une txarra. Txikiagotzeko, baina gero eta gehiago ikusten x eta y ardatzak, nor joan menderatzeko, azken finean? Beraz, benetan bihurtzen 2 que n, eta hori irudikatu besterik arabera batzuk, gero eta handietako plugging zenbakiak, eta ikusiko duzu 2 eta hori n, hain zuzen ere, askoz handiagoa lortzen azkarrago. Dugun mapan handiago bada, 2 bat n algoritmo erabat sucks. Hori hartzen joan nahi dut denbora pixka bat nahiko du Ordenagailua churn bidez. Baina, denboran zehar ikusiko dituzu, batez ere, etorkizunean arazo multzo batekin, eta are amaierako proiektuak, zure datuak multzo handi lortzen, ondo? Nahiz eta Facebook lehen bertsioan, lagunen kopurua, eta gisa erregistratutako erabiltzaile kopuru handiak lortu, telefono horren dezakezu ordenatzeko eta ezartzeko bilaketa lineala zerbait, edo oso errazak ordena baten bildu, gaur egun dugun bezala ikusiko. Gogorragoa pentsatzen hasi behar duzu eta arazo horiei buruzko gogorragoa da. Eta arazoak leku mota bezala Facebook, Google, Microsoft eta, eta beste batzuk lan da zehazki horiek datuak big galdera moduko moduko Gero eta gehiago dira egun hauetan. Guztiak eskubidea. Jennifer bigarren duten arrakasta, beraz, bildu, sinceramente, amazingly zuen bai, lehen aldiz, baina ez dezagun idazteko zorte jo dugu, beraz, Puntu honetan egin daitezke. Bigarren kasuan, bat leveraged zuen algoritmoa, eta berriro errepikatzen berriro, baina emandako hartu zuen zenbait suposamendu onartzen dugun bere, baina xehetasun batzuk ustiatu zuen bigarren aldiz egin zuen berak ez dute lehen aldiz. Izan zen, eta zer? Zerrenda zela antolatuta. Beraz, ahalik eta azkarren zerrenda zen horrela antolatu dugu, erreklamatzeko Jennifer zela gai egin funtsean, hobeto. 7 ateak, bai, ez da interesgarria dela, baina demagun 7 milioi ateak gaude. N erregistroa behin betiko joan askoz egiteko epe luzera azkarrago. Baina eduki behar izan zuen ateak bere antolatuta. Orain, hori egiteko askatasuna hartu nuen ordenagailuko pantailan aldez aurretik hemen, baina suposatzen duten Jennifer behar izan zuen bere burua egin? Demagun galdera ateak duten irudikatzen datu-base bat, edo edozein Facebook lagunekin izena eman, edo Interneten web orriak edozein hainbat webgune agian behar Aurkibidera edo gehiagoko bilaketa. Demagun besterik ez duzu izan datu gordinen bat ezarri eta hura izan zen, ezkerrera, edo Jennifer ordenatzeko horretarako? Dagoela, baizik eta, eskatzen dugu erantzun galdera egiten du, bai, zenbat denbora hartu litzateke Jennifer, edo are me, zenbaki horiek ordenatzeko, aldez aurretik, beraz, abantaila hartu ahal izan zuen hori? Eskuin? Inplikazioa, jakina delako da, hartzen du me bada, berriz, nahiko ordenatzeko zenbakiak, nor demontre zaintzen duzula 50 bezalako zenbaki bat aurki daiteke, beraz, azkar, Jennifer en kasuan, balitz bezala dugu baino gehiago larritu denbora osoaren zenbatekoa hartu gauzak ordenatzeko aldez aurretik eginda? Hargatik ikusi ahal izango dugu, ez bada margotu, argazkia hemen. Osotasunean mordo bat gehiago estresa daukat pilotak, laguntzen bada apurtu izotz hemen. Litzateke, eta ez baduzu burura, dugu behar zazpi boluntario - , Ados. Wow. Beraz, ez dugu pasatzeko lanparak mahaian eta, dirudienez. Guztiak eskubidea. Beraz, nola buruz aurrean bi. Nola buruz bi itzuli guys. Beraz, lau da. Nola buruz aurrean bost, sei eta zazpi. Bertan. Zure lagunaren duzu seinalatuz out, beraz, saria jasoko dituzu. Guztiak eskubidea. Goazen gora. Eta zergatik ez duzu egin behar dugu Zuek hemen baino gehiago etorri dira. Emateko zenbaki bakoitzean noa. Eta aurrera eta zuek antolatu berdin da zer pantaila irudikatuta. [VOICES INTERPOSING] David J. MALAN: Objektuei Begirako Programazio, barkatu. Bug. Guztiak eskubidea. Beno, hemen goaz. Zenbakia bost. Sei zenbakia. Bat, bi, hiru, lau, bost, sei, zazpi. Oh, hau da, baldar. HIZLARIA 2: dut get -. David J. MALAN: Good aurre. Guztiak eskubidea. Eskerrik asko parte hartzeagatik. [Txaloak] Ados. Guztiak eskubidea. Beraz, lau, bi, sei ditugu, bat, hiru, zazpi, bost. Ezin hobea dugu, beraz, zazpi boluntario hemen nor zabalera behar berdina array ari gara jolasten lehenago ere. Eta zazpi aukeratu nuen arrazoiak direla eta hori izango da, besterik gabe, pixka batean erosoa. Eta lehen proposatzen dut hori zazpi boluntario hauek sailkatuko ditugu. , Nahi baduzu, lehenengo, kaixo esan arren. Hori izan baita joan baldar minutu batzuk. Sar zaitezte. GRACE: Kaixo, Grace naiz. Leverett House sophomore bat naiz. BRANSON: Hi. Branson naiz. Weld en FRESHMAN bat naiz. Gabe: Hi. Gabe naiz. Cabot en junior bat naiz. NEIL: Neil naiz. Matthews en FRESHMAN bat naiz. JASON: Jason naiz. GREENOUGH en FRESHMAN bat naiz. MIKE: Mike naiz. Grays en FRESHMAN bat naiz. Jess: Jess naiz. Leverett en sophomore bat naiz. David J. MALAN: Bikain. Guztiak eskubidea. Beno, eskerrik asko gure guztiak boluntarioak hemen, beraz, oso urrun. Eta eskuan erronka orain joan to guys horiek ordenatzeko izan nahi du, baina gero, apur bat pentsatu behar izan behar dugu nola eraginkortasunez dugu benetan gogorra buruz ordenatuko horiek. Hargatik, lehen saiatu honetan. Zaudete elkar zenbakiak ikus daiteke besterik txoko inguruan kokatuz. Anima zaitez eta segundo batzuk hartu, eta sort txikiena saihesteko zuek handienera Ezkerretik eskuinera gainean. Joan. Ados. Good. Benetan darn azkarra izan zen. Orain norbaitek hemen, zer zen algoritmoa guys horiek aplikatu? HIZLARIA: 1 Gutxien handiena. David J. MALAN: OK. Handiena izan behar da, gutxienez, benetan du ordenatzeko helburua, baina ez dakit ziur hori Benetan algoritmo bat. Ra handiena behintzat ez du esan me-urratsez urrats zer egin. Bai? HIZLARIA: 1 [INAUDIBLE] David J. MALAN: OK. Beraz, pertsona bat baino txikiagoa da, ikusiko duzu zure zenbakia eta, ondoren, mugitu Horietako eskubidea. Beraz, orain gehiago adierazkorra lortzean, gehiago algoritmo bat bezala, duzulako , bada, esan daiteke orduan. Beraz, nolabaiteko dugu baldintzapeko eraikuntza. Eta mutil hauek zirudien duela gutxi egin aldiz, batzuk mugitu pixka bat delako distantzia bat. Beraz, ez zen zentzuzkoa nolabaiteko gertatzen beren adimenak begizta. Baina hori formalizatzeko saiatu horrek. You guys itzuli berrezarri balute antolaerari honetan. Ea ez badugu, hau formalizatzeko apur bat, eta, ondoren, eskatu galdera, besterik nola eraginkorra da hau? Jakina, hori egin dugu, poliki-poliki, gisa onak sentitu behar da joan algoritmo bat da, baina ikus dezagun dugu, ahal bada jarri gure behatzak urrats zehatzak dira. Beraz, bi mutil eta bi lau dira. Edo zuzena edo okerra ordena? Jakina, okerra da. Horregatik, trukatu. Orain alde batera eraman nahi dut hemen, eta esan, lau edo sei. Zara zuzena edo okerra da? Gabe: zuzena. David J. MALAN: zuzena. Sei eta bat? Laguia. Trukatu. Beraz, bi trukeak da. Sei eta hiru? Laguia. Trukatu. Sei eta zazpi? Itxura ona. Zazpi eta bost? Jess: [INAUDIBLE] David J. MALAN: OK, trukatzeko. Eta sailkatuko da. Guztiak eskubidea. Beraz, jakina, ez da, ezta? Beraz, ez zen gehiago joan. Baina, hain zuzen ere, mutil hauek, nahiz besterik senari. mantendu mugitzen. Ez zuten, besterik gabe, gelditu, behin zuzendu ko arazoa. Beraz. Izan ere, behar dut gauza bera egiten du. To atzeratzeko atzera ordenatzeko izan dut arazo honen hasieran, edo array honen hasieran pertsona, dezagun hasteko horiek deituz. Eta orain zer egin behar dut nire algoritmoa bigarren mendatea izango da? HIZLARIA: 1 gauza bera. David J. MALAN: gauza bera. Eta hau, nahi eskuinera hasten naiz? Bezain laster aurkituko zeuk egiten dezakezu gauza bera behin eta berriro, hori gehiago algoritmo bat bezala ari da, eta gutxiago, giza sena. Beraz, orain, hemen ere joaten gara. Bi eta lau? N º Lau eta bat? Ah, ez zen hain zuzen ere, zenbait oraindik ere lan egin behar da. Eta hiru? Good. Lau eta sei? Sei eta bost? Sei eta zazpi? Ados, orain, egin. Ados, ez. Atzera joan behar dut. Beraz, orain, berriz ere, hau ari gara egiten apur bat gehiago nahita. Eta, gaur egun, ez dago bat besterik ez da, garuneko algoritmo hau exekutatzen. Ko CPU, duzu bada. Eta sinceramente, bakarrik baliabidea da sarbidea izan nahi dugu. Eta behin itzuli egin teklatua C, eta antzeko zerbait gure etxean eskura, bakarrik ari gara programa bat idaztea duten gauza bat egin daiteke aldi berean. , Berriz, mutil hauek une bat lehenago, dugu leveraged haien taldeko brainpower you guys aste zero egin zuen bezala. Hargatik mantendu egiten. Bi eta bat. Bi eta hiru. Hiru eta lau. Lau eta bost. Bost eta sei. Sei eta zazpi. Egin? Beraz, naiz, baina utzi niri play diablo en defendatzaile. Egiten dut, ordenagailu moduko duten besterik egindako pase bat array honen bidez pertsona, ezagutzen dut hori egiten ari naiz? HIZLARIA 1: n º David J. MALAN: Beraz, zergatik? Zer egin behar dut ahal izateko Amaitzeko erabakigarrian I am egiten? Seguruenik, bat gehiago pass. Eskuin? Guztiak ezagutzeko, aurreko horretatik dudalako pass da zuzendu ditudan akats bat. Eta esan nahi du, agian ez da oraindik akats beste behar dut zuzendu. Beraz, besterik ezin dut ziurtatu errebobinagarriaren, eta Ondoren, egiaztapena bat, bi, bi eta hiru, hiru eta lau, lau eta bost, bost eta sei, sei eta zazpi. Ados, gaur egun, ez da lan egin nuen. Zalantzarik gabe, ezin dut gogoratu egiten dut ez aldagai bat bezalako zerbait lan, gustatzen int bat. Deitu trukeak, eta trukeak I once 0 bada Hemen, eta 0 hasi zuen eta, ondoren, Besterik ez nuke izango ergelak jarraitzea atzera eta aurrera, berriro egiaztatuz, eta berriro, eta berriro, ezta? You get batzuetan delako trabatuta begizta infinitu mota. Beraz, ahalik eta azkarren ez da 0 trukeak, hori erreklamatu ahal izango dugu algoritmo osoa da, hain zuzen. Orain, jarri izen bat du. Algoritmoa proposatzen dut, besterik ez dugu inplementatu zerbait deitzen da burbuila ordenatu, esate baterako, ezaguna da, zentzu batean zenbakiak handiagoak dira mota burbuila beren bidea sortu goian, edo sortu Zenbakiak array amaieran. Baina, nola eraginkorra izan da algoritmo hau? Zenbat urrats izan zuen fisikoki dut hartu, adibidez, horiek ordenatzeko zazpi gizakiak? Lau edo bost? Ados, gehiegi da, azken finean, erantzuna izango. Baina orduan ere, partida kopurua ez da hain interesgarria. Dezagun orokortu da n. Beraz, bada jendea nuen n hemen, eta izan dira, ordenatu, eta hartan ausazko ordenean hasieran, jatorrizko ordena. Beno, zenbat urrats nuen , lehen pass hartu? Bat, bi, hiru, lau, bost bat izan zen, sei, zazpi pertsona ari dira, beraz, hori zazpi, sei -, hori da, beraz, n ken bat lehen aldiz harmailak. Orain, zenbat urrats nuen nuenean rewound hartzeko? Beno, egia esan genezake bikoiztu bada nahi izan dugu, baina, oraingoz, naiz besterik gabe, esan ondo joan, n beste ken 1. Beraz, n ken 1 iritsi da joan gogaikarriak segimendua egiteko, eta, beraz dezagun besterik biribiltzeko apur bat gora. Beraz, urrats 2n. Beraz, 14 urrats, eman edo hartu. Zenbat aldiz ez dut hartu urrats bat datorren denbora? Beno, 3n da. benetan. Eta orain, txarrena kasuan, for Adibidez, zenbat aldiz nukeen desagertu atzera eta aurrera, atzera eta aurrera, algoritmo hau exekutatzen, trukea pass bakoitzean pertsona, gutxi gorabehera? Honez benetan n karratu, ezta? Txarrena kasuan, mota dezakezu delako honi buruz intuizioa uste du, nahiz eta pixka bat igaro daiteke hura denbora sartu hondoratzea pixka Txarrena kasuan, zer litzateke horiek zazpi pertsona bezala begiratu, eta antolamendua, termino beren zenbakien? Erabat atzeraka egin, ezta? Eta hori bakarrik simulatzeko, Zein da zure izena berriro? MIKE: Mike. David J. MALAN: Mike? Ados, Mike, egin dezake besterik ez duzu me baino gehiago Hemen, besterik gabe, bigarren bat? Egia esan, ez. Sentitzen Mike dezagun atzeratzeko. Zein da zure izena berriro? NEIL: Neil. David J. MALAN: Neil. Ados, Neil, etorri zaren duzunean, niri ez bada axola. Beraz, proposatzen dut, soilik Erraza, Neil hori da orain bere txarrena balizko kasu. Baina gogoratzen dut nola inplementatu nire algoritmoa. , Naiz alderatuz alderatuz, alderatuz, , alderatuz alderatuz, Oh. Orain mutil hauek dira ordena, beraz, konpondu dut. Beraz, you guys trukatzeko. Baina kontuan hartu, orain, zenbat urrunago Neil ez dute joan? Orain gutxi gorabehera n. Badakizu, ez da benetan n. Bezala, n ken 1 da, baina lortzean dut Haserretu mantenduz gutxi pista zenbakia da, eta, beraz dezagun besterik deitu n. Beraz, bada, Neil urrats bat Gehienez bakoitzean mugitzen denbora, eta Neil urrats bat mugitu, Benetan lapurtera pass honetan egin behar dut atzera eta aurrera, hau da, gutxi gorabehera Horretarako, urrats n, n, aldiz, guztira, da hartu me delako joan askotan urrats hori Neil guztiak lortzeko non pertenece zuen bidea. Utzi bakarrik Besteek you guys bada ziren guztiak mis-agindu baita. Hargatik deitu burbuila ordenatu n karratu. Algoritmo honen iraupena du, algoritmo honen errendimendua da, algoritmo honen eraginkortasuna, besterik ez ditugu deskribatuko gehiago oro har, gisa n karratu. Zein atsegina da, ezin dut egin delako Zortzi pertsona, bederatzi adibide bera pertsona, milioi bat pertsona, eta hori Galdera ez da aldatu egingo da. Beraz, you guys ez balu gogora dezagun berrezarri, non hasi. Eta saia gaitezen beste bi ikuspegi eta ikusiko dugu ez bada egin, funtsean, hau baino hobea da. Une honetan, beraz, proposatzen dut algoritmo ezberdinak moduko bat. Hori izan zen, oso gurekin clever azken aldiz, eta you guys ziren eskubidea dute soilik mota senak eskubidea pairwise trukea ere. Baina benetan nahi nuen bada hurbiltzeko besterik gabe, eta nire helburua da mugitu txiki zenbakiak guztiak modu honetan, eta bultza zenbakiak handi hori guztia Horrela, zergatik ez dut hori en gehien inozoa modu ahalik eta ikusten dut bada zuena baino hobea egin dezake nahiko konplexua da algoritmoa? Beraz, ikus dezagun. Lau nahiko kopuru txiki bat da, eta, beraz, naiz duzu uzteko momentu joan. Ooh, kopurua bi da, are hobea. Ahal izateko urratsa besterik ez duzu aurrerantz momentu bat? Hau da, gaur egun, nire txikiena zenbakitua hautagaiak, eta gogoratzen dut , bezala, aldagai bat. Baina egiaztapena mantentzeko noa. Ba al dago norbait, zeinen kopurua txikiagoa da? Sei, ez. Oh, ez dago Neil da berriro. Beraz push itzuli naiz sort kontzeptuala da. Neil aurrera etorriko da. Eta orain, aldagai dut erabiltzen mantentzen duen txikiena pista zenbakia da eguneratu eduki Neil en kokapena. Beno, ikus dezagun. Hiru, zazpi, bost. Ados, Neil txikiena zen ezagutzen dut. Zer gauza errazena da niretzat orain zer egin? Ez dut nire denbora alferrik galdu besterik by joan Neil toki bubbling ezkerrera. Zergatik ez jarri dut Neil bertan batena da, eta hori da, noski, non? Hasieran modu guztiak. Neil Beraz, nirekin etorri. Eta zer da zure izena berriro? GRACE: Grace. David J. MALAN: Grace. Ados. Grace, beraz, zoritxarrez, zauden modu mota. Beraz, nola ez, arazo hau konpondu dugu? Eskuin? Hau array bat bada, ez da zazpi kokapenak. Gogoratzen du, Rob batera, hitz egin dugu Adin geratuko da, eta besterik ez dugu Adin kopurua finitua? Ideia bera hemen. Besterik ez dugu ints kopuru finitu bat. Grace da mota horretako gure Horrela, beraz, ez dugu nola konpondu? Modu errazena da, Grace, barkatu. Joan baino gehiago behar izango duzu ez dago, beraz, gelan egin ahal izango dugu. Orain, horri buruz uste baduzu, agian egin besterik ez dugu arazoa okerragoa. Eta, agian, egin dugu zer galtzen delako Grace leku egokian ziren? Baina ez zuen, izan ere, badakigu bestela, izan dira zuen litzateke aurrera zutik ordez Une honetan, Neil, ezta? Hautatuta jada bere zenbakia. Guztiak eskubidea. Beraz, orain, Neil leku egokian dago, eta Optimizazioa apur bat egin ahal izango dut. Hurrengo minutu batez, eta alde batetara utzi dut Neil guztiak elkarrekin, beraz, ez da alferrik galdu bere denbora, edo nahi gabe aldatu zion okerreko tokira. Beraz, orain, nola ondoan aurkitu dut elementu hori da txikiena? Bi. Hori nahiko ona zenbaki bat da, bada, aurrera pausoa, eta nahi duzun Gogoratzen dut. Sei, ona ez. Lau, hiru, zazpi, bost, ona ez. Beraz, egin iezadazue mugitzeko duzu zure leku egokian. Eta lortu dugu zortea une honetan. Orain, horiek alde batetara utzi dut bi mutilak, eta orain beste bat gehiago hau pasatzen. Sei, bat nahiko txikiak kopurua. Goazen aurrera. Oh, barkatu. Grace-ren zenbakia da hobea, beraz urratsa aurrera. Lau. Sentitzen dut, Grace. Joan atzera berriro. Kopurua hiru hobea da. Zazpi. Bost. Eta orain, zer da zure izena berriro? JASON: Jason. David J. MALAN: Jason. Beraz, gaur egun, Jason txikiena elementu hautatu dut. Nora joan da joan zen? Beraz, sei dira. Eta zure izena berriro? Gabe: gabea. David J. MALAN: gabea. Gabe bidean da. Zer da errazena egin behar da? Trukatu bi mutil hauek eta jarraitu. Orain ikus dezagun. Txikiena Nor da? Lau. Let me besterik Cheat mota. Bost da txikiena izango da. Ondoan aurkitu nuen, urrats nahi baduzu aurrera, zer egin behar dut mutil hauek, Gabe batekin? Trukatu berriro. Beraz, gaur egun, oraindik ere pixka bat ordena daudelarik. Gabe txikiena izan nahi du, beraz, aurkitu dut Zion pop dut, mugitu mutilak baino. Eta egin. Beraz, erantzuna bera da. Azken emaitza berdina da. Bi algoritmo horietako zein hobea da? Bigarrena, entzun dut. Zergatik? HIZLARIA: 3 urrats da n [INAUDIBLE]. David J. MALAN: gehienez urrats n da. Interesgarria da. Beraz, ez da hala ere? Beraz, nola aurkitu dut elementu txikiena? Zenbat urrats zuten hartu behar dut aurkituko txikiena elementua? Bat izan nuen begiratzeko modu guztiak amaieran, ezta? Duten txarrena kasuan, zer delako Neil ziren bada hemen? Beraz, txikiena elementu aurkitzeko hartzen du me n urratsak, edo n ken 1. Baina, OK. Beraz, konpondu Neil. Gogoan izan, minutu bat edo, beraz, duela. Baina, nola egin zuen hurrengo aurkitu dut elementu txikiena? N ken 1, n edo ken 2 Benetan, urratsez urrats aurrera. Beraz, OK. Beraz nuen 2 ken n. Guztiak eskubidea. Beraz, sentitzen pixka bat hobeto. Guztiak eskubidea. Zenbat hurrengo urratsak kopurua hiru aurkitzea? N ken beraz, 4. Beraz, da jaitsiz bat gutxiago iterazio bakoitzean zapaldu. Beraz, horrek ez du sentitzen hobea, ezta? Azken aldiz bada, gutxi gorabehera zen n aldiz n, Une honetan, n ken 1, gehi n ken da 2, gehi n 3 kenduta, gehi n ken 4, dot, dot, dot. Baina zure Batxilergoko duzun gogoratzen bada testu-liburuak, gutxi Cheat du itzuli duen formula at orria, bada gehitu duzun zenbaki sorta honetan, zer urratsen kopuru osoa da hartu dut hemen izango? Hau horietako bat, adibidez, n ken da 1, aldiz n, 2 arabera banatuta. Beraz, ezin dut tira ikusteko me besterik gabe, une honetan sortu. Eta berriz, biribilketak nolabaiteko naiz zenbakiak, besterik gabe, gure bizitza simple mantentzeko, baina gogoratzen dudan bezala, bada, horrelako zerbait da N ken 1 gauza egin nituen, eta gero n ken 2, orduan n ken 3, gutxi gorabehera da honen antzeko zerbait 2 baino gehiago, eta badut biderkatu hau, hori benetan n plaza. Hori ez da oso ondo sentitu naiz. n ken 2 baino gehiagoko n. Baina hemen gauza da. Informatika, arazoak en hasteko interesgarria iritsi denean, n lortzen benetan handia. Eta noiz n lortzen benetan handia da, eta horietatik balore horiek guztiak menderatzeko joan besteen? N karratu moduko bat da, ezta? Bai, 2 zatituko da nahiko ona. Baina zaren bilioika buruz hitz egiten badugu datu zuzenak, edo trillions de datu zuzenak, OK, beraz, bi aldiz azkar zaren. Baina benetan kopuru handia bada zaintzen, faktorea, hau da, zer lortzen bada handiagoa eta handiagoa da. Eta ziur aski, gehiago egiten du Guy hau baino diferentzia. Beraz, nahiz eta you guys dira eskubira, bigarren bildu, deitu dugu aukeraketa, ordenatu, hau da, mundu errealean, bat bit azkarrago potentzialki, I am delako hartuta gutxiago eta gutxiago aldi bakoitzean urratsak. Ez da benetan, funtsean, azkarrago. Benetan dugu play bada, hori delako handi n balioak, amaitzen du eguna, nahikoa handia n, oraindik nahiko motela sentitzen du. Beno, goazen bat hartu dit hartan pass a. Horixe deitu nuke aukeraketa ordenatu. Ezin duzu guys berrezarri zuek ko azken aldiz? Eta azken kasu horretan, joan naiz Zerbait proposatu nahi izeneko txertatzeko ordenatu. Txertatzeko ordenatu izanik, kontzeptualki, pixka bat desberdina da. Baino, atzera eta aurrera joan eta txikiena elementu hautatzen, naiz besterik gabe, horietako bakoitzean aurre joan guys aurkituko jo ditut, eta sartu haien leku egokian sartu. Beraz, besterik ez naiz Grace hasiko da egingo, eta esan zuen kopurua lau ikusten dut. Non kopurua lau sartzen ez? Ez dut ezer egiten hasi ordenatzeko, beraz, Grace lortzen du bertan lo. Eta orain aldarrikatzen dut, duzu, ahal izango banu hartu urrats bat da zure eskubidea, hau nire ordenatuko da zerrenda, hau da, nire Sailkatu gainerako zerrenda. Beraz, orain hurrengo jarraitu nahi dut, eta zein den zure izena berriro? BRANSON: Branson. David J. MALAN: Branson. Beraz, bi Branson zenbakia da. Beraz, hartu dut momentu bat da. Eta orain, non ez zurea array honetan? Beraz, Grace eskubidea. Beraz, berriro ere, egiteko moduko gara Grazia egin lan asko hemen. Non jarri dugu? Beraz, irristatu egin nahi dugu utzi, eta Branson sartu ez. Baina orain aldarrikatzen duten you guys egiten dira. Baina abisua, ez dut tarte bat erabiliz. Oraindik 2 elementu Hemen, hemen, 5. Guztira 7 array tamaina da, beraz, naiz ez, iruzurra eskubidea? Beraz, orain, gure Gabe batera hemen, sei, non ez zurea? Zorioneko lortu duzu berriro. Beraz, bertan lo egin duzu. Just hartzeko eskubidea urrats txiki bat besterik gabe, argi utzi nahi duzula ari antolatuta. Eta orain, Neil dugu berriro ere, zenbaki bat, nora joan? Eta gaur egun, non hasten dela ikusiko dugu algoritmo hau da, nahiz eta lehen begirada, sentitzen da nahiko smart, ikusi zer gertatuko da. Aurrera Urrats balute. Non Neil jarri nahi dugu? Beraz, jakina, hemen, beraz, nola Neil ez gara ez? Egin dezagun urratsa-urrats. Gabe, nora joan behar duzu? Bai, beraz, hartu urrats handi bat, edo bi erdi-urratsak egin ko han urratsa. Grace, non duzu joan? Good. Beste urrats bat, beraz. Eta, azkenik, Branson? Beste urrats bat. Eta orain, Neil jarri ahal izango dugu bere lekuan. Beraz, orain, jarraituko logika hori. Nahiz eta ez gara Neil aldatzearen baino gehiago, eta gehiago, eta, hura baino gehiago jarri non, doa zuen kasurik okerrenean ere, hurrengo zenbakia aurki ditzake genezake zenbakia izan behar du, hots, ez zen zenbaki bat zero, orduan guztien mugitzeko goaz mutil hauek. Demagun ez dagoela zenbaki bat, negatiboa da bat da, eta, ondoren, mugitu behar dugu guys horiek guztiak. Beraz, benetan gara besterik iraultzeko mota arazoaren inguruan, hala nola gara kontura transferitzea batetik hautaketa-prozesuan txertatzeko, beraz, prozesua, hala nola guys duzu, besterik gabe, izan gutxi gorabehera n ken zerbait mugitu urrats kopurua. Eta urratsen kopuru hori bakarrik joan aukeratu dut gehiago zenbakiak handitzeko, daukat zaudete shoving gorde nahi baldin baduzu atzera, eta atzera, eta itzuli. Beraz, triste, orain gauza horiek guztiak algoritmoak n karratu dira. Goazen aurrera eta horiei esker mutilak, eta ikusi eta pixka bat horien ezberdinean. Oso ondo egin. [Txaloak] Guztiak eskubidea. Bertan, joan zaitezke. Esker - BRANSON: [INAUDIBLE] mantentzeko zenbakiak. David J. MALAN: Ez, baliteke mantentzeko zenbakiak baita. Guztiak eskubidea. Nicely done. Guztiak eskubidea. Beraz, ikus dezagun, ezin dugu galtzen orain laburtzeko azkar, eta gehiago ikusmen, zehazki zer gertatu Hona hemen. Aurrera noa eta tira sortu Firefox. Manifestazio hau lotu dugu Ikastaro-en web orrian. Java eta pixka bat gogaikarriak get lanean nabigatzaile batzuek egun horietan. Beraz, bada, honekin ez duzu play etxean, konturatu behar Firefox erabil dezakezu Martxan da. Eta zer egin honekin egin dut manifestazio hau da. Behealdean, sorta oso bat izango dut menu aukerak, besteak beste hasiera bat eta Gelditu botoia. Era berean, alde batera utzita ere, ez dirudi bat izan nahi programa horiek akats, horregatik duzu ezin benetan ikusten hasi edo gelditu Komandoa ez bada behintzat botoia edo Alt mantendu behar plus eta zoom, zein bitxiki erakusten botoi gehiago. Beraz, FYI play baduzu honekin etxean. Orain Start sakatu besterik batean noa Oraingoz, atzerapen baten ondoren zehaztuz, bezala, 200 milisegundotan Hemen, besterik gabe, beraz, zer gertatzen den ikusi ahal izango dugu. Beraz, hori bisualizatzeko da aldarrikatzen dut lehenengo algoritmoa du mutil hauek egin, burbuila ordenatu, zeinaren pertsona pare-jakintsua trukatu ditugu. To bistaratzea, hau ulertzeko gakoa tabernak altuera dela zenbakia tamaina adierazten du. Du taller barra Beraz, handiagoa den zenbakia. Shorter barra, txikiagoa den zenbakia. Eta nabarituko baduzu, bidez goaz algoritmoaren iterazio honetako lehen, handiak eta txikiak zenbakiak aldaketa, beraz, kopuru txiki dator lehenengo eta big zenbakia eskuinera doa. Eta bezain laster lortuko dugu array amaieran zazpi baino askoz gehiago zenbakien, gara itzuli hasierara joan. Aurrea hartu eta honek. Urrun ezkerrean, little guy hori joan ra aldean aldatu, eta hau prozesua errepikatu. Orain bistaratzea, hau azkar lortzen aspergarria da, beraz, aurrera me eta gelditzeko aldatu da, atzerapena zerbait askoz azkarrago orain lortzeko, ukitu bat algoritmo hau. Beraz, nahiz eta sped dut sortu, hau da, nire prozesadore berritzea, erosi bezala Ordenagailu berri bat. Ez dut nire funtsean aldatu bildu, baina, egia esan, ezin duzu ikusi gehiago argi eta garbi, gizakiak baino, hori handia zenbakiak sortu bubbling goian, eta txikiak, zenbakiak dira bubbling behera behean. Eta orain, gauza hori hemen antolatuta. Eta alde batera bezala, plazak, berriz, ez da besterik ez dago kontabilitatea batzuk laguntzeko zenbat konparazioak zenbatu dituzu, edo zenbat trukeak dute benetan egin. Beno, goazen saiatu bat besteek ikusi genituen. Let klik burbuila sort on me hemen, eta let me aukeratu, eta hori, oro har, web orria buggy txiki bat da. Dezagun onartzeko arriskua eta exekutatu berriro. Ez dago goaz. Hargatik egin aukeraketa ordenatu. Ez dakit zergatik menua hor agertzen da. Dezagun zoom hori konpontzen hasi bug, aldatu hau 50. Ah, dezagun benetan egiten askoz azkarragoa dela. Bost milisegundotan edo, beraz, eta hasi. Beraz, hau da, hautaketa ordenatu. Beraz, berriro ere, zer pentsatzen dugun gizakiak sortu hemen egin. Joan array zeharkatuko dugu eta aukeratutako txikiena elementu berriro, eta berriro, eta berriro. Gaur egun, oraindik ere, hori ez zen nahiko txarra aldarrikatzen dut. Izan zen oraindik n karratu, eman edo hartu, baina, izan zen mundu errealean, apur bat azkarragoa izan zen, hain zuzen ere, I delako hartuz zertxobait gutxiago urrats bakoitzean. Baina soilik ari gara hitz egiten, eta zer? Beharbada, beraz, 40 edo taberna hemen? Ez dugu 40 milioi hitz egiten. Beraz, ez da erabat argi me izan zen, hain zuzen ere, esanguratsua irabazia. Let me joan atzera eta gure aldatzea Hirugarren algoritmoa izan zen, hautatu txertatzeko ordenatu. Eta orain, benetan buggy da delako menua benetan ez luke behera dago. Beraz, orain atzera korritu dugu hemen eta hasi algoritmo hau. Whoop, hasteko eta gelditzeko. Beraz, hau da, mota nahiko eredu bat dauka da, beraz, berriro ere gaude gizakiak, txertatzean edo Kasu honetan, taberna sartu egokiak beren kokapena. Eta hori dagoeneko egin aurretik Inguruan aktibatuta dut. Baina honetan ere, teorian, dago oraindik n karratu. Beraz, ikus dezagun, ezin dugu bada laburtzeko horiek honela. Aurrera joan eta besterik gabe eman dut Gurekin hitz egiteko modu bat, komuna moduko gauza horiei buruz, let me sartzea bat besterik ez idazkera pixka hemen. Izeneko zerbait big ikusteko buruz zara O da, literalki delako handi bat O. Eta hau horrela ordenagailu bat da zientzialaria edo matematikaria nahiz eta erabiltzen exekutatzen denbora deskribatzeko algoritmo batzuk. Zenbat urrats hartu du benetan? Orain neure burua embarrass batera noa nire idazkera Hemen, besterik gabe, une batean. Baina aurrera zidan eta esan O handi hau izango da hemen. Eta utzi beste bat aurkezten me ikurra, kapital omega bat. Omega da kontrakoa izango da, funtsean, big big O berriz O. du bidez, kasurik okerrenean ere, zenbat denbora baliteke algoritmo batzuk hartu, eta n dagokionez, omega da joan izan zenbat denbora zitekeen onena kasuan hartu. Eta zer esan nahi dugu by dugu onena momentu bat besterik ez da kasua. Hargatik hasteko zerbait simple. Hasiko lineal bilaketa me. Beraz, ez da ordenatzeko. Lineal bilaketa hau deitu dugu. Eta orain, pixka bat egiteko taula honetan ere. Eta orain, bilaketa lineal kasuan, txarrena kasuan, zenbat urrats da joan me hartzeko bat aurkitu du aukeraketa arbitrarioa kopurua? Eta ez da n osoaren ateak edo n zenbakiak guztira. Kasurik okerrenean. Zenbat urrats naiz joan behar dut hartzeko kopurua 50 aurkitu array batean n ateak? Eta zergatik? Guztiak izan leza amaiera aldera gorako bidea. Hainbeste atsegin Jennifer aurkitu du kopurua 50 izan zen, bide osoan zehar, eta beraz, kasurik okerrenean lineal bilaketa da big n O, esan dugu. Zer da onena buruzko kasu, lortu baduzu benetan zortea? Besterik ez da, urrats bat hartzen joan, edo urratsen kopurua konstante bat da. Beraz, hori deskribatzeko dugu 1. Beraz, hau da, nahiko ona. Orain zer egin dugu, zerbait bada gustatzen bilaketa bitarra? Beraz, bilaketa bitarra, txarrena en kasuan, hartu zenbat denbora? [VOICES INTERPOSING] David J. MALAN: Beraz, benetan, I entzun leku pare batean. Beraz, benetan da saioa n, eman edo hartu, banatu dugu zerrenda erdia delako berriro, eta berriro, eta berriro, gai gara , aurkitzeko, azken finean, balioa, da, bada, baina ez dago harrapaketa bat da. Zer da hipotesi dugula behar da hartu bilaketa bitarra ematen? Ordenatuko ditu. Ez ordenatuta, gauza banatu dezakezu erdiak behin eta berriro, eta zuk ezkerretara joan daiteke, eta joan eskuinera dezakezu, eta joateko ezkerreko eta eskuineko ahal izango duzu, baina ez zara elementu ez bada aurkituko joan zerrenda ez dago ordenatuta, delako galdu dezakezu. Zure heuristiko delako, ezkerretik joan eskuinera edo ez da zuzena egon behar da, bada, joan hain zuzen ere, ez da horrela antolatu. Beraz, ez dago ezkutuko kostua moduko da honen antzeko zerbait erabiliz. Orain, gure ordenatzeko joan algoritmoak bilatzen ez - Oh, egia esan dezagun hau hutsik joan. Binary onena kasuan bilaketa? Era berean, 1 besterik ez da gertatzen bada, izan oso array erdian, edo telefono-liburua erdian. Orain egin burbuila ordenatu. Beraz, berriro ere, orain ari gara sartzen era, ez bilatzen. Txarrena kasuan, zenbat urrats egin dugu erreklamazioa burbuila ordenatu egin behar da? n karratu. Beraz, hori marraztu dut. Ooh, nire idazkera itxura are okerragoa noiz egin proiektatzen handia dagoela. Guztiak eskubidea. Beraz, hori n karratu. Eta burbuila ordenatu kasu onenean, zenbat da urrats joan behar da? 1, entzun dut. HIZLARIA 1: n. David J. MALAN: n, entzun dut. HIZLARIA 1: 2. David J. MALAN: 2, entzun dut. Ez 3 entzuten dut? Guztiak eskubidea. Beraz, entzun dut 1, n, 2, baina dezagun hautatzeko gain, gutxienez, horietako lehena iradokizunak, 1. Ez da txarra sena bat, delako moduko eredu bat hemen jarraitzen du. Baina bakarrik 1 urrats, nola bada hartzen mundua izan dut aldarrikatzen den zerrendan ordenatuko da, galtzen dut delako soilik onartzen 1 urratsa, zenbat elementu hartu egiaztatu ahal izan dut, benetan ziur egoteko? Tira, 1, eta beraz, ez da n ken 1 duten elementuak kanpo egon liteke ordena, eta besterik ez dut fede ondoren joan 1 elementu begiratzen duten Gauza da antolatuta. 1, beraz, ez da zuzendu hemen. Beraz, gutxi, zenbat Nola begiratzen dut? [VOICES INTERPOSING] David J. MALAN: n ken 1, edo benetan, n, behar dut behin begiratu delako elementu Ziur hori egin nahi ez da kanpo. Baina, berriro ere, gure olatu dugu ordenatzeko txikiagoa zenbakiak at eskuak eta Eman dezagun n lortzen handi gisa, dute Oraindik hala ere izanarren. Beraz, hori sort burbuila da. Eta orain, dezagun azken bi hauek. Aukeraketa, ordenatu, eta, ondoren, egiten zaitugu do txertatzeko ordenatu. Eta, ondoren, zure putz egingo dugu zerbait askoz adimenak horiek guztiak baino hobea da. Guztiak eskubidea. Zer lasterketak txarrena gertatu da aukeraketa Ordena denbora? HIZLARIA 4: n karratu. David J. MALAN: n plaza, entzumena dut. Baina zergatik n karratu, intuizioa? HIZLARIA 4 besterik ez dugulako zuen. David J. MALAN: besterik ez dugulako zuen. Ados. Galdera ona. Baina, intuizioa, zergatik da hautaketa sort n karratu? Zer egin behar dugu behin eta berriro? Bidez eskaneatzen mantendu behar izan gara, duzun txikiena, zuk txikiena, zaude txikiena. Eta ematen du, gai n hartu behar izan dugu urratsak, eta, ondoren n ken 1, orduan n ken 2. Baina mota gehitu behar badituzu horiek guztiak sortu, edo hartu fede on ditudan azkenak horiek sortu aurretik, gutxi gorabehera lortu dugu n txikiago batzuk zenbakiak ken karratu. Beraz n karratu deitzera noa. Baina aukeraketa onena Ordena kasuan, zenbat urrats da Niri hartu behar da? HIZLARIA 5: [INAUDIBLE] David J. MALAN: zoritxarrez da oraindik n karratu, ezta? Dut txikiena bada hautatzen delako elementu, eta zazpi lagun izan dugu hemen, Nik bakarrik dakit, behin lortzeko oso I amaieran, hau aurkitu dut txikiena zenbakia, ahal zuen edo izan dira zuen dezake. Baina nola ondoan aurkitu dut txikiena kopurua? Pass beste bat egin nahi izan dut. Beraz, onena kasuan, zer da hautapen ordenatu sarrera? Lehendik ordenatu zerrenda, zenbaki bat da, zenbaki bi, hiru zenbaki, lau zenbakia. Baina ordenagailu bat naiz. Besterik ezin dut begiratu aldi berean gauza. Ezin dut ordenatzeko hartu urrats bat atzera giza eta esan bezala, ooh, honen itxura zuzena. Bakarrik ezin dut adjudicate zuzentasuna en aukeraketa hautatuz ordenatu txikiena kopurua. Baina nahiz eta zenbaki lehen bat aurkitu nuen, ez badut ezer gehiago jakin buruz Beste zenbakiak, eta hori ez dut, ez dut ezagutzen dudan dira entregatu array bat edo ate-multzo horrek atzean dauden zenbakiak, modu bakarra dela jakin dut txikiena izan zen? Lortu dut modu guztiak galtzen hemen eta konturatzen, madarikatua, hain zuzen ere, bat izan zen txikiena. Baina, nola egin erabakitzeko orduan, nik Hurrengo bi txikiena da? Berean eraginkortasunik eza eginez behin eta berriro. Beraz, azkenik, txertatzeko Ordena, nola, txarrena kasuan, zuen egiten dela esan genezake? Gehiegi N karratu. Eta nola onena kasuan? Uzten dugu cliffhanger gisa. Hurrengo hutsik denbora bete dugu, baina lehen let me proposatzen dugu funtsean, hobeto egin baino horiek guztiak, eskubidea? Beraz, zuk zeuk, zer uste txertatzeko ordenatu egin behar izango da. Beno, hori ez zen oso dramatikoa, naiz bakarra delako ikusi aldaketa. Wow. Ados. Beraz, hemen pixka bat behar dugu manifestaldi ezberdinak. Hemen dut mapan handiago bada, hori ikusiko duzu on Ezkerraldean burbuila ordenatu ditugu, en Erdialdetik aukeraketa ordenatu beharko dugu, eta, Eskuineko, zerbait izango dugu oraindik ez begiratu izeneko batu ordenatu. Baina pentsatu izan dugu hemen, beraz, orain arte, gaur egun. Noiz Jennifer lehenengo iritsi zen eszenatokira igo, joan zenbakiak matrizearen bidez berriro, eta berriro, bilaketa lineal batera, eta lineal exekutatzen denbora lortu genuen, big O n, nolabait esateko. Denean kontuan hartu dugun lehenengo aste klasea, noiz banatu eta konkistatu genuen, eta telefono-liburuaren genuen tearing, eta Jennifer, eta guk kolektiboki leveraged gako ezagutzeko, hau da, errepikatu behin eta berriz by nolabait esateko, bota, bota, bota, arazoa erdia, edo oro har, erditik zatitu arazo bat, eta, gero eta txikiagoa pieza tratatzeko kontzeptualki baliokideak gisa arazoa beste, egin dugu, nolabait funtsean, hobeto. Baina burbuila Ordena, hautapena ordenatu, txertatzeko Ordena, maiatzaren dugu Ez dira Insights Jennifer zuela. Besterik nahiko askoz ibili gara atzera eta Laugarren aldiz sorta oso bat, eta guk tweaked gauzak pixka bat, trukea ordena honetan, agian edo txertatu hautatzean. Baina egunaren amaieran, asko egin nuen oinez baldar atzera eta aurrera. Guk ez dugu benetan zerbait leverage Jennifer bezala smart zatituz bezala egin eta konkistatu. Beraz, batu, ordenatu, aitzitik, dugu ez dira hurrengo aste ikusi arte, joan da behar leverage gakoa zatituko ideia sarrera, eta gero halving, eta, ondoren, , eta, ondoren, halving halving. Eta begizta horretako iterazio bakoitzean, Ezkerraldean erdia ordenatzeko, eta eskubidea erdia, eta gero erdi ezkerreko erdia ezker, eta ezkerreko erdia eskuinera, eta, ondoren, eskuineko erdia erdiak ezkerrean, eta eskuineko erdia erdiak eskubidea. Eta behin eta berriro errepikatuz. Beraz, hau ikusiko duzu, begiz, baina hau da, zer zain gurekin datorren astean. Eta, oro har, noiz txiki bat dela uste dugu, bit inolako arazo on gogorragoa da. Karratu n egin dugu ezkerretik, n erdian karratu, eta n saioa n eskuinetara. Beraz, zure benetako cliffhanger da. Ikusiko dugu astelehenean. [Txaloak]