JASON Hirschhorn: Ongi etorri astean hiru, denek. Lanpetuta, baina zirraragarria izan dugu atalean gurekin aurretik. Beraz, lehenik eta behin, batzuk dugu egin dute delako ikastaroa aurrera baina oraindik dugu dute ikaskuntza asko utzi egin, naiz you guys erakusteko baliabide batzuk joan duten gustokoa izan frogatu beharko duzu ez bakarrik hurbiltzen lagungarria gisa zure arazoa ezartzen du, baina, aldi berean batera bilduma guztia materiala you guys eman dugu hitzaldiak eta film labur eta atala. Ondoren gaude lehen 20 pasatzera joan 25 atal pasa minutu GDB, eta zuk daiteke edo ez izan puntu honetan erabili, baina bat da oso lagungarria izango duten tresna zure programak arazteko dituzu laguntzeko. Duzu asko printf erabili zenuen horretan Zure programa erdian irudikatu aldagai bat zer berdindu daudelarik. GDB are printf baino hobea eta ez hondatzeko zure kodea duzulako exekutatu fitxategi exekutagarria da. Beraz, 10 lagungarria da joan beharko dugu GDB behar dituzun komando eta gara elkarrekin, beraz, ariketa bat joango Arazoa hiru eta haratago ezarri, zuk GDB erabil dezake arazketa laguntzeko zure programak. Eta, azkenik, goaz errepasatuko joan ordenatzeko eta algoritmoak bilatzen hitzaldia ikusi duzula, eta gaude joan den benetan kodea, eta ez bakarrik pseudocode, baina kode bitarra bilatu, burbuila ordenatu, eta aukeraketa sort. Beraz, lehenik eta behin, joan nahi dut baliabideen gainetik. Hau zerrenda zabala da, eta hura da Letra txikiagotzeko asko izan dut delako sartzen da hemen. Baina horiek ez bakarrik lagunduko dizu, berriro ere, arazo multzo batekin eta ikasi duzu informazio digesting, baina zalantzarik, zatoz quiz denbora, horiek izango oso lagungarria izan. Beraz, lehenik eta behin, hitzaldia ohar. Joaten bazara cs50.net/lectures eta aste eta egun zehatz zoaz ikusiko duzu ez direla bakoitzeko notak hitzaldia, eta hori ez da besterik gabe bat transkripzioa, editatutako bertsio bat, baina zer zen kodearekin hitzaldia estalita mozkinak eta beste lagungarria ri. Gomendatzen dut horiek baino gehiago joan. Eta orduan bai, ez da iturburu-kodea hitzaldia bakoitzetik eskuragarri. Eta berriz, diapositiba hauek ere izango dira eskuragarri online cs50.net/sections at arratsalde honetan. Beraz, bigarren dira film labur astean bakoitzak estalkia gaiak, normalean, 5 eta 15 minutuko iraupena. Eta horiek zorionez emango dizu bat gai desberdinetan primer handia. Hirugarren - eta hau da marka hau berria urtea - study.cs50.net da. Ez baduzu checked bada, I beraz, ez duzula oso gomendatzen. Gai bat hautatzeko aukera duzu. There buruzko gaiak dozenaka dugu. Beraz, adibidez, funtzioak jaso duzu. Duzun diapositiba batzuk ematen dio eta funtzioen gaineko oharrak. Horiek dira benetan diapositibak duten TFS zehar erabili dira animatzen gure ataleko aurkezpenak. Ez da, gainera aholku eta trikimailuak aurre egiteko funtzioak, eta ez dago honekin laguntzen duten arazoak praktika funtzioak lan egiten duzu. Halaber, loturak ematen diogu duzun laburren izateko funtzioak eta aldiz duten funtzio etorri hitzaldia. Beraz study.cs50.net estreinatzeko honetan urtean, baliabide zoragarria. Ondoren, gizon, zein eskuliburua da daukat at duzula exekutatu daiteke komando komando-lerroa. Beraz bati buruz edozein zalantza izanez gero komandoa, adibidez, rand, hau dugu atalean zehar azken astean aurkitu eta zu izan litekeena aurkitu Zure arazoa ezarri denean igaro kodea sortzen du, baina gizon idazten baduzu rand, orria lortuko duzula esaten dizu guztiak rand buruz. Ematen du zer hartzen du, parametro hartzen ditu, baita bueltan mota eta azalpen labur bat funtzio hori. Beraz, begiratu aus. Apur bat wordy eta nahasgarria izan daiteke, beraz, batzuetan aurkitu dut besterik ez dago zer jakin nahi dut Googling modurik onena erantzuna aurkitu. Beraz, Google-ekin landu. Get Google trebe. Zure lagunik onena izango da. Baita Google, ezin baduzu aurkitu Google-n, cs50.net/discuss, hura da eztabaida-foroa. Aukerak dira galderaren bat izanez gero, bat Zure 700 + ikaskideek ere duela galdera eta baliteke eskatu dagoeneko eztabaidatzeko en foro eta dute erantzunik. Beraz, galdera edo komun bat baduzu uste duzu galdera bat duzula agian, beste jende sartu exekutatu dute, check out cs50.net/discuss. Azkenik, azken bi, nahi baduzu benetako gizaki, bulegoan hitz egin ordu, astelehenetik ostiralera. Ere online bulego orduetan luzapena ikasleentzat. Eta azken baina ez gutxienez, me, harridura. Duzun guztia nire kontaktu-informazioa dute. Ezer behar baduzu, mesedez, ez da inoiz zalantzarik eta me harremanetan jartzeko. Sentitzen beti free hacerlo. Oso zuetako batzuk gehitu dit Gchat on, beraz, hori izan da etsipena, baina espero duten artean aldatu egingo hau eta hurrengo atala. Baliabideak, orain arte edozein galdera? Handia. Azkenik, plug beste iritzia, sayat.me/cs50. Eman dezakezu niri iritzia anonimoak nola egiten ari naiz on. Hori izan zen benetan lagungarria azken astean. Iruzkin pare bat lortu duzu guys dut eskuineko ondoren atalean, gehi etik nork ikusi da beste ikasle Astean zehar, eta hura oso lagungarria izan zen. Saiatu eta nire erabilera mugatzeko dut "gozoa", baina erakutsiko dizut hitza nire gogo eta ilusio beste bide batzuetatik. Baina badira beste osagarriak ziren oharrak substantibo, bai pluses eta delta. Beraz, mesedez, eman dut you guys iritzia Zure arazo multzo da. Sentitzen free me emateko feedback nire irakasle on. Hemen nago mutilak. Handia. Da guztientzat daukat Lehenengo atala. Ez du inor edozein galderak, orain arte? Eta ohar bat dut kontrol-zentrotik. Luzapena ikasle izan messaged me Oraindik ez dute edozein audio lortzean esaten, baina hori nire power konpontzen kanpo dago. Beraz, espero dugu, hori lortzen ebatzi laster. You online ikusten ari bada, hi- baina ezin duzu entzun me. Beraz, lehenik eta behin, joan gara GDB bidez joan. GDB, Hinted gisa lehenago I, arazketa tresna bat da printf baino askoz hobea. Beraz, GDB, zuekin hasi zen, gero ireki zure tresna nahi duzun eta hori bidaliko dizut fitxategia hartu lehenago - fitxategi hau ere izango dira Pixka bat eskuragarri online - eta exekutatu GDB. / fitxategiaren izena da. Lehenik eta behin, noski, konpilatu duzu fitxategia GDB delako bakarrik lan egiten du fitxategi exekutagarria. Baina inoiz abiarazi nahi baduzu GDB, egiten duzun lehen gauza, GDB. / Caesar exekutatzen duzun. Beraz, programaren gara izenarekin da oraintxe joan joan. Beraz, ez naiz egiteko Caesar, idazten joan eta horrek me emango fitxategi exekutagarria Hemen berdez nabarmenduta. Eta ondoren, naiz GDB. / Cesar exekutatu. Eta han joan behar. Ikusten duzun testua me kontatzea dugu GDB bertsioan, me emanez bermerik zenbait informazio, eta egin dugu BPGaren gonbita, zein nolako itxura izan gure komando lerroan gonbita bezala, baina ikusten duzu irekia da paren, GDB, itxi paren. Jarraitzeko eta arazteko aurretik dugu fitxategi hau bidaltzen duten I duzun guztia, utzi ditzagun komandoak erabilgarri batzuk beraz, zentzu bat izan dugu ari gara estaltzeko zer egingo. Komando hauek zerrendatzen dira hemen dauden ordena horretan, oro har, erabili ditut. Beraz, hasi nintzen nire programa exekutatuz GBD. / Izen programaren, kasu honetan, Zesarrek. Eta, ondoren, lehenik eta behin% 99,9 egin dut berea izan da mota break esan nahi. Duten break puntu bat ezartzen nagusian. Funtsean, zer egiten ari zaren da programa da gelditzeko nagusia, beraz, lerro aztertzen has zaitezke lerroz, baizik eta guztiak exekutatzen baino bidean barrena. Duzu hainbat puntutan apur daitezke hemen Zure kodea, baina nagusia, oro har, bat leku ona hasteko. Hurrengo komandoa I run run da. Duten programa korrika hasten da, eta komando-lerroa sartu behar baduzu argumentuak, Komando duten exekutatzen duzun. Argumentuak exekutatu. Baino gehiago ari gara bertsio bat egingo beraz geroztik C, eta horrek programa you guys da pset bi idatzi - ko hau, jakina, zenbait akats bertan dela espero aurkituko dugu - run exekutatu komando batzuekin batera goaz Zesarrek lerroko argumentuak delako, you guys arazoa per jakin bezain multzo zehaztapenak, hartzen batzuk komando lerroko argumentuak. Hurrengo komandoak pare, hurrengoa bat da benetan izeneko hurrengoa. Bat duzula line hartzen lerroz Zure programaren bidez. Beraz sakatuz n ondoren erosi zaitu hurrengo lerroan, exekutatzean aurreko lerroan. Urratsa ez bakarrik hartzen duzu hurrengo lerroan, baina funtzioen barruan eramaten zaitu. Beraz, funtzio bat idatzi duzu bada Zure kodea edo esploratu nahi izanez gero bat i, adibidez, s sakatu ahal izango duzu, eta baizik eta hurrengo lerroan joan baino eskuineko bidez duzula bazoazela fitxategian orain, benetan dituzu sartu urratsa funtzio hori ikusi eta bere kodea. Zerrenda erakusten dizu, oso erabiltzaile errespetatzen formatua, inguruan 10 edo, beraz, lerro non zure kodea zauden beraz, benetan ikusi duzun fitxategia baizik eta atzera trukatu beharrik eta baino Laugarren ikuspegi ezberdinen artean. Inprimatu printf bezalakoa da, berak dioen bezala. Duten aldagai bat zer hobetu erakusten dizu. Info bertakoek oso baliagarria zaigu. Hau inprimatu bertsio berezi bat da. Info bertakoek erakusten tokiko guztia aldagaiak, inprimatzen denak zuretzat duten horiek eskaini. Beraz, oro har, baizik eta nahi izatea baino duten naiz, lau aldagai inprimatu nago in a loop, bada bitxia Adibidez, info bertakoek idatzi besterik ez dut, eta erakutsi egingo zidan nire counter i berdin, baita array duten nago gisa berdinen lanean. Azkenik, jarraitzeko. Break Idazketa gelditzen duzu break puntuan. Line paseoan ibili arabera hurrengo eta urrats bat eginez. Jarraitu eskailerak programa zure ondoan hautsi puntua edo amaitu bada arte badaude break puntu gehiago ez. Desgaitu break puntu kentzen baduzu nagusiaren bueltan zela erabaki egokitzat, nahi duzun ezarri nonbait. Eta, azkenik, q, irten, GDB daudelarik lortzen. Beraz, programa hau,. / Caesar, goazen bidez begiratu oraintxe bertan eta guk dira GDB erabiltzeko aurkituko joan programa honetan bugs. Programa hau lehenago ran dut Begiratu 50 eta frown bat lortu nuen. Guztia, existitu egiten da konpilatu, hura probak asko pasatu, baina arrazoi batzuk, ez zuen bosgarren gainditu proba, BARFOO, txanoak guztiak, inflexio sartu E-D-U-I-R-R, txanoak guztiak, gako gisa hiru erabiliz. Nahiko hurbil lortu nuen. Off lortu nuen gutun-banan. Beraz, ez dago hemen akats txiki batzuk. Nire kode bidez dut begiratu dut. Ezin nuen irudikatu. Zorionez, you guys lagun dezake me irudikatu bug hori zer den. Beraz, errorea gara da bilatuz. Dezagun aurrera GDB sartu. Berriz ere, nik exekutatu dut GDB. / Caesar, beraz, gaur egun Oraindik GDB dugu. Eta zer da lehenengoa gauza egin behar dut? Besterik ez dut sartu GDB. Norbaiti eman me ona komandoa sartu. STUDENT: Break nagusia. JASON Hirschhorn: Break nagusia. Fantastikoak. Dezagun idatzitako sartu Zaudete ikusi daiteke hemen edo jarraitu Zure ordenagailuetan batera. Apurtu nagusia, eta ikusiko duzu break puntu zegoen ezarrita - me ematen dio bitxi memoria helbide batzuk, eta lerro kopuruaren ematen ere me. Atzera begiratu fitxategia honetan banintz, Nagusia duten konturatzen nuke on line 21 gertatu. Hurrengo zer exekutatu behar dut? Nire programa exekutatzen ariko da N º Beraz, zer hurrengo exekutatu behar dut? STUDENT: Exekutatu. JASON Hirschhorn: Exekutatu. Behar besterik run exekutatu dut, edo egin beharko lukete Beste gauza batzuk gehitu dut hemen? STUDENT: Run argumentu batekin. JASON Hirschhorn: ekin Run komandoaren argumentuak. Eta oso zehatz bat arazteko naiz geroztik kasuan, hori sartu beharko dut komando lerroko argumentu. Beraz, ez dut exekutatu egingo hiru, hau da, berriro, irteera lortu Check 50 naiz. Programa hasita. Lerro pare baten bidez joan gara. Orain ikusiko dugun Oraindik line 21. Nola ez dugun Oraindik line 21 ezagutzen dut? Delako begiratuz gero ezkerrera nire terminal leihoaren, ez dago line 21 dio. Eta horrek ematen dit, egia esan, da duten line 21 da kodea. Beraz, lehenago misspoke dut. Ez da nagusia benetan line 21 at. Nagusia 21 Goiko lerro pare bat da. Baina line 21 at, hori da non apurtzen ari gara. Kode-lerro hau dauka oraindik ez exekutatu. Hori da garrantzitsua. Lerroan ikusiko duzu ez dauka Oraindik exekutatu dira. Duten hurrengo kode lerro da buruzko exekutatu zaudenean. Beraz, hurrengo lerroan, you guys dira ziurrenik ezagutzen, hau da, baldintza egiaztatzen dut bada ikusteko komando lerroko argumentu bat sartu. Eta i nahi bat, zer bigarrena da egiten duten parte? Zer da i? STUDENT: Aldatzeak zenbaki oso bat izateko. JASON Hirschhorn: Barkatu? STUDENT: aldatzen ari da Zenbaki oso bat argumentu. JASON Hirschhorn: Beraz, i aldatzen den arg kate bateko v1 zenbaki oso bat izateko. Eta gero, zer ari da egiaztapena? STUDENT: badago bigarren bat da komando lerroko argumentu, alde batera utzita Programa exekutatzen from. JASON Hirschhorn: Eta zer honen bigarren erdian Adierazpen boolear egiaztapena? Hemen baino gehiago zati honetan, a i? STUDENT: negatiboa bada. JASON Hirschhorn: Ziur zer? STUDENT: Ziur Making da, hain zuzen ere, positiboa. JASON Hirschhorn: Zehazki. Hau da bada ikusteko checking negatiboa da negatiboa, eta bada, I bat sentitu hurrengo lerroan agian izan egon yelling erabiltzaileari at me. Hargatik hit bukaeran lerro hau exekutatu. Ez dugu lerro hori ikusten duzu guys agian yelling ikustea espero Erabiltzaileak eta gero itzuli, zeren lerro hau ez zuen exekutatu. 3 sartu nintzen. Beraz, ez nuen, hain zuzen ere, sartu bi komando lerroko argumentuak, eta 3 da zero baino handiagoa. Beraz, lerro hori ikusi genuen, exekutatu dugu, baina ez genuen urratsa baldintza bada barruan. Beraz, orain, hurrengo, ezarpena dut ikusten dut int giltza berdinen bat i arg v1 da. Beraz, hori da funtsezko aldagai bat sortzeko me. Beraz inprimatu dut giltza bada oraintxe bertan, zeren duten ikusteko aukera ematen du balioa aldakorra barruan, giltza berdin 47. Hori da arraroa, baina, jakina, hori ez dudalako Oraindik exekutatu lerro hori. Beraz, orain hit I n bada, exekutatu lerro horretan, eta do inprimatu giltza, giltza berdinak izango dira 3, hau da, zer den berdina espero dugu. Beraz, berriro ere, GDB, lerroan zugan ikusi oraindik ez duzu exekutatu. Hit n edo s edo kopuru bat behar duzu benetan beste komandoen lerroa exekutatu. Inprimatu giltza. 3 gako en. Orain arte, beraz, ona da. Katea testu soila da. Dezagun exekutatu lerro hori. Naiz kate bat lortzean dut erabiltzaileari. Ikus nire Check 50 in dezagun, I Sar BARFOO txanoak guztiak, beraz, hori zer sartuko dut. Orain ditut testu arrunta inprimatu bada. Ikusiko duzu kate bat berdin da. Beste hamaseitar bitxi batzuk dizkit zenbakia, baina ez da Izan ere, esan nire katea BARFOO da. Funtsezko zer at berdindu ikusi nahi nuen bada Puntu honetan, nola liteke giltza egiaztatu dut? STUDENT: Print giltza. JASON Hirschhorn: Print gakoa, zehazki. Eta egia esan, ez dago lasterbide bat da. Inprimatu idazten nekatuta bada, besterik p idatz dezakezu. Beraz, p gako zehatza gauza bera egiten du. Eta berriro ere, berdin da 3 ikusten dut. Jakiteko zer bai funtsezko nahiko banu eta BARFOO aldi berean berdindu baina bakoitzak idazten nekatuta nengoen banan banaka, I Datu bertakoek idatz dezake. Duten funtsezko berdinen 3 ematen dit. Testu arrunta berdinen BARFOO. Ematen dit bi gauza bitxi hauek goialdean, aldagai hau i eta aldagai n hau. Horiek benetan existitzen diren ari nire programa nagusian. Ez dugu oraindik aurkitu da beraientzat, baina aurrerapen gisa, horiek nire existitzen begizta. Beraz, oraintxe bertan, bitxi batzuk berdinak dituzten zenbakiak ez dute izan delako hasieratu oraindik, baina ez dute oraindik existitzen memoria, beraz, besterik ari dira ezartzen zabor balio batzuk ere. Baina ikusi dugu giltza arrunta testu bertan. Beraz, ez naiz lerro hau exekutatu joan, linea 34, begizta da. Hemen sartu salto goaz kolpatzeko n egindako begizta. Eta Oraindik barruan dugu begizta. Oraindik gure lehenengo check dugu. Eta berriro ere, horiek ordenatzeko begiratu behar duzu ezagutzen hau zen delako bat Zesarrek programa zela idatzi zuen, baina berriro, akatsen mota batzuk eskaintzen ditu. Eta orain Datu bertakoek egiten badut, naiz delako loop barruan, ikusiko duzu i berdin zero, espero dugun bezala. Hori zer ezarri dugu eta hasieratu hemen dago begizta. n berdinen 6. Hori ere zentzuzkoa dugu ezarri delako testu arrunta strlen ondoan. Beraz info bertakoek edo inprimatu egin nahi dut aldakorra den askotan ziur dena da beti zer Ra berdina espero dut. Kasu honetan, dena da zer berdina espero dut. Hargatik hasteko bidez mugitzen hau begizta. Lerroan nago line 36 da, arrunta bada testu i da eta arrunta baino handiagoa testu i baino gutxiago edo z berdina da. Badakit nire arazoa ez da nire lehen ekin gutun, da bigarren letra da. Atzera begiratzen badiogu Check at 50, B E fina doa. Bat hartu dut eta hura bezala utziz A, ez da aldatzen D. Beraz, zerbait gaizki Bigarren letra. Beraz, ez naiz mugitu joan bigarren batean han. Baina ez nuen nahi bada zer arrunta egiaztatzeko testu berdindu dut zehatz honetan kasuan, uste dut zer izan behar du? Zer behar testu arrunta berdinak dut honetan Lehen txandan bidez loop? STUDENT: Zero? JASON Hirschhorn: I testua Plain? Beraz, kapitala B. beharko luke dut, noski, berdin zero, baina testu arrunta parentesi zero itxia parentesi berdinen B delako kateak, azken astean ikusi genuen bezala, array dira, beraz ari gara horretako lehen pertsonaia. Beraz, berriro ere, inprimatutakoak dut testu soila bada Dut, ez dut, hain zuzen ere, izaera lortu B. Eta hori da neat, ezta? Egia esan, ez daukat testu arrunta I. Hori ez da aldagai I set bat edo hasieratu, baina inprimatu ahal izango duzu gauza mordoa ere atera zuk nahi izanez gero. Baina dezagun mugitu bidez. Testu arrunta dut bat baino handiagoa izaten da, testu arrunta dut hori baino gutxiago edo berdina Z, hori argi dago egia dugu delako kapitala B. a exekutatu noa Gainean komando batzuk. Matematika dela ikusi dugu azken astean, hain dugu eraman ezazu emandako lan egiten dela eskubidea 50 Begiratu arabera. Giltza kizkur horiek, lehena erakutsi badu, hori zait irteten zen baldintza, bigarrena erakutsi dut naiz the loop irteten. Eta beraz, gaur denean hit I Ondoren, ikusiko dugu bertan itzuli gara loop berriro. Du bidez ari gara begizta berriro ere. Dezagun benetan bigarrena sartu urratsa iterazio begizta eta mota Datu bertakoek. Beraz gara bigarren iterazio batean gure begizta neurtzen. Berdinen I 1, eta hori espero dugu. N berdinen 6, eta espero dugu. Giltza berdinen 3, eta hori espero dugu. Eta testu arrunta, ikusiko duzu, berdinen EARFOO orain, ez BARFOO jada delako gure aurreko iterazio batean, B izan zen kapitala E. aldatu Beraz gara buruz , arazoa topo hau hain da nora goaz arazketa murgiltzea. Baina ez du inor edozein zalantza Orain arte egin dugun buruz? Fantastikoak. Beraz, inguru hau egiten bada gara baldintza, testu arrunta parentesi dut itxia batek baino parentesi handiagoa eta testu arrunta dut baino gutxiago edo Z. berdina Baina aurretik Joan sartu nintzen, hau da, non Ezagutzen dut nire error da, seinalatu nahi dut I. testu arrunta daudelarik Beraz dezagun jarri inprimatu daudelarik. Berdinak pertsonaia batek egiten du eta, beraz, Dirudienez, orain arte, guztiak ongi eta ona. Beraz, lerro hau nire logika per espero dut, lerro hau egia izan behar du. Maiuskulaz da. Baina hit I n bada, konturatzen ez dugu hori lerroa, hain zuzen ere, ez zuen exekutatu. Behera salto egin dut, bestela, nahi izanez gero. Zergatik dela gertatuko da? STUDENT: zuk izan delako zure egoera testu soila da handiagoa baino A, ez berdina edo baino handiagoa. JASON Hirschhorn: Beraz, nire testu arrunta izan nuen A, ez handiagoa baino handiagoa da I baino edo berdina. Beraz, argi eta garbi, kapital batek ez zuen eragin hau baldintza bada, eta egin genuen ez da sartu urratsa, eta egin genuen ez beharrezko aldaketa egin. Beraz, hori da, benetan. Hurrena dut nire akatsen. Nuen atzera egin dezake nire iturburu-fitxategi batean, aldatu da, eta eguneratu eta exekutatu Begiratu 50 berriro. Baina ikusi dugu, besterik pedagogia en aldeko mesedetan, jarraitzea badut. Bestela izango ez balitz bai exekutatu, baina zer ordez berdin komandoa da hori ez da aldatuko. Beraz, ez da aldaketarik izan, eta badut testu arrunta inprimatu hemen, ikusiko dugu horren bidez loop ez, hain zuzen ere, bigarren pertsonaia hori aurrera jo. Da kapitalaren A. oraindik Beraz, berriro ere, gure error arazten dugu. Ez zela konturatu ginen logika batzuk falta. Eta bertan arazten dugu denbora aurretik aurretik benetan linea bat exekutatzen, baina zuk nabaritu zukeen izan genuen besterik hit Next eta hori beste salto bada, horrek esan nahi du horrek, bada baldintza Ez zen egia. Ez genuen, hain zuzen ere, lortu emaitza dugu espero. Beraz, ondoren zitekeen galdetuko dugu izan, izan Ezin izan gara beraz, astute, begiratzen dituen baldintza eta egiaztatu, bada, hain zuzen ere bada, gure egoera ebaluatzeko behar egungo testuinguruan egia. Hori da dena programa hau arazteko. Du inor edozein zalantza? Zer komandoa ezin GDB irten sakatu dut? G: Eta gero galdetuko zaizu, Irten hala ere? Bai ala ez. Hit dut bai, eta biok irten egingo GDB. Beraz, GDB primer azkar bat izan zen. Egia esan, benetako eszenatoki batean, Hau nik egin dut bulego orduetan. Programa zehatza hau GDBed dut ikasle batekin bulego orduetan. Eta atzera joan bada komandoak ikusi genuen behar dugu aurretik, break nagusia erabiltzen dugu, lehen gauza egin genuen. Erabiliko dugu exekutatu komando lerroko argumentuak, Bigarren gauza egin genuen. Hurrengoa erabiliko dugu asko mugitu lineen bidez gurekin. Eta berriro ere, bertsio laburra n hurrengoa da. Hori da, parentesi gris diapositiba batean. Ez dugu urrats erabili, baina ez genuen nahitaez behar kasu honetan. Baina agian geroago erabili dugu pixka batean gaur arazketa gara, bada, bost Adibidez, bilaketa bitarra bitarrak denean bilaketa da aparteko batean izeneko funtzioa baina ez da berarekin error batzuk. Izateko urratsa egin nahi dugu bilaketa bitarra deia eta benetan arazteko da. Zerrendatu ez genuen erabili bai izan genuelako gure kodea zentzu ona, baina badut Nahi al kodea dudana zentzu bat lortzeko inguruan izan zen, izan besterik erabili dut zerrenda. Inprimatzeko erabiltzen dugu, info bertakoek erabiltzen dugu. Jarraituko ez genuen behar den honetan erabili kasuan, ez zuten erabili behar dugu erabilpena desgaitu, baina egin genuen irten. Berriz ere, 10 komando horiei, horiek landu. 10 komando horiei ulertzen baduzu, duzun edozein arazteko ezarri behar da GDB emateko. Beraz, aurrera joateko, berriro buruz ari gara, joan atalean Gurutzea gaur, pasa horiek sailkatzeko eta bilatzeko algoritmoak. Aurretik horrela egin dugu, berriro ere, edozein zalantza, iruzkinak, GDB kezka? Beraz, denek erabili joan GDB baino printf? Beraz, denek, perpetuity en mesedetan, denek euren burua eskuin nodding da orain, hurrengo batean ikusiko dut bulegoko ordu eta TFS guztia duzu eta ikusiko esan egingo dute, erakutsi nola erabili GDB, eta gai izango duzu horiek erakusteko, ezta? Kind of? Agian, zorionez. Cool. Beraz, nahi mugitu joan sailkatzeko eta bilatzeko. Ikusiko duzu dagoeneko horrela antolatu zerrenda bat daukat digu, baina hori ez da joan da kasuan beti izan. Beraz, arazoa in zehaztapen ezarri Arazo multzo hiru, film laburrak duzu benetan ikusi ahal izango duzu, eta film labur horiek ikusi ahal izateko eskatuko du. Halaber hitzaldian azken astean, gora joan ginen algoritmo horietako asko, beraz, naiz Ez denbora klasean joan Algoritmo horiek berriro edo marrazki baino gehiago nola horien irudiak algoritmoak lan egiteko. Berriz ere, informazio hori berriro ikusi ahal izango duzu hitzaldia, edo informazio hori outstandingly harrapatu film labur on bilaketa horiek, guztien aldeko prest dauden cs50.net at. Beraz, horren ordez, zer goazela egin da programa horiek idazteko. Zentzu bat eredu mental bat, nola dugun, , lan egiten dute eta, beraz, zer ari gara egin da horietako kode benetako. Mental eredu horrek buelta goaz, irudi hori, bada, sartu benetako kodea. Eta pixka bat nahastu edo zinen mental eredu on lainotsua, baina gaur ez dago ulertzen. Ez gabiltza benetan joan kodea straightaway salto. Beraz, diapositiba honetan galdera hau galdetzen bitartean bilaketa bitarra kode duzu, eta benetan, etorriko bertsio bat bilaketa bitarra, lehenengo gauza I Benetan egin nahi duzun da pseudocode batzuk idazten. Beraz, adimen-eredu hori duzun bitarraren nola bilaketa lanak. Hartu paper orri bat baduzu bat erraz eskuragarri, edo ireki bat Testu editore, eta gustatuko litzaidake dut denek idazten. Hartu lau minutu idatzi du bilaketa bitarra pseudocode. Berriz ere, adimen-eredu hori pentsatzen. Etorriko naiz, inguruan zalantzaren bat argitzeko eta argazkia atera marraztu ahal izango dugu. Baina lehen, programazioa hasten gara aurretik, Idatzi nahi dut bilaketa bitarra pseudocode beraz, dugu murgiltze, norabide batzuk ditugu gisa non buru behar dugu. STUDENT: Ezin array suposatuko dugu balioak lortuko dugu horrela antolatu da dagoeneko? JASON Hirschhorn: Beraz, bilaketa bitarra egiteko lan egiteko - Galdera bikain - duzu ordenatuko batean hartuko dute balioak array. Beraz, bere gain lan egingo du. Diapositiba honetan itzuliko dugu. Morea funtzioa ikusiko dituzu deklarazio bool binary_search int da balioa, int balio, int n. Hau ezagutzen begiratu behar dut baduzu Dagoeneko hurbildu edo ahaztuak zure eskuak arazo multzo batekin zikin. Baina hori zure funtzioa adierazpena da. Berriz ere, ez luke zertan kezkatu askoz une honetan. Benetan zer egin nahi dut da hartu lau minutu pseudocode bitarra bilatu, eta gero ikusiko dugu joan hori baino gehiago, talde gisa. Eta inguru etorriko naiz. Zalantzarik baduzu, sentitzen free eskua altxatzeko. Zergatik ez bi minutu gehiago hartzen duzu amaitzeko pseudocode? Badakit hau barregarria dela iruditu on hainbeste denbora ari gara hori ez da, nahiz eta benetan zerbait C, baina batez ere, horiek gehiago eskuratzeko erronka algoritmoak eta arazo multzo horrek irudikatu nahi izan dugu, pseudocode ez kezkagarria hasita sintaxia buruz, aski kezkagarria logika, oso lagungarria. Eta, era horretan, ez duzu bi konpontzen ari aldi berean arazo oso zaila. Logika da besterik ez duzu bideratua ari, eta orduan sintaxia sartu mugituko zara. Ados. Dezagun hasteko igaro pseudocode. Idatzi dut hemen, bitar bilaketa pseudocode. Idatziko dugu honi buruzko taula elkarrekin. Edo idazten dut eta eman dituzu me eskatuz behar dut. Beraz daiteke inor emadazu lehenengoa pseudocode lerro duzu bilaketa bitarra idatzi? Bai, Annie? STUDENT: bitartean luzera zerrenda zero baino handiagoa da. JASON Hirschhorn: bitartean luzera of zerrendatu zero baino handiagoa. Eta berriro ere, zenbait C-begira ikusten dugun Hemen on sintaktikoak gauzak. Baina hau gehiena ingelesez dago. Ba al da inor izan edozein line jarri dute hori baino lehen bere sasi-kodean? STUDENT: Talde array of ordenatuko zenbakiak. JASON Hirschhorn: Idatzi duzu "bat lortzeko zenbakiak ordenatuko array. "Per funtzioaren adierazpenean, pasatzen egingo dugu ordenatuko zenbakiak array bat. STUDENT: [INAUDIBLE]. JASON Hirschhorn: Beraz, egingo dugula. Baina bai, bada ez genuen izan duen, dugu gure array ordenatzeko behar luke zenbakiak, zeren bilaketa bitarra bakarra ordenatuko array lan egiten du. Zerrendaren luzera berdin zero, beraz, bitartean, naiz izateko giltza kizkur batzuk jarri joan atsegin apur bat gehiago itxura egiteko C. Baina bitartean, badirudi baten gainean mapa begizta bitartean, beraz bitartean hau barrutik begizta zer egin behar dugu bilaketa bitarra egin? Beste inork ez du ematen duten me baten erantzun oraindik baina nork idatzi hau? STUDENT: zerrendaren erdian joan. JASON Hirschhorn: Tom. Zerrendaren erdian joan. Eta jarraipen-galdera, zer egiten dugu behin Oraindik dugu zerrendaren erdian? STUDENT: Do txeke bat hori egiaz zenbakia da bilatzen ari zaren. JASON Hirschhorn: Bikain. Zerrendara erdian eta egiaztatu gure balioa da bada ez - fantastikoak. Ba al da inor izan, beste ezer zela hori baino hainbat? Hori da zehazki eskubidea. Lehenengo gauza egin dugu bilaketa bitarretan dago zerrendan erdian joan eta begiratu gure balioa da bada ez ikusteko. Beraz, gure balioa bada gain hartzen dut han, zer egiten dugu? STUDENT: zero itzuliko dugu [INAUDIBLE]. JASON Hirschhorn: Bai, bada gure balioa hor dago, aurkitu dugu. Beraz, nolabait esan ahal dugu, hala ere honen funtzioa definitzen da, erabiltzaileak esaten dugu aurkitu dugu. Ez bada ez dago, ordea, hori da kode hau delikatua lortzen. Beraz, ez bada bertan, norbaitek nor zen bilaketa bitarra edo lanean ari du ideia bat, gaur egun, zer egiten dugu? STUDENT: Galdera. JASON Hirschhorn: Bai? STUDENT: array dagoeneko ordenatuko da? JASON Hirschhorn: Bai, suposatuz ari gara array dagoeneko ordenatuko da. STUDENT: Orduan berriro egiaztatu behar duzu bada balioa ikusten duzun baino handiagoa da nahi duzun balioa, mugitu dezakezu beste erdiak erdian. JASON Hirschhorn: Beraz, erdian zerrendan zer gara baino handiagoa da bila, eta gero ez dugu zer? Non mugitzen dugu? STUDENT: ra mugitu nahi duzu zerrendaren erdia duen zenbakiak baino txikiagoa. JASON Hirschhorn: Beraz zaitugu deitu ezker hori. Beraz erdiko handiagoa bada, bilatu dezakegu utzi zerrendaren erdia du. Eta, ondoren, bilaketa eginda, zer esan nahi bilaketa by I? STUDENT: [INAUDIBLE]. JASON Hirschhorn: joan erdialdera dugu. Benetan errepikatu dugu gauza hau. Atzera egin dugu gure berriz, begizta bidez. Emango dizut, azkena - bestela, bada, erdiko da, zer baino gutxiago dugu egin, zer egin, hemen egiten dugu? STUDENT: eskuin joan. JASON Hirschhorn: Search eskuinetik. Honek itxura ona, baina ez du inor izan ezer falta daiteke dugun edo Beste ezer duzula jarri zure sasi-kodean? Beraz, hau da, zer, orain arte ez dugu. Zerrendaren luzera handiagoa den bitartean Zero baino, joan goaz zerrendaren erdian eta begiratu gure balioa da bada ez. Erdian handiagoa bada, goazela bilatu utzi, bestela erdian bada gutxiago, eskuinetik bilatu goaz. Beraz, guztiak izan dugu ezagutza batzuk terminoak erabiltzen ditugu informatikako eta tresnak nola. Baina ikusiko dagoeneko nabarituko duzu ginen ingelesez hitz egin, baina aurkitu dugu bat horretan mapatzeko zirudien gauza asko Tresna gure kodifikazioa tresna kit dugu. Beraz, eskuinera bat itzali, ez gara benetan kodea oraindik joan. Zer egin, hemen ikusten dugu ingelesez duten mapak gauza on C ahal izango dugu idazten? STUDENT: bitartean. JASON Hirschhorn: bitartean. Beraz, berriz, hau hementxe zer Mapa? STUDENT: berriz, begizta bat. JASON Hirschhorn: berriz, begizta bat? Edo seguraski, oro har, begizta bat. Zerbait eta gehiagoko egin nahi dugu. Beraz, begizta bat kode-joan. Eta badakigu, dugu egin delako hau pare bat aldiz, eta guk adibide ugari dute han, nola benetan idatzi begizta baten indizea hau. Beraz, nahiko erraza izan beharko luke. Hori lortzeko gai izan behar dugu nahiko azkar hasi zen. Zer gehiago ikusten dugu hemen? Zer beste egitura syntaxes, gauzak ezagutzen dugun Oraindik C, egiten dugun Dagoeneko izan Based zentzua erabiltzen ditugun hitzen off? Bai, Anna? [INAUDIBLE] besterik Txantxetan. Anna, aurrera. STUDENT: bada, eta bestela. JASON Hirschhorn: bada eta bestela, - hemen. Beraz, zer itxura horiek? STUDENT: An bestela adierazpen bada. JASON Hirschhorn: Bai, baldintza, ezta? Beraz, ziurrenik dugu behar baldintza batzuk idatzi. Eta berriro ere, agian nahasgarria nahiz lehen, oro har dugu zentzua orain baldintzak eta nola idazten duen baldintzen sintaxia. Eta egiten ez badugu, besterik begiratu dugu baldintzak, ebaki eta itsatsi sintaxia duen, dugu ezagutzen dugulako behar baldintza bat hemen. Edozein gauza batzuen mapa duten ikusiko dugu kalera baliteke C egin behar ditugu gauzak? Bai, Aleha? STUDENT: Hau bistako izan daiteke, besterik markatuz bada bat balioa zerbait berdin. JASON Hirschhorn: Beraz, nola ez egiaztatu dugu eta - beraz, joan zerrendako erdialdera eta begiratu gure balioa da bada ez? Nola egin behar dugu C? Zer da hori sintaxia? STUDENT: berdin, berdin. JASON Hirschhorn: berdin, berdin. Beraz, egiaztapen hau da ziurrenik joan berdinen bat izan nahi du, berdin. Beraz, ezagutzen dugu nonbait behar dugu. Eta, egia esan, besterik ez da idatziz, beste gauza horiek ikusten dugu. Batzuk egin behar dugu Konparazio operadore han - fantastikoak. Beraz, benetan itxura, eta handiak, ez dugu idatzi bat C kodea hitza oraindik. Baina adimen-eredua lortu jaitsiko dugu hitzaldiak eta film labur horiek bidez. Sasi-kodea idatzi dugu talde gisa. Eta, dagoeneko,% 80 ez bada dugu Zer egin behar dugu% 90. Orain, besterik gabe, kode behar dugu da, eta horrek, berriro ere, ez da bat ez hutsala arazoa konpontzeko. Baina, gutxienez, ari gara logika itsatsita. Noiz joan bulego orduetan nahi dugu, gutxienez, gaur egun, Esan dezaket, badakit behar dudana , egin, baina dezakezu gogorarazteko sintaxia of me? Edo bulego orduetan ibilia nahiz dira, zuk sintaxia Google daiteke, baizik eta ari logika gelditutakoak baino. Eta, berriz ere, baino konpondu nahian logika eta sintaxia arazo guztiak aldi berean, askoz hobea izaten da bi arazo gogor horiek off hautsi sartu gehiago Lasén bi direnak eta burutu sasi-kodea lehenengo eta, ondoren, C. kodea Beraz, ikus dezagun zer egin nuen egiteko sasi-kodea denbora aurretik. Zerrendaren luzera handiagoa den bitartean Zero baino, erdi begiratu zerrendaren. Zenbakia aurkitzen bada egia, bestela itzuli kopuru handiagoa, bilaketa ezker bada. Bestela bada zenbaki txikiagoa, bilaketa eskubidea, itzultzeko faltsua. Beraz, ia berdin begiratzen ez bada ia zer idatzi dugu berdina. Egia esan, Tom, zer lehen esan duzu, zerrendaren eta gero erditik hautsi zenbaki bi adierazpenak sartu topatu da, benetan zer egin nuen. Horiek konbinatu nituen han. Beharko nuke entzun dute duzun lehen aldia. Beraz, sasi-kodea dugu izan da. Orain instalatu nahi baduzu, barkatu, joan gure hasierako arazoa itzuli. Dezagun kodea binary.c. Beraz etorriko bertsio bat ezartzeko bilaketa bitarra ondoko erabiliz funtzioaren adierazpenean. Eta ez duzu kopiatu behera, besterik ez oraindik. Naiz benetan ireki joan sortu hementxe binary.c. Beraz, ez funtzioaren adierazpena da pantailaren erdian. Eta ikusi zuen sasi-kodea hartu nuen dituzu nire alboetan, baina ia berdin zer idatzi dugu, eta jarri zela zuretzat. Beraz, gaur egun, dezagun bost minutu iraun funtzio hori kode-. Eta berriro ere, edozein zalantza izanez gero, eskua goratzen, ez dut utzi naute, etorriko inguruan. STUDENT: [INAUDIBLE]. JASON Hirschhorn: Beraz bitar hartu nuen bilaketa at definizioa Gora, on line 12. Hori zer lortu nire diapositiba dut. Eta gero, sasi-kode hori guztia besterik ez dut kopiatu eta diapositiba batetik itsatsi, sasi-kodea diapositiba. Jarraitzen dut ez entzumena [INAUDIBLE]. Zuk amaitu hala bada zure ezartzeko, hura begiratu nahi dut. Helpers.h fitxategira bidaliko dizut klase honetan lehenago. Eta eskuragarri izango da online baita deskargatzerik jendeak ikusteko Atal honetan denboran atzeratu. Eta besterik banaketa generikoak erabiltzen dut pset3 etatik kodea. Beraz, hartu nuen find.C, erabili nire helpers.h fitxategia baizik helpers.h fitxategia baino hori banaketa-kodea eman. Eta beste aldaketa bat egin behar izan nuen find.C baizik eta, besterik gabe, besterik gabe deituz baino bilaketa, deitu binary_search. Beraz, zure kodea probatu nahi izanez gero, badakiela hori nola egin behar den. Hain zuzen ere, dugu kode hau exekutatzen zaizu oraintxe bertan, aski da kopia bat egin nuen nire pset3 gida, berriro, trukatu out du laguntzaile fitxategiak eta ondoren egin duten find.C aldatu binary_search deitzeko baizik eta, besterik gabe, bilatzeko. JASON Hirschhorn: Bai. Galdera bat duzu? STUDENT: Nevermind. JASON Hirschhorn: Kezkak. Beno, dezagun Hasteko. Honek kode egingo dugu talde gisa. Beste ohar bat. Berriz ere, hau da, erraz trukatuko egiteko Arazoa Ezarri Hiru. Nire helpers.h fitxategia daukat eta horrek, baizik helpers.h baino ematen ari gara, binary bilaketa, burbuila adierazten ordenatu, eta aukeraketa sort. Eta find.c in dituzu on line nabarituko, zer da 68 lerro, duten, bitarra deitzen dugun bilatu beharrean bilaketa. Beraz, berriro ere, kodea eskuragarri dagoela online edo kodea zarela oraintxe sortzeko erraz trukatu ahal izango dira in p ezar 3 ikusteko. Baina lehen, dezagun kode bitarra bilatu. Gure funtzioa deklarazio, boolearra itzuliko gara. Balio izeneko zenbaki oso bat hartuko dugu. Deitu zenbaki osoen array bat hartuko dugu balioak, eta hartuko dugu n izan array tamaina. Linea 10, hementxe on, daukat zorrotz, besteak stdbool.h. Inor daki zergatik hori da han? Beraz, kode-lerro horrek zer esan nahi du? STUDENT: zuk aukera ematen du bool itzulera mota bat erabiltzea. JASON Hirschhorn: Zehazki. STUDENT: Edo liburutegi bat duten aukera ematen da bool itzulera mota bat erabili. JASON Hirschhorn: Beraz, zorrotzak dira, besteak stdbool.h line ematen dit batzuk definizioak eta adierazpenak gauzak naizela batean erabiltzeko baimena liburutegi honek. Beraz dutenen artean dagoela esanez ez dagoela deitzen nuen tipo hau, eta izan daiteke egia edo gezurra. Beraz, lerro hori duenaren. Eta gero ez nuen lerro hori izan, nuke arazoak lortu hau idazteko hitza hementxe, bool, bertan. Zehazki eskubidea. Beraz, hori behar dut kode hau. Ados. Beraz, hau, berriz, ez da etorriko bat bertsioan, recursive inork ez bat. Hargatik Hasteko digu. Dezagun lehen honekin en sasi kode line. Eta, zorionez, izango gara - edo ez, zorionez. Gela ingurura joan goaz. Line zaitez dugu lerro, eta lagundu egingo dut lerroan behar dugu irudikatu lehen idazteko. Beraz, berriz zerrenda luzera zero baino handiagoa da. Hasteko aurrealdean dezagun. Zer lerro idatzi beharko nuke Hemen, kodean? STUDENT: Bitartean parentesi n 0 baino handiagoa. JASON Hirschhorn: bitartean n da 0 baino handia. Beraz, n zerrenda bat tamaina da, eta bat datozen egiaztatzen ari gara - [AHOTS INTERPOSING] JASON Hirschhorn: - Barkatu? STUDENT: Nola jakin duten n zerrendan tamaina da? JASON Hirschhorn: Barkatu. Pset zehaztapen bakoitzeko, bilaketa eta nolako funtzioak idatzi behar duzu, n zerrendan tamaina da. Hori hemen azaltzeko ahaztu dut. Baina bai. n tamaina da Zerrendan, kasu honetan. Beraz, berriz, n 0 baino handiagoa. Ados. Pixka bat problematikoa izan daiteke ordea, gauzak joan bada. Delako ezagutzen jarraituko dugu honetan zehar zerrendaren tamaina funtzioa, baina esaten hasiko gara 5 zenbaki osoen array batekin. Eta pasatzen dugu eta dugu orain narrowed du behera 2 zenbaki osoen array bat. Horietatik 2 zenbaki da hori? Tamaina 2 da orain nahi dugun begiratu, baina horietatik 2 da hori? Ez duela zentzurik, galdera hori? Ados. Galdetu dut berriro. Beraz, hasiko gara of 5 array honekin osokoak, eta n berdin 5, ezta? Izango da hemen zehar ibiltzen gara. ziurrenik dugu tamaina aldatzeko, eskubidea, gauzak joan gisa. Hau da egin nahi dugun esaten dugu. Ez dugu bilatu nahi berriro gauza osoa. Esateak aldatu dugu eta 2. Zerrenda hori bakoitiak erdia hartuko dugu. Beraz, besterik jaso 2. Beraz, orain n berdinen 2. Pobreak Barkatu zurirako markatzaileak. Ezta? Eta zerrendan zehar bilatzen ari gara berriro tamaina 2 zerrenda batekin. Beno, gure array tamaina 5 da oraindik. Esaten dugu bakarrik nahi dugu bilatu 2 da lekuak. Beraz, horietatik 2 lekuak dira horiek? Ez duela zentzurik? Dira utzi 2 lekuak? Dira eskuineko 2 lekuak? Dira erdiko 2 lekuak? Arazoa behera hautsi dugu, baina ditugun egia esan, ez dakit horren zati arazoa oraindik dugu bilatzen ari zaren, besterik ez 2 aldagai horiek izatea. Beraz, pixka bat gehiago behar dugu, ondoren, n 0 baino handiagoa den bitartean. Jakin behar dugu non duen n gure benetako array dago. Beraz, ez dute inor a lerro hau aldatu? Lerro honen gehienak da primeran zuzena. Ba al dago gain beste bat? Daiteke zerbait kanpo n swap dugu lerro honetan pixka bat hobea? Mm-hm? STUDENT: Ezin aldagai bat abiarazi duzu duten ikusiko orduan erabiliko n luzera bezalako geroago funtzioa? JASON Hirschhorn: Beraz hasieratu n luzera aldagai bat, eta geroago hori erabili dugu? Baina gero eguneratu besterik ez dugu luzera eta guk oraindik ere arazo hau exekutatu non gauden moztu gure arazoa luzera, baina inoiz ez dakigu non, benetan, luzera duten mapak kalera. STUDENT: hori ez dela gertatuko geroago, esaten ari zaren, bilatu utzi, bilatu ezta? Desberdin bat joan zaren zure area - JASON Hirschhorn: zu joango gara eremu bat, baina nola ez dugu ezagutzen dira joan? Matrizearen eta hau besterik ez dugu bada n, nola ez badakigu nora joan array. Bizkarrean, bai? STUDENT: Ez duzu, bezala, txikiagoa lotuak eta goiko bat aldagai doazen edo horrelako zerbait? JASON Hirschhorn: Ados. Beraz, hau ideia bat da. Baizik eta, besterik gabe, jarraipena baino tamaina, segimendua dugu beheko eta goiko aldagai lotuak. Beraz, nola ez tamaina kalkulatzeko dugu txikiagoa loturik eta goi-muga? [AHOTS INTERPOSING] JASON Hirschhorn: Kenketa. Eta, gainera, beheko jarraipena lotuak eta goiko lotuak jakin dezagun, dira bilatzen dugu bi hauek? Bilatzen ari gara bi hauek hemen? Erdiko bi bilatzen ari gara? Ziurrenik ez erdiko bi, zeren hau, hain zuzen ere, bilaketa bitarra da. Baina orain tamaina eskuratu ahal izango dugu, baina, halaber, array-mugak. Funtsean, gure erraldoi badugu telefono-liburua, hura erauzi dugu erditik. Orain badakigu non txikiagoa telefono-liburua da. Baina zu ez benetan erauzten dugu telefono-liburua erditik. Oraindik ere, jakin behar dugu non gure arazoa mugetatik berria da. Du inor edozein zalantza horri buruz? Bai? STUDENT: Nahi lan bat sortuz ezazu aldakorra, i, orduan besterik ez duzu mugitzeko duten i bere erlatiboa posizioa uneko posizioa, eta luzera, n? JASON Hirschhorn: Eta zer da i? STUDENT: i egoteko moduko bezalako Like - Bezala abiarazi nahi duzun i izango da array posizio erdian. Eta gero, bada posizioan balioa i aurkitu array erdian balioa izan behar duzun baino gutxiago, i orain array luzera bihurtzen, gehi i balioa 2 arabera banatuta. Bezala, ikus-i filmea duzu - JASON Hirschhorn: Eskuin. STUDENT: - erabakitzen ditu - JASON Hirschhorn: Beraz ia nago positiboa egingo duten lan. Baina puntu izakia, bi behar duzun informazio zuzenak hemen. Egin ahal izango duzu hasieran eta amaieran ere, edo egin dezakezu tamaina, eta, ondoren markatzaile batzuk. Baina bi pieza behar duzun Hemen informazio. Ezin duzu get by bakarrarekin. Du zentzua? Beraz, bidez joan da joan, eta egin dugu [INAUDIBLE] eta markatzaile batzuk sortu. Beraz what'd zure kodea idatzi duzu? STUDENT: int esan dut doazen bat da 0 berdinak. JASON Hirschhorn: Dezagun dei int horretan, hasieran. STUDENT: Ados. JASON Hirschhorn: Horregatik niretzako zentzu gehiago. Eta? STUDENT:, esan dut nik asmatu, int bukatzen. JASON Hirschhorn: int bukatzen. STUDENT: Uste dut, n ken 1, edo horrelako zerbait. Bezala, azken elementua. JASON Hirschhorn: Beraz, idatzi duzu, int berdinen 0, puntu eta koma, eta int hasita amaiera berdinen n ken 1, puntu eta koma. Beraz, funtsean, zer egiten ari garen Hemen, 0 lehen postua. Eta dakigunez matrizeren, ez dute joan n arte, gora joan ziren eta 1 n ken. Beraz, gure array mugetatik batzuk ditugu. Eta hasierako mugetatik horiek gertatuko izan gure arazoa hasierako mugetatik. Ados. Beraz, ona soinuak. Ondoren lerro horri, atzera egin dugu bada, berriz, zerrendaren luzera 0 baino handiagoa, zer-n ordez, egin beharko lukete jarri dugu hemen? STUDENT: ken hasieran bukatzen idaztea. JASON Hirschhorn: ken bukatzen bitartean hasten da 0 baino handiagoa? Ados. Eta, ezin izan genuen nahi dugu osatzen duten pixka bat ikusgarriago, zer bestela egin genezake? Garbitu nahi badugu kode hori pixka bat sortu? Nola egin dezaket 0 du ezagutu ditugun kentzeko? Hau estilo galdera bat besterik ez da. Zuzena da oraintxe. STUDENT: Amaitu ez du Hasieran berdinak? JASON Hirschhorn: zer egin ahal dugu? [AHOTS INTERPOSING] STUDENT: Amaitu da handiagoa? JASON Hirschhorn: Bai. Besterik egin dezakegu amaitzeko bitartean hasieran baino handiagoa da. Eskuinera. Beste aldera hasita erantsi dugu hori, eta got 0 kentzeko dugu. Beraz, hori itxura bat bit garbiagoa gutxi. Ados. Beraz, zerrenda luzera 0 da, berriz, idatzi dugu horretan, amaitzeko, berriz, handiagoa da hasita baino. Beharrezkoa gure jarri goaz kizkur, eta, gero, lehenengo gauza egin nahi dugun da begiratu zerrenda txiki batean horiek. Duzu? Ezin me ematen dizu - STUDENT: bada parentesi balioa kortxetea - JASON Hirschhorn: parentesi bada balioa kortxetea. STUDENT: amaitzeko 2 arabera banatuta. JASON Hirschhorn: amaitzea? STUDENT: zure sarean arazo bat ikusten dut - JASON Hirschhorn: Ados. Beno, erdialdera begiratu. Nola dakigu erdian zer den? Bai. Hargatik nau kodea duten ezabatzeko. Nola dakigu erdian zer den? Ezer, noiz hasieran duzu eta amaieran, nola ez, aurkituko duzu erdian? STUDENT: You batez bestean. STUDENT: horiek gehi elkarrekin eta gero - JASON Hirschhorn: Gehitu itzazu elkarrekin, eta ondoren? STUDENT: eta batez besteko duzu. Zatitzea 2 gehitu. JASON Hirschhorn: Gehitu itzazu elkarrekin eta 2 eta zatitzea. Beraz, int erdian berdin? Tom, bertan eman dezakezu niri? STUDENT: hasieran plus amaitzeko - JASON Hirschhorn: Hasiera plus bukatzen. STUDENT: Guztiak, parentesi, 2 arabera banatuta. JASON Hirschhorn: Guztiak, parentesi artean, 2 arabera banatuta. Beraz, erdian ematen dit ezer, zuzentzeko? STUDENT: hura biribiltzeko sortu ere egin beharko duzu. JASON Hirschhorn: Zer egiten duzu esan nahi, hura biribiltzeko sortu behar dut? [AHOTS INTERPOSING] STUDENT: Horregatik da bitxia bada zenbakia, ondoren egin bezala - JASON Hirschhorn: Beno, OK. Beraz biribiltzeko ezin dut sortu. Baina kopuru bitxia, 5 bat izanez gero, ahal ditut hartu 1 Erdigunetik urrun. Edo baita zenbaki bat bada, hobeto esanda, Hori horrela hobea da. Da 4 bada, 4 besterik ez dugu, hartu ahal izango dut lehen "erdian", aurrekontua, unquote edo Bigarren "erdiko" bat. Bai bilaketa bitarra bat lan litzateke, beraz, ez benetan behar dut biribiltzeko. Baina bada beste gauza bat da I Behar den begiratu lerro. Agian ez gara konturatzen da oraindik, baina etorri egingo da itzuli dugu. Benetan lerro hau oraindik delako beste gauza bat behar du. Baina, orain arte, idatzi dugu lau kode lerro. Lortu dugu gure hasieran eta markatzaileak bukatzen. Gure berriz, begizta, zein mapak dugu zuzenean gure pseudocode izateko. Dugu erdian duten mapak ikusten ari zara zuzenean gure pseudocode kalera. Honen erdian doa esango nuke zerrendaren, kode-lerro hau. Eta, ondoren, behin joan erdian behar dugu zerrendan, egin behar dugun hurrengo gauza begiratu gure balioa da ez bada pseudocode lehenago idatzi dugu. Beraz, nola ez egiaztatu dugu bada gure balioa zerrendaren erdian dago? Duzu. Zergatik ez duzu hau? STUDENT: bada gure balioa en da erdian da berdina ezarri dugu edozein dela - Berdina esan nahi dut - JASON Hirschhorn: It - Ados. STUDENT: ez nago ziur zer aldakorra bilatzen ari gara nahiz eta delako - [AHOTS INTERPOSING] STUDENT: [INAUDIBLE]. JASON Hirschhorn: Zehazki. Funtzioaren adierazpenean bakoitzeko, balio bat bilatzen ari gara. Beraz, balio bat bilatzen ari gara balioak array bat. Beraz, zehazki eskubidea. Egin ahal izango duzu, bada paren balioa parentesi erdian itxita parentesi berdinen balioaren bestekoa, eta barruan ez dago zer egin behar dugu? Bada gure balioa en han, zer egin behar dugu? [AHOTS INTERPOSING] STUDENT: Return zero. JASON Hirschhorn: itzuli egia. STUDENT: itzuli egia. JASON Hirschhorn: Michael, zer egin du linea hau? STUDENT: [INAUDIBLE] programa exekutatu bere ikastaroa, eta hori baino gehiago, eta zer egin behar duzun duzula? JASON Hirschhorn: Programa edo zer? Kasu honetan? STUDENT: funtzioa. JASON Hirschhorn: funtzioa. Eta, beraz, edozein izanda ere deitzen itzultzeko da eta eman balioa, egia. Zehazki eskubidea. Nagusia. Zer da bueltan mota nagusienetakoa, Michael? STUDENT: int, osoko zenbaki? JASON Hirschhorn: int, zehazki. Zenbaki oso bat. Hori izan zen galdera bat ziurtatu besterik you guys dute gainean egon. Zer esan nahi du itzuli ohi da, bada gauza guztiak ondo funtzionatu? STUDENT: Zero. JASON Hirschhorn: Zero. Zehazki eskubidea. STUDENT: hau besterik itzultzen Egia bada, ez da ez ari emandako informazioa buruz zer - Oh, hori besterik esaten duten balioa array barruan. JASON Hirschhorn: Zehazki. Programa hau ez da informazioa emanez non zehazki balioa da. , Bakarra da esaten, bai, aurkitu dugu da, edo ez, ez dugu aurkituko. Beraz zenbaki aurkituz gero, itzultzeko egia. Beno, egia esan, besterik ez genuen benetan azkar bat kode-lerro horretan. Beraz mugitu dut pseudocode-ildo horretan. STUDENT: Ez behar dugu array aldatzeko? Balioak, ez balioa izan behar du, ezta? JASON Hirschhorn: Barkatu. Eskerrik asko. STUDENT: Bai. JASON Hirschhorn: Lerro honek balioak izan beharko luke. Zehazki eskubidea. Ados. Beraz, erdiko zerrenda begiratu dugu. Zenbakia aurkitu bueltan egia bada. Jarraitu gure pseudocode batera, bada erdiko handiagoa da, bilaketa utzi. Beraz izan hemen dut, bada zenbaki handiagoa, bilaketa utzi. Konstantino, ezin emango dizu me kode-lerro hau? STUDENT: erdiko balioa bada - JASON Hirschhorn: Beraz balioa bada - paren baloratzen parentesi bada Erdigunetik hurbil bracket - STUDENT: balioa baino txikiagoa da? JASON Hirschhorn: baino gutxiago da. STUDENT: balioa baino gutxiago. JASON Hirschhorn: Balio. Beno, egia esan, nahi duzun check zenbakia bada - Barkatu. Hau da, apur bat nahasia. Baina bestela bada zenbakiaren zerrendaren erdian handiagoa da. STUDENT: Oh, OK. JASON Hirschhorn: aldatu dut. Erdiko handiagoa da, bestela bada, dugu ezker bilatu nahi, OK? Eta zer barrutik egiten dugu honetan baldintza bada? STUDENT: Ezin aldaketa txiki bat egin dut baldintza, alda ezazu, bestela, nahi izanez gero? JASON Hirschhorn: Else gero? Ados. Beraz, kode hau exekutatu egingo buruz bera. Baina, gero, bestela erabiliz buruz gauza polita da , bada, bestela bada, edo bada, bestela bada, bestela esan nahi du soilik horietako bat da, joan egiaztatu, ez denak hiru, potentzialki. Eta hori egiten du pixka bat hori da ordenagailuan ikusgarriago zure programa exekutatzen. Beraz, [? Constantino,?] baloreak izanez gero lerro honen barruan dugu, bestela, parentesi erdian ixteko kortxetea balioa baino handiagoa da. Zer egin behar dugu? Ezkerretik bilatu behar dugu. Nola egin behar dugu? Emateko Irteeran bat noa. Izeneko bi gauza horiek ditugu hasten eta bukatzen. Beraz, zer gertatuko beharrak hasierara? Ezkerraldean bilatu nahi baduzu zerrenda, gure egungo hasieran lortuko dugu. Zer egin behar dugu? STUDENT: hasieran ezarri dugu erdiko gehi 1. JASON Hirschhorn: Beraz, bada gara ezkerretik bilatzen? STUDENT: Barkatu, erdiko ken - beraz amaiera erdian izango litzateke ken 1 eta hasieran - JASON Hirschhorn: Eta zer hasieran gertatzen da? STUDENT: berdin jarraituko du. JASON Hirschhorn: Beraz, esanahi bera egonaldiak. Dugu ezkerretara bilatzen bazabiltza, gaude Hasieran bera erabiliz - zehazki eskubidea. Eta amaitzeko? Sentitzen dut, zer ez du berriro berdina amaitzeko? STUDENT: Erdi ken 1. JASON Hirschhorn: Erdi ken 1. Orain, zergatik ken 1, eta ez bakarrik erdian? STUDENT: erdian kanpo dago Irudia dagoeneko, izan genuelako egiaztatu dela, ezta? JASON Hirschhorn: Hori zehazki eskubidea. Erdian Irudian kanpo dago. Egiaztatuko dagoeneko dugu erdian. Beraz, ez dugu nahi "erdian", aurrekontua unquote, hemen egon jarraitzeko array bila ari garela. Beraz, hau zoragarria da. Bestela balioak parentesi erdiko handiagoa bada balioa bukatzen berdinen baino erdiko ken 1. Jeff, zer azken lerro horri buruz? STUDENT: bestek. Balioen erdiko da balioa baino gutxiago? JASON Hirschhorn: gurekin izango me bestela ematen ari zara. Beraz, ez baduzu emaidazu - STUDENT: Orduan hasten erdiko gehi 1 izango litzateke. JASON Hirschhorn: hasieran berdinen erdiko plus 1, berriro ere, gauza bera Horregatik Constantino eman zigun lehenago. Eta amaieran, ez du ematen duten me kode lerro bat oraindik? Itzultzeko faltsua, Aleha, zer egin, hemen idazten dugu? STUDENT: Return faltsua. JASON Hirschhorn: Return faltsua. Eta hori egin behar dugu, izan ere, badugu ez dute aurkitu, esan behar dugu ez zuen aurkitu. Eta itzultzeko goaz esan genuen bat bool, beraz, behin betiko dugu itzultzeko bool nonbait bat. Hargatik exekutatu kode hau. Benetan naiz joan - beraz Oraindik terminalean dugu. Gure leihoa garbituko dugu. Dezagun Egin guztiak. Aurkitu dugu errore bat dago. On line 15 errore bat, espero ez dago du amaieran puntu eta koma adierazpenean. Beraz, zer ahaztu dut? STUDENT: Puntu eta koma. JASON Hirschhorn: Puntu eta koma hementxe gora. Uste dut hori izan zen Tom-en kodea. Beraz, Tom, [INAUDIBLE]. Just kidding. Dezagun guztiak berriro egin dezaket. STUDENT: Zer Dropbox directory behar izan dugu hau egiteko? JASON Hirschhorn: Beraz, ahal duzun besterik ez bit hau ikusteko. Baina, berriro ere, hau mugitu nahi baduzu Zure pset3 direktorioan kode saiatu it out, zer egin nuen hori. Duzu hemen nabarituko bada egingo - Barkatu, galdera ona. [? LS,?] Izan hemen dut find.c kodearen Aste honetan distro kodigoa. Helpers.h daukat. Make-fitxategi hori dut egia esan behar dut editatutako pixka bat berri horiek sartzea fitxategiak idazten ari gara. Kodea duten guztien eskura, ezin izango da banaketa-kodea, baina berria Egin fitxategi batean, helpers.h fitxategi berri izango erabilgarri egongo online deskargatzerik. Berriz ere, beraz, horiek dira kodeak estra dugu. Beraz, guztiak, lerro hau bakoitzeko, egiten jakiteko, bitarra, burbuila aukeraketa - marka denak hiru eta sartu biltzen kodea aurkitu exekutagarri hau. Beraz, oro har, ez dugu nahi zuzen check50 izateko. Gure kabuz probak batzuk exekutatu nahi dugu. Baina besterik ez, beraz, pixka bat hau azkartzeko ahal izango dugu, check50 2013 pset3.find igaroko nire txarra - helpers.c-in. Ez dut oraintxe dutela. Beraz, benetan ari gara joan benetako kodea exekutatu. Usage.find /, zer esan nahi duen badakizu? STUDENT: segundo bat behar duzu komando lerroko ezazu. JASON Hirschhorn: behar dut Bigarren komando-lerro bat. Eta zehaztapen bakoitzeko, behar dut zer bilatzen ari gara sartzeko. Hargatik begiratu 42. Egiten jarraituko dugu ordenatuko dira, zeren dugun oraindik ez dute idatzizko moduko funtzio bat - 42, 43, 44. Eta Kontrol D ez zuen aurkituko du Lastategi batean orratz. Hori da txarra. Behin betiko han. Dezagun saiatu beste zerbait utzi. Agian dut jarri delako hasiera arte. Egin dezagun 41, 42, 43 utzi. Hor dugu. Aurkitu da. Dezagun jarri amaieran orain, besterik hain sakon izan ahal izango dugu - 40, 41, 42. Ez nuen orratza aurkitu. Beraz, lehenago aipatu dut. Zoritxarrez, hau banekien zen gertatuko. Baina helburu pedagogikoa egiteko, ona da aztertzeko. Ez du funtzionatzen. Arrazoiren batengatik, ezin du aurkitu. Badakigu zer han, baina ez daukagu ​​aurkitzeko. Beraz, gauza bat egin ahal izan genuen da bidez joan GDB aurkitu nahi du, baina ez du inor, GDB zeharkatu behar izan gabe, izan bat non izorratu dugu zentzurik? [? Madu? ?] STUDENT: egon liteke bukatzen denean uste dut Hasieran berdina da, eta hori da bakar-elementu zerrenda bat. Ondoren muzin besterik ez da ordez du benetan da egiaztapena. JASON Hirschhorn: Hori zehazki eskubidea. Amaiera berdinen denean hasieran, egiten dugun oraindik ere gure zerrendan elementu bat izan? STUDENT: Bai. JASON Hirschhorn: Bai, hain zuzen ere, dugu bat eta elementu bat bakarrik izan. Eta hori izango da seguruenik gertatuko denean, kodearen probatu dugu per, are dugu Lastategi du edo, aurrealdean Lastategi amaieran. Hori da, non, hasieran eta amaiera da berdina joan bata, bilaketa bitarra. Beraz, bi kasu horietan, ez du funtzionatzen, bukatzen delako hasieratik berdintasuna izan zen. Baina bukatzen bada hasieran berdina da, exekutatu du, berriz, begizta hau? Ez da. Eta egiaztatu egin ahal izan genuen berriro GDB bidez. Beraz, nola egin dezaket kode hau konpondu dugu, zeren denean bukatzen berriz berdina da hasita, hau ere nahi dugu exekutatu begizta bitartean. Beraz, zer fix daiteke 18 lerro egin dugu? STUDENT: [INAUDIBLE] handiagoa da baino edo berdina. JASON Hirschhorn: Zehazki eskubidea. Amaiera baino handiagoa den bitartean edo hasieran berdina. Beraz, gaur egun, ziur hori lortzeko egiten dugu amaieran izkina kasu. Eta ikus dezagun. Dezagun exekutatu ko denbora gehiago honetan. Dezagun guztiak. Berriz ere, izan besterik ez duzu jarraitu batera hemen. Aurkituko 41 une honetan. Horretarako, mantendu da koherentea. Aurkitu 42. Dezagun jarri hasieran - 42, 43, 44. Aurkitu dugu. Beraz, hori izan zen, hain zuzen ere, aldaketa egin behar dugu. Duten kodetze dugu asko izan zen besterik egin, bilaketa bitarra. Du inor baino lehen edozein zalantza Mugitu idatzi dugu lerro sartu dut bilaketa bitarra edo nola hurrena dugu zer irudikatu genuen kanpora irten? Aurretik mugitzen, seinalatu ere nahi dut dela eta handiak daudelarik, kartografiatu dugu gure sasi-kode bat gure kodea kalera bat. Izan genuen gauza delikatua dela irudikatu duen hasten eta bukatzen. Baina zuk ez duten figured out, you nahiko askoz idatziko zukeen du berdin-kodea, gorde goiko bi lerro horiek. Eta orduan konturatu zukeen denean Egin duzun egiaztapen eta kasuetan duen beste zerbait egin behar duzu. Zuk jarraitu izan balu, beraz, nahiz eta gure sasi-kodea linea nahi, dut, nahi duzun bi ildo baina guztiak ahaztuak idatzi behar duzu kodea. Eta apustua prest izango nuke zuk guys Denek hurrena litzateke hori nahiko azkar, jarri behar zenuen markatzailea nolabaiteko han irudikatu non zinen daudelarik. Berriro, egiteko potentzia da sasi-kodea denbora aurretik. Beraz, logika, lehen egin ahal izango dugu, eta ondoren sintaxia kezkatu ahal izango dugu. Izan logika buruzko nahastu dugu sido bitartean C kode hau idatzi nahian, dugu ahaztuak zukeen voodoodoll. Eta orduan guk be buruz galderak litzaidake logika eta sintaxia eta ixtea horiek guztiak elkarrekin. Eta ahaztuak genuke galdutako zer azkar bihurtu batean Oso zaila da arazo. Hargatik mugitu orain aukeraketa sort zen. 20 minutu utzi behar dugu. Beraz, sentimendu bat ezin izango dugu gai daukat aukeraketa sort guztietan barrena, eta burbuila sort. Baina utzi gutxienez saiakera gurekin aukeraketa sort amaitzeko. Beraz, aukeraketa ezartzeko ordena erabiltzen ari da funtzioa adierazpena jarraituz. Berriz ere, hau da ateratako arazo multzo zehaztapena. Int balio da parentesi artean, ez da zenbaki osoen array bat. Eta int.n array duen tamaina da. Aukeraketa sort va array hau ordenatzeko. Beraz, gure buruko aukeraketa eredu bakoitzeko ordenatu, tira dugu - Lehenengo, zerrendan zehar aurrena joan gara ordua, aurki kopuru txikiena, jarri hasieran, aurkitu bigarrena kopuru txikiena, jarri diren bigarren postua nahi dugu goranzko ordenan ordenatu. Ez dut idazten duzun behartuz sasi-kodea oraintxe. Baina kodearen egin aurretik dugu klase bat bezala Bost minutu, ari idatzi dugu sasi-kodea beraz zentzu batzuk ditugu of nora goazen. Beraz saiatuko sasi-kodea idazteko zure kabuz. Eta, ondoren, hori pizten saiatuko sasi-kodea kodea sartu. Horretarako aukera izango dugu talde gisa bost minututan. Eta, jakina, utzi naute bada Edozein zalantza izanez. STUDENT: Hori da? JASON Hirschhorn: Ikusi noraino duzun daiteke bi minutu gehiago lortu. Ulertzen dut ez duzu izan nahi du amaitu. Baina dugu talde gisa honetan zehar joango. Guztiak beraz coding zaren [INAUDIBLE], beraz, naiz Sentitzen zer egiten ari zaren pausatu. Baina dezagun talde gisa joateko honen bidez. Eta berriro ere, bilaketa bitarra, emango dizu guztiak niri inork ez badu kode lerro gehiago. Eskerrik asko horretarako. Gauza bera egiten dugu Hemen, elkarrekin kodea talde gisa. Beraz, aukeraketa sort - en idazten utzi azkar sasi-kodea batzuk. Eredu mental bakoitzeko, norbaitek eman dit la sasi-kodea lehen lerroan, mesedez? Zer egin nahi dut? STUDENT: bitartean zerrendan barrutitik kanpo dago. JASON Hirschhorn: Ados, berriz, Zerrendako ordena da. Eta zer esan nahi duzu "kanpo?" STUDENT: bitartean [INAUDIBLE] ez du ordenatuko dira. JASON Hirschhorn: bitartean zerrendan barrutitik kanpo dago, zer egiten dugu? Give me bigarren lerroan, mesedez, Marcus. STUDENT: Beraz, aurki hurrengo txikiena kopurua. Honek koska egingo da. JASON Hirschhorn: Beraz aurkitu du hurrengo zenbaki txikiena. Eta gero, norbaitek? Behin hurrengo txikiena aurkituko dugu zenbakia, zer egiten dugu? Aurkitu esan noa kopuru txikiena. Hau da, zer egin nahi dugun. Beraz, zenbaki txikiena aurkitu. Orduan, zer egiten dugu? STUDENT: [INAUDIBLE] hasieratik. JASON Hirschhorn: Barkatu? STUDENT: Jarri batean zerrendaren hasieran. JASON Hirschhorn: Beraz gorde hemen zerrendaren hasieran. Eta zer gauza behar dugu hasieratik izan zen zerrendaren, ezta? Zerbait gainidatziz ari gara. Beraz, non ez duten jarri dugu? Bai, Anna? STUDENT: Non txikiena zenbakia izan da? JASON Hirshhorn: Beraz jarri hasieran zerrendaren non kopuru txikiena izan zen. Zerrendako ordena da, beraz, bitartean, jakin kopuru txikiena, gorde hemen zerrendaren hasieran, jarri zerrendaren hasiera-hasieratik bertan kopuru txikiena izan zen. Marcus, dezakeen lerro hau rephrase duzu Zerrendako ordena deno? STUDENT: bitartean zenbakiak ez dira ordenatuko? JASON Hirshhorn: Ados, beraz, ordena Ezagutzen duten zenbakiek ez dute ordenatuta, zer egin behar dugu? Zenbat behar dugu Zerrenda honen bidez joan? STUDENT: Beraz bat asmatzen dut loop, edo berriz, zenbakiak egiaztatuko bitartean ez da hain zerrendaren luzera baino? JASON Hirshhorn: Ados, hori ona da. Uste dut I misphrased nire galdera gaizki. Besterik ez ziren iritsi nintzen saiatzen joan behar dugu zerrenda osoa bitartez. Zerrendako ordena da, beraz, bitartean, niretzat, gogorrean mapatzeko da. Baina, funtsean, hori nola Hau pentsatzen dut. Zerrenda osoa pasatzen, aurkituko du kopuru txikiena, jarri diren hasten - benetan, eskubidea zaren. Dezagun biak jarri. Zerrendako ordena da, beraz, bitartean, dugu Zerrenda osoa zehar joan behar behin, aurki txikiena zenbakia, leku zerrendaren hasieran da, jarri zerrendaren hasieran bertan kopuru txikiena izan zen, eta ondoren, baldin zerrenda da oraindik ordena, dugu honen bidez lortu prozesua berriro, ezta? Horregatik, aukeraketa ordenatu, Big-O exekuzio aukeraketa ordenatzeko, edozeinek? STUDENT: n karratu. JASON Hirshhorn: n karratu. Marcus eta ni konturatu bezalakoa delako Hemen, nahi behar dugu zerrenda zerrendan zehar joan zenbat aldiz. Beraz zerbait igaro luzera n n aldiz zenbaki da hain zuzen ere, n karratu. Beraz, hau da gure pseudocode. Honek itxura oso ona. Du inor edozein zalantza pseudocode buruz? Benetan aukeraketa sort hori behar duelako Ziurrenik bat etorri bat, kodea etara pseudocode. Beraz buruzko edozein pseudocode logika? Mesedez eskatu du orain. Aukeraketa sort - zerrendatik kanpo dagoen bitartean ordena, horren bidez joan goaz eta jakin txikiena aldi bakoitzean eta jarri aurrealdean. Zerrendaren ordena, ezin atera da, beraz, berriz norbaiti eman dit kode lerro bat nork Ez eman dit lerro bat Oraindik kode, mesedez? Soinuak zer bat bezala? STUDENT: Hori da, bat begizta. JASON Hirshhorn: It soinuak Nahi bat begizta. Ados, ezin me ematen dizute begizta for? For - STUDENT: i berdin 0. JASON Hirshhorn: i edo - zer ari gara falta? Zer doa hementxe? STUDENT: Int. JASON Hirshhorn: Zehazki. (Int i = 0; - STUDENT: i