>> [Glazba svira]
[MUSIC - Rossinija, "RANZ DES VACHES "iz William Tell]
>> [MUSIC - ENGLISH BEAT, "OŽUJKA Pomoć okretne glave "]
>> [PLJESAK i pljeskati]
>> DAVID Malan: Dakle, ovo je CS50.
Moje ime je David Malan.
I 73% od vas nemaju prethodnog iskustva uz računalne znanosti,
suprotno onome što možda mislite.
Dakle, danas smo mislili da bi čip daleko na toj nedostatka poznavanja, ali i
daje vam osjećaj, za one od vas s više udobnosti, pravaca
možete ići ovaj semestar.
>> Dakle, krenimo s ovim.
Ja stvarno nemam pojma što je unutra Računalo, iako, kao i ti, ja
ga koristiti svaki dan.
Ali to je nekakav okvir, a tu je mnogi ne ulazi u nju.
Minimalno, tu je, što?
Vjerojatno kabel za napajanje.
>> I doista, s ovim jednog sastojka, električne energije, kao da se nalazimo u stanju
radi vrlo malo ovih dana.
Ali na kraju dana, mi moraju zastupati stvari
da mi je stalo.
Imamo informacije da predstavljaju u nekom obliku.
I vjerojatno ste barem maglovito upoznati s idejom prema binarnom ili
bitovi nekako, računala smanjena na jedinica i nula.
No, možemo prihvatiti da se i najmanje staviti malo svjetla na to?
>> Dakle, moram to malo stolna lampa ovdje.
Imam utičnicu ovdje.
I ja ću predložiti da se unutar moje računalo je barem jedan od
te stvari, nešto sposobno da bude uključen ili isključen.
U ovom slučaju, to je doista stolna svjetiljka, , ali na nižoj razini, što je nešto
zove tranzistor.
>> No, u našem svijetu, to je stolna svjetiljka, tako da Ja ću ići naprijed i uključite ovu
u moju struju ovdje.
A ja tvrdim da je koristeći ovaj jednostavan, Jednostavan uređaj, to jednostavno promjena, sam
može predstavljati informacije.
Na primjer, upravo sada, ja sam predstavlja ništa, zar ne?
Ja predstavlja ono što ću nazvati 0 ili netočno, suprotno od nečega
zapravo bio prisutan.
Ali, ako sam jednostavno okrenuti taj argument, Sada sam predstavljao jedan.
Dakle, pomoću ovog vrlo jednostavan komad memorije, ako hoćete, ja mogu predstavljati
Informacije.
>> Sada, nažalost, moje računalo Ne mogu učiniti sve što je puno.
To samo može predstavljati dvije vrijednosti u cijelom svijetu -
0 ili 1.
No, ono što je očito rješenje, sada, ako želimo proširiti naše računalo '
memorije i predstavljaju više nego samo 0 i 1?
>> Pa, neka je zgrabiti još jedan takav zalogaj.
Idemo zgrabite drugi prekidač, još jedna tranzistora, kako god želite
razmišljam o tome.
Dopustite mi da ide naprijed i uključite ovu u moje računalo kao dobro.
I ja ću tvrditi, sada, da pomoću malo više električne energije i
više okreće od tih prekidača na i off, ja mogu predstavljati više kao
Informacije.
>> Pa sad, ovo je jedan.
Ako želim sada predstavljaju 2, ja bih to mogao.
Ali obično, konvencija, kao što ćemo na kraju vidjeti, morat ću to učiniti.
Dakle, ovo je 0, to je 1.
To će biti 2.
I ne čudi, to bi bilo 3.
>> Dakle, na ovaj način, ipak, mogu brojimo do još dalje?
Ako sam dobiti treću malo, treća prekidača, ono što je najviše što mogu sada
brojati do od 0?
Dakle, 7 ako sam počinju na 0, zar ne?
Jer ako sam pretvoriti ovo svjetlo i zapravo priključiti ova treća i konačna
svjetlo u moju električnu utičnicu ovdje, onda imam sposobnost da predstavljaju
bilo koja od dvije vrijednosti, ovdje dvije vrijednosti Ovdje, ovdje dvije vrijednosti -
i tako ja mogu predstavljati dva puta 2 puta 2, ili osam moguće vrijednosti.
A ako počnem računovodstvo na 0, pa da je 0, 1, 2, 3, 4, 5, 6, 7.
>> Dakle, ovaj binarni.
To je uistinu tako jednostavno.
I ja bih tvrditi da je to zapravo prilično upoznat s najviše
svi u ovoj sobi.
Dopustite mi da ide naprijed i otvorite Malo tekst editor ovdje.
>> A možda podsjetiti na osnovnoj školi da smo imali stvari kao što su stotine
mjesto, deseci mjesta, i one place.
I podsjetiti da, ako ste imali neke decimale broj, kao nešto slučajnom
kao i 123, što bi u suštini pišu da se u obliku
ove tri stupca.
I zašto je 1, 2, 3 što znamo kao 123?
Pa, u lijevom stupcu, imamo jedan 100 plus dva 10s, tako da je 120,
plus tri 1S, tako da je 123.
>> Sada ovaj svijet koji smo upravo osvijetljena je točno isti kao
ste bili upoznati s godinama, Osim sada, naši kolumne
nisu ovlasti 10..
To su samo dvije sile.
Dakle, dok to one mjesto, taj će biti mjesto dvojke, ovo je
će biti mjesto kormilara.
>> I zato sam samo sam koristeći najjednostavniji mehanizama da se stvari
na i off - struja teče ili struja ne teče -
Ne sasvim su isti izražajan Raspon kao 0 kroz devet.
Idemo da bi to super jednostavno u ovom svijetu računala.
Ja imam samo 0 ili 1 -
ili isključiti, lažna ili istinita.
>> I tako ono što sam zastupa upravo sada je 1, 1, 1, jer je svaki od tih
svjetla svijetli.
Pa, to mi daje jednu četiri plus jedan dva, tako da to je 6, 1 plus jedan, a to je 7.
I ergo se ovaj niz od tri bita predstavljaju broj 7.
>> Dakle, sve ovo vrijeme, unutar vašeg Računalo, je bilo koji broj
tranzistora, bilo koji broj bitova.
Ali na kraju dana, mi može predstavljati informacije
jednostavno kao da.
Sada, nažalost, možemo samo sam broje do 7 u CS50 do sada, ali
nadamo se da možemo napraviti malo bolje od toga.
I doista možemo.
>> Smatram da mi kao ljudi samo samovoljno odlučio da idemo
povezati brojeve poput 1 i 2, 3, 4, 5, 6, 7, sa specifičnim slova
abeceda.
I to zbog povijesnih razloga, ja ću počnete nešto proizvoljno, ali ja sam
će reći, ljudi, mi smo idući u odlučiti kao standard, na globalnoj razini, kako
65 predstavlja broj slovo A. 66 predstavljat će B. točka, točkica, dot.
90 će predstavljati slovo Z.
>> I pretpostavimo, ako stvarno staviti neke Mislio u nju, mogli bismo doći do
s brojevima za uskličnika i mala slova, i doista,
drugi ljudi su učinili za nas.
Dakle, sada smo imali bitova s ​​kojima možemo predstavljaju brojevi, brojevi s kojima
možemo predstavljaju slova, te s slova možemo sada početi sastavljati
e-mailove i tiskanje znakova na zaslonu.
>> Pa neka mi pozivamo, ako sam mogao, Osam hrabrih volontera -
koji ne smeta pojavljuju ne samo na kameru, ali na internetu -
doći ovamo i predstavljaju osam takvih bita, umjesto ove tri.
Dakle, o tome jedan, dva?
Kako oko tri?
Kako o četiri u svjetlu plava, pet na kraju?
O nekim preko ovdje?
Šest ispred, sedam u prednjem, i osam ispred, kao što je dobro.
>> Tako sam samo tako se dogodilo da dođe pripremljena s cijelom gomilom gaćice od papira.
I na tim komadima papira su brojevi koji predstavljaju ono kolumne
ti dečki idu za zastupanje.
Tako da će se - kako se ti zoveš?
>> STUDENT: Anna Lea.
>> DAVID Malan: Anna Lea, što će biti 128s stupac.
Vi ste?
>> STUDENT: Chris.
>> DAVID Malan: Chris će biti 64S stupac.
Vi ste?
>> STUDENT: Dan.
>> DAVID Malan: Dan će biti 32s stupac.
>> STUDENT: Pramit.
>> DAVID Malan: Pramit će biti 16s stupac.
>> STUDENT: Lillian.
>> DAVID Malan: Lillian će biti 8s.
>> STUDENT: Jill.
>> DAVID Malan: Jill će biti 4s stupac.
>> STUDENT: Marija.
>> DAVID Malan: Marija će biti 2s, a?
>> STUDENT: David.
>> DAVID Malan: David biti 1s stupac.
Dakle, ako ti dečki mogli pojačati malo prema naprijed, tako da svatko može vidjeti.
Ono što vi ne vidite da se na natrag od tih gaćice od papira je
malo varati list koji je o tome da podučavati ovih osam bita bilo
podići svoju ruku ili ne podići svoju ruku.
Ako im ruka ide prema gore, oni su predstavlja jedan.
Ako im ruka ostaje dolje, oni su što predstavlja 0.
>> U međuvremenu, mi publika bi trebao biti u mogućnosti shvatiti, na temelju toga
mapiranje, što je tri slova riječi tih ljudi su oko sricati.
Tako je u samo trenutak, idete pročitajte prvu liniju s leđa
Vaš cheat sheet, a vi ste ili ide za podizanje ili ne podizanje ruku.
Ako ste jedan, te podići, ako je ti si 0, što stajati
nezgodno, baš kao da je.
Idi.
Koji broj, prije svega, ovi momci predstavlja?
>> 66.
66, zar ne?
Imamo 1 u 64S stupcu 1 u 2s stupcu.
To mi daje 66, tako da se pojavljuje da predstavlja B. Dakle
ti dečki su napisane -
OK, to je dovoljno.
B.
>> Pa sad idemo na Naš drugo pismo.
Idi.
Tko je najbrži u matematici ovdje?
Tako 79.
Opet, ako zbrojimo sve stupce u kojem postoji 1, trenutno, samo
kao što smo učinili prije sa najjednostavniji primjera 7, mi sada
dobiti broj 79.
Koji se prema našim mapiranje je Pismo O. Tako smo stigli.
B, O. I na kraju, idite.
>> Što su oni danas predstavlja?
Manje konsenzus.
To je samo apsolutna žamor.
Da, to je u stvari 87.
Dobro.
>> Dakle, ako mi sada map to natrag do - hajdemo početi zvati našu ASCII tablicu,
American Standard Code za Razmjena informacija.
To nam daje pismo -
Ne "bo", ali "leptir". I to je savršena znak za vas dvoje uzeti luk
i glavu na leđima.
Puno hvala.
>> [PLJESAK]
>> DAVID Malan: Možete ih zadržati.
Iako zapravo, bi li itko kao stolnu lampu, također?
>> [Trubljenje iz gledališta]
>> DAVID Malan: dnevno svjetlo?
>> [Smijeh]
>> DAVID Malan: Stvarno?
Desk svjetiljke za svakoga?
U redu.
Dakle, počevši s vrlo najjednostavnije Načela, sada smo ne samo broje
gore od 0 pa sve do 7, mi smo Pretpostavlja se da je upravo bacajući više
bita ili više svjetla ili više tranzistori na ovaj problem, možemo
predstavljaju veći i veći broj, i Ergo, veći i veći rasponi
pisma, kao što su engleski.
I samo neka je uzme na vjeri za danas koji slično mogli bismo početi
predstavlja grafike i video zapisa i bilo broj drugih medija s kojima smo si
upoznati danas.
>> Dakle, ovo je CS50, au ovoj klasi uz tebe su, opet, vrlo mnogo
kolege koji imaju što manje iskustvo kao i vi.
A ja spominjem to samo zato sasvim Često, uključujući i nedavno kao jedan od
Brucoš savjetovanje događaje i na Prošlog proljeća je student savjetovanje
događaja, često čujemo studenata odriču kada dolazi do CS stola, pa,
Razmišljao sam o preuzimanju ove intro klase, ali ja sam stvarno ne
Računalo osoba.
Ili, ali svatko zasigurno zna više od mene.
I ja sam ovo staviti u najvećem font moguće, prenijeti tu poruku da je
to je u stvari nije slučaj.
>> A ako se pitate, trebali Ja, u stvari, biti ovdje?
Shvatite da ne samo da je ovaj tečaj je Naslov Uvod u računala
Znanost, to je Uvod u računala Znanost I. Tako je doista
Drugi takav uvod.
Dakle, ti nisi, u stvari, na krivom mjestu.
A među ciljevima koje imam za danas su umiriti takvim slučajevima vas
Možda ima, ali i da se bojite slika onoga što je u spremištu za
učenika manje i ugodnije podjednako na ovom tečaju.
>> Ali prvo, riječi na jednoj od brošure imate danas, među kojima
niz Pitanja.
Prošlo je naša vizija za neko vrijeme Sada uvesti novu ocjenjivanja
opciju u ovaj tečaj - Naime, SAT / UNSAT.
Filozofski za mene, to je mnogo, mnogo, Mnogo je važnije što
učenika u ovom razredu baviti sa Materijal, biti izazvan
Materijal i brige daleko, daleko manje o mehanika stvarnih rezultata
i pismo razreda na semestar end, ali doista zagrljaju
Tečaj i njegov materijal.
I doista to osjeća, općenitije, za ono što je interesantno za njih, kako bi
osjećaju izazvan i nagrađeni, ali bez straha od neuspjeha.
>> I doista, ovo je također ponavlja Tema u ovom i drugim uvodna
tečajevi u drugim područjima, da imaju ovaj strah kada je u pitanju
stavljajući nečije prste u nepoznate vode.
Ja osobno, natrag u 1995, bio brucoš.
Bio sam jako usmjerena na bitak Gov Koncentrator ovdje.
I još uvijek sam odrastao uz malo od interesa za računalne znanosti.
Uvijek sam bio znatiželjan.
>> Ali tada, čak sam imao taj strah od čak koračni nogom u CS50, toliko
, tako da nisam ni dućan je prve godine.
I jedini razlog zašto sam stavio nogu u Vrata student druge godine, jer sam bio
je dopušteno da se to prođe / ne.
No, čak i prolazi / ne zahtijeva da ću dobiti do živca da bi imenovanje
s profesorom Kernehan u to vrijeme, donijeti ovaj veliki list papira, i pitati
ga je za njegov potpis i njegovi Dopuštenje za istraživanje
ove nepoznate vode.
>> I to nije pomoglo u posljednjih nekoliko godina da kad to rade i na CS50, kada smo
Nekada je to bilo pass / fail, slično bi se desetke ili stotine svojih kolega
moraju se, ne daj Bože, na Pročelje Sanders s ovom obliku, da
u nekim glavama predstavlja nesposobnost, Usudio bih se reći, za obavljanje
su svoje vršnjake 'razini.
Što je smiješno, ali ja to mislim Tu je to mentalitet.
I nikada nije bilo u ovoj kulturi od SAT / UNSAT, ili prolaze / ne više
Općenito, na ovom tečaju, ili stvarno na ovom sveučilištu.
>> Tako smo ove godine promijenio.
Ja bih bio presretan polovica ova klasa ili više završila
uzimanje CS50 SAT / UNSAT.
U godinu dana, to bi bilo divno Ako su gotovo svi.
Nakon toga vjerojatno ćemo raditi Na pismo ocjenama na Harvardu
College općenito.
Ali za sada, mi ćemo to učiniti u roku od naših vlastitu sferu, i ja bih od srca
Preporučujemo vam da pregledate i one često postavljana pitanja postavljati pitanja kao što vidite stane, tako da je
nadamo se, za razliku od mene, neće sasvim imaju isti strah faktor kada
istraživati ​​što je vjerojatno nepoznato mjesto.
>> Dakle, ono što je CS50?
To je uvod u intelektualne poduzeća računala
znanost i umjetnost programiranja.
No, što to zapravo znači?
>> Pa, do sada, razgovarali smo ukratko podatke o zastupanju.
No, pretpostavimo da smo zapravo žele nešto učiniti s njom.
Mi moramo uvesti pojam ono što ćemo nazvati algoritam.
Algoritam je postupak, proces, Skup uputa za
radiš nešto.
>> I algoritam može biti nešto super jednostavna.
Na primjer, primjer s kojim neka od vas bi moglo biti poznato je li to
stvar ovdje.
Tako ova knjiga ovdje je sve curom, ali jednom davno, to
sadržavao puno imena i telefonski brojevi.
I doista, ako sam htio pronaći netko u tom telefonskom imeniku -
recimo, netko po imenu Mike Smith -
Sam mogao naći Mike Smith u svakom broju razmjerno jednostavnim načine.
Mogao bih početi na početku i premjestiti na stranicu 1, ne postoji.
Stranica 2, ne postoji.
Page 3.
Je li to algoritam, koji je proces, točno?
>> Dakle, to je točno, zar ne?
Nekako sam idiot za to u koji način, ali s vremenom ću
pronaći prezime S, i nadamo se Mike je u tom dijelu, i ja ću postati
učinio s mojim algoritma.
No, sigurno to nije intuitivno.
Većina svaki razuman čovjek u ovom boravak ne bi učinili.
Što biste vi učinili?
>> Ti bi otišao ravno na sredini, zar ne?
Otprilike na sredini.
I shvatite, oh, to su gđa Dakle, Mike Smith, prezime kao Smith,
Nije, jasno, a zatim u lijeva polovica knjige.
On mora biti prema S je u pravu.
I u ovom trenutku, iako je većina od nas nemojte to učiniti u stvarnosti, možemo
doslovno suzu ovaj problem na pola.
>> [Navijanje i PLJESAK]
>> DAVID Malan: Hvala vam.
>> [Navijanje i PLJESAK]
>> DAVID Malan: Vi doslovno možete istrgnuti ovo Problem je u polovici, ostavljajući me s,
doslovno, problem upola velika.
Dakle, ako ovaj telefon je knjiga - i to Vjerojatno je - oko 1000 stranica, sada
to je samo 500.
Ako sam to učiniti opet i shvaćam, oh, damn, otišao sam predaleko, ja sam u Ts
odjeljku, ja mogu na sličan način -
figurativno ili doslovno -
RIP telefonskog imenika - to je zapravo puno lakše to vrijeme.
Ja doslovno može potegnuti iz telefonskog imenika na pola, ostavljajući me sada s
Ne 1000, ne 500 -
250 stranica.
I ja mogu ići 125, a pola od toga, a upola manji, a polovica da
dok konačno ću biti s lijeve samo jednu stranicu.
>> [Smijeh]
>> DAVID Malan: To je Dio sam uspjeti dalje.
Jedan jednu stranicu na kojoj Mike nadamo se.
Sada su ti različiti algoritmi mogu biti vrsta procjenjuju ili ocjenjuju u
različita načina.
Prvi je bio vrlo linearno, zar ne?
Okrenite stranicu, potražite Mike.
To je vrlo linearno.
Ako postoji još jedna stranica na telefonu Knjiga, to je vjerojatno da će me odvesti
još jedan drugi, još jedna jedinica vremena, Međutim, mi smo računanje vremena.
>> Tako sam mogao privući ovako ovu liniju ovog mjesta, pri čemu kao veličina
Problem povećava s lijeva na desno -
telefonski imenik dobiva manji za veći -
i time će se povećati na vertikalne osi, veća
telefonski imenik je.
Dakle, n je samo opći varijabla koja računalni znanstvenici koriste za zastupanje
neke vrijednosti, neki broj.
Dakle, n ide na povećanje linearno.
Dvaput veličinu telefonskom imeniku, to je da će me odvesti dvostruko više
Vrijeme, najvjerojatnije, naći Mikea.
>> Sada sam mogao biti pametna o tome, zar ne?
Sam bio uzimajući dosadno brzo.
Mogao sam to učinio po paru.
Dakle, dvije stranice, a zatim četiri, zatim šest, od osam.
A mogao sam početi letjeti kroz nju je malo brže, iako manjeg rizika
Mike promašaja, ali to nije kriva će biti sve što je drugačije.
Još uvijek će biti ravna linije, ali malo brže.
>> No, što sam učinio?
Ja sam zapravo učinio nešto bitno bolje.
Postigao sam ono što ćemo nazvati logaritamska Vrijeme, log n, pri čemu se ovaj zeleni
linija ima puno, puno, puno manje ravnalo na njega.
A umjesto toga, on predlaže, kao što je svojevrsni približava beskonačnosti sve to postupno,
da sam zapravo mogao uzeti 1.000 stranica telefonski imenik, udvostručiti svoju veličinu
sljedeće godine - jer pretpostavljam puno više ljudi presele u grad.
>> Tako sada sam dobio 2000 stranica, ali kako mnogo više koraka je da je pametnije
Algoritam će to trajati?
Samo je jedan.
Mislim, to je moćna stvar.
Ako idemo na 4.000 stranica iduće godine, koji će me odvesti
samo još dva koraka.
Tako možete baciti veći i veći Problemi na mene, a ne za razliku webu
bacanje veći i veći problem svaki dan u googles i Facebooks od
svijet, i to ne tako velika stvar.
Zato sam stavio više misli i brige u moj algoritam kojim se rješavaju
problemi učinkovito.
>> I doista, to će biti jedan od ciljevi ovog kolegija.
Vi ćete, usput, naučiti programirati.
Vi ćete naučiti kako programirati u bilo koji broj jezika.
Ali na kraju dana, staza je o rješavanju problema i dobivanje
bolji u rješavanju problema - i, kao u ovakvim slučajevima, rješavanje problema
učinkovitije.
>> Sada do sada, mi smo to učinili prilično intuitivno.
Ajmo uvesti nešto istinito generički zove pseudocode.
Tako smo na kraju ćete doći, u ovom naravno, da
različiti programski jezici.
Ali danas mi ćemo to učiniti na engleskom jeziku, kao što je sintakse, gdje se samo vrsta kažu
što misliš, ali ti si uvijek tako jezgrovit i ne brinite
gramatika i čitavim rečenicama.
Vi samo izraziti sebe kao sažeto što je više moguće.
>> Dakle pseudocode je engleski nalik sintakse koji predstavlja
programski jezik.
I prema tom cilju, neka mi predlažemo da mi sada modelirati proces možemo samo
opisao brojanja nešto malo Drugim riječima, ovaj put uzimajući
pogledajte ovaj pet minuta videa proizvedenog Naši prijatelji na TED-u da
definira što je pseudocode, definira što algoritamski razmišljanje, pa čak i
iako je primjer da ste o kako bi vidjeli je, u samo od sebe, super jednostavna, to je
će početi da nam mentalno Model, vokabular, s kojima se
učiniti mnogo, mnogo složeniji Algoritmi vrlo brzo.
>> [POČETKA video reprodukciju]
>> [Glazba svira]
>> Narator: Što je algoritam?
U računalnoj znanosti, algoritam skup uputa za rješavanje nekih
Problem korak po korak.
Tipično, algoritmi se izvršava pomoću računala, ali mi ljudi imamo
algoritama, kao dobro.
Na primjer, kako bi idete O brojanjem
ljudi u sobi?
Pa, ako ste poput mene, vjerojatno bih Točka na svaku osobu, jedan po jedan
vrijeme, i brojati od 0 do.
1, 2, 3, 4, i tako dalje.
>> Pa, to je algoritam.
U stvari, pokušajmo izraziti ga malo više formalno u pseudocode -
Engleski poput sintakse koja podsjeća programski jezik.
Neka N jednako 0.
Za svaku osobu u sobi, postavite N jednaka N plus jedan.
>> Kako protumačiti ovu pseudocode?
Pa, jedna linija izjavljuje, da tako kažemo, varijabla zove N i inicijalizira
njegova vrijednost na 0..
To samo znači da je na početku naš algoritam, stvar s kojom
Brojimo ima vrijednost 0.
Uostalom, prije nego što počnemo brojati, nismo još ništa broje.
Pozivanje ovu varijablu N je samo konvencija.
Mogao sam to nazvao najviše ništa.
>> Sada linija dva demarks početka petlje, slijed koraka koji će
Ponavljam neki broj puta.
Dakle, u našem primjeru, korak uzimamo broji ljudi u sobi.
Ispod linije dva je tri linije, koji opisuje kako je točno
mi ćemo ići oko brojanja.
Udubljenje podrazumijeva da je linija tri koje će se ponoviti.
>> Dakle, ono što je rekao je pseudocode da nakon pokretanja na 0, za svaku
Osoba u sobi, mi ćemo povećati N do 1..
Sada je ovaj algoritam točne?
Pa, neka je lupati po njemu malo.
Da li to raditi ako postoje dvije osobe u sobi?
Idemo vidjeti.
>> U skladu jednom, možemo započeti s N 0.
Za svaki od tih dviju osoba, Mi smo tada povećajte N do 1..
Tako da se na prvom putu kroz petlje, da nakon ažuriranja N od 0 do 1.
Na drugom putovanju kroz taj isti petlje, da nakon ažuriranja N od 1 do 2.
I tako je ovaj algoritam kraja, n 2, koji doista pristaje broj
ljudi u sobi.
>> Do sada, tako dobro.
Kako o kutu slučaju, iako?
Pretpostavimo da postoje ljudi 0 u sobi - osim mene,
tko radi prebrojavanja.
U skladu jednom, možemo započeti s N 0.
Ovaj put, međutim, tri linije ne izvršavati na sve jer ne postoji
osoba u sobi.
I tako dalje N 0, što odgovara broj ljudi u sobi.
Prilično jednostavno, zar ne?
>> No, s time da su ljudi jedan po jedan je prilično neučinkovit, također, zar ne?
Sigurno možemo učiniti bolje.
Zašto se ne računaju dvije osobe u isto vrijeme?
Umjesto brojanja 1, 2, 3, 4, 5, 6, 7, 8, i tako dalje, zašto se ne računaju, 2,
4, 6, 8, i tako dalje?
To zvuči još brži, i to je sigurno.
>> Idemo izraziti ovu optimizaciju u pseudocode.
Neka N jednako 0.
Za svaki par ljudi u sobi, postavljena N jednaka N plus dva.
Prilično jednostavno promjena, zar ne?
Umjesto broj ljudi jedan u isto vrijeme, umjesto da smo brojati
ih dva u isto vrijeme.
Ovaj algoritam je tako dva puta jednako brzo kao posljednji.
>> No, je li to točno?
Idemo vidjeti.
Da li to raditi ako postoje dvije osobe u sobi?
U skladu jednom, možemo započeti s N 0.
Za taj jedan par ljudi, Mi smo tada povećajte N po dva.
I tako je ovaj algoritam kraja, N 2, koji doista pristaje broj
ljudi u sobi.
>> Pretpostavimo da postoje sljedeći 0 ljudi u sobi.
U skladu jednom, možemo započeti s N 0.
Kao i prije, tri linije ne izvrši na sve, jer ne postoje nikakvi parova
ljudi u sobi.
I tako dalje N 0, što je uistinu odgovara broju
ljudi u sobi.
>> No, što ako postoje tri ljudi u sobi?
Kako se ovaj algoritam zbivati?
Idemo vidjeti.
U skladu jednom, možemo započeti s N 0.
Za par tih ljudi, Mi smo tada povećajte n 2.
Ali što onda?
Ne postoji niti jedan full par ljudi u sobi, tako da dvije linije ne
više ne vrijedi.
I tako je ovaj algoritam kraja, N je još uvijek 2, što nije točno.
>> Doista, ovaj algoritam je rekao da se buggy, jer ima grešku.
Omogućuje zadovoljštinu s nekim novim pseudocode.
Da n jednak 0, za svaki par ljudi u sobi.
Postavite N jednaka N plus dva.
Ako jedna osoba ostane pojedinačna, postavljena N jednaka N plus jedan.
Kako bi riješio ovaj problem, mi smo uveden u skladu četiri,
stanje, inače poznat kao grane da samo izvršavaju ako postoji jedan
osoba koja mi to nismo uspjeli Par s drugom.
I sad, da li postoji jedna ili tri ili bilo koji neparan broj ljudi u
soba, ovaj algoritam sada će ih brojati.
>> Možemo učiniti čak i bolje?
Pa, mogli bismo računati u 3s ili 4s ili čak 5s i 10s, ali dalje od toga, to je
će dobiti malo teško točke.
Na kraju dana, da li izvršiti od strane računala ili ljudi,
Algoritmi su samo set uputa s
za rješavanje problema.
Ovo su samo tri.
Koji bi problem riješiti s algoritma?
>> [END video reprodukciju]
>> DAVID Malan: To je jedini put Ja će se pojaviti u crtanom obliku.
Ali gdje je ta priča prestaje, Sada, je kako možemo učiniti bolje?
Trojkama i četveronoške, tvrdimo, možemo računati ljudi puno brže, ali možemo
to bitno bolje od toga?
A ja kladiti možemo.
>> Ako uvedemo malo naše vlastite pseudocode ovdje, ja ću predložiti
da možemo postići liniju kao što je ovaj.
Nećemo brojati ljude jedan, dva, tri, četiri.
Nećemo ići dva, četiri, šest, osam.
Mi ćemo učiniti temeljno bolje by promišljanje problema, a to
slučaj, utjecati na neki drugi način nedovoljno resursa.
>> U samo jednom trenutku, nadam se da ćete oprostiti i nas humor stoji u
mjesto, na kojem trenutku ćemo pitajte svakog od vas da se u vašem
umovi broj 1.
Nakon toga idemo na sve nespretno, kako vrijeme prolazi, pronašli
netko tko je stajao, kombinirati tvoji brojevi zajedno
dodajući ih se.
Jedan od tebe onda se ide na utrku sjesti sjesti i druga osoba
će se ponoviti.
>> Dakle, drugim riječima, prema sijanje sve da s brojem 1, a zatim
Kombinirajući te 1s u 2s i onih 2S u 4s, sa svima sve
sjedi, treba, na kraju ovaj algoritam, ima samo jedan kredit
duša koja nije sjesti dovoljno brzo, ali tko ima cijelu publiku računati
u svom umu.
>> Dakle, ako bi se, idemo naprijed i - jedan korak - stand up na mjestu.
I izvršavanje.
>> [CROWD mrmljajući]
>> DAVID Malan: Znate li Lauren gdje je?
729?
>> [CROWD mrmljajući]
>> DAVID Malan: U redu?
>> [CROWD mrmljajući]
>> DAVID Malan: U redu, trebali bismo se bliži kraju.
Vidimo jedan kolega je ovdje još uvijek.
Tko još treba biti u paru?
Ako vi želite upariti off.
Netko do vrha.
Zašto ne pružiti ruku ovdje.
Za vrlo malo ljudi koji su još uvijek stoji, ono što ti brojevi
imati u svom umu?
>> STUDENT: 78.
>> DAVID Malan: 78 plus -
tko stoji ovdje?
>> STUDENT: 39.
>> DAVID Malan: Plus 39.
Plus tko još uvijek stoji?
81?
U redu, tko još?
Još 81?
Wow.
I onda ono što je u pozadini?
>> STUDENT: 49.
>> DAVID Malan: 49, plus?
>> STUDENT: 98.
>> DAVID Malan: 98 plus?
Je li to netko drugi?
12?
Dobar posao.
>> [Smijeh]
>> DAVID Malan: Oh, 112 -
oh.
Dobar posao!
>> [Smijeh]
>> [PLJESAK]
>> DAVID Malan: Bilo tko drugi još uvijek stoji?
Nažalost?
>> STUDENT: 99.
>> DAVID Malan: 99.
Bilo tko drugi još uvijek stoji?
A ukupan broj studenata ovdje je zapravo, prema -
imate li broj?
Oh, stvarni broj ljudi u soba, prema računu koji
nastavne momci radili na svačiji način u, bio je 729.
Dakle, iz sobi prepunoj Harvard studenata koji se broje,
Odgovor je 637.
>> [Smijeh]
>> DAVID Malan: Tako blizu.
No, još uvijek.
U redu, tako da je nastava Trenutak, zar ne?
To je ono što mi je sada opisati kao bug.
Negdje usput, jesmo neke aritmetika krivu, ili netko sjeo,
ili lijevo, ili je nešto pošlo po zlu.
Ali to je u redu.
Jer čak i dalje, mi dobio prilično blizu.
I ja bih se tvrditi da smo se krivo odgovoriti na puno brže nego ja bi
koristeći moj više linearno pristup.
>> Dakle, pretpostavimo da je u činjenici da su dobili ispraviti, ali da sada o tome što
se događa svaki put, u odnosu na moje vlastita naivna ukazujući algoritam.
Jedan, dva, tri.
Ako doista postoje 729 ili 637 ljudi ovdje, da bi me uzeti
doslovno 637 ili 729 pointings od prsta i
povećavanjem moje zbrajanje.
A što sam mogao učiniti nešto bolje ide dva, četiri, šest, osam i
udvostručiti brzinu, možda čak i trostruko ili četverokrevetne, ovisno koliko dobro mogu
to računajući u glavi.
>> No, ovaj pristup kako da ga je bio bitno drugačiji.
Jer se u početku, svi vi ustao.
Dakle, sve 729.
I onda doslovno poluvrijeme od vas sjeo.
A nakon toga, još jedna polovica vas sjeo.
>> A ukupan broj puta da Dečki moglo sjeo je otprilike
osam ili devet ili deset puta ukupno, ovisno o tome što naš ukupni zbroj.
A možemo napraviti svojevrsni ovaj drugi način.
Ako smo imali 1024 ljudi u sobi, Ukupan broj puta ste mogli
prepoloviti 1024 ljudi je 10.
>> Sada razmišljam o tome u drugi smjer.
Recimo, smiješno, da smo imali, recimo četiri milijarde ljudi u ovoj sobi,
ili nešto veća soba.
Koliko puta bi smo otišli kroz ovaj algoritam, tako da polovica
te klase sjeda?
To samo će potrajati 32, kao operacija, čak iu klasi veličine
četiri milijarde.
Zašto?
Zbog četiri milijarde ide u dva milijardi kuna, ide na milijun, ide na
500 milijuna, otpada na 250 milijuna kuna, točka, točka, točka.
Ja se samo mogu napraviti tu podjelu neki 32 puta, na kojem trenutku, svi osim
jedna osoba će biti ostavljeni.
>> I to je, također, vrsta moćna Ideja da sve ćemo pokušati
poluga u ovom Naravno, te u programiranje i informatika više
Općenito, ove bakterije iz ideje s koje zatim možemo riješiti probleme puno,
puno moćnije.
Tako smo počeli vrlo jednostavna s tim pseudocode i tip u sobi, ali
Sada sa cijeloj sobi punoj ljudi smo učinili bitno bolje.
>> Pa, neka je sada prijelaz iz pseudocode do neke stvarne koda.
Ovaj jezik ćete vidjeti dogoditi da se zove JavaScript, i
mi ćemo se vratiti na ovo ka Semestar je kraj.
To je programski jezik koji ste koristiti za pravljenje web stranice, kao i druge
Softver ovih dana.
I mi smo ga koristili, zahvaljujući prijatelju naša na Stanfordu, za kodiranje
neka skrivena informacija ovdje.
To je umijeće steganography, da tako kažemo, gdje se mogu sakriti
Informacije u ono što se inače pojavljuje se biti buke ili potpuno drugačija
Slika uopce.
No, ugrađen u ovom slikom je doista tajna poruka od sorti.
>> Zato mi dopustite da ići naprijed i povucite prema gore Ista slika ovdje, ovo
Vrijeme u web pregledniku.
I ja ću mahati moje ruke na neke od detalji za danas, posebice
za one od vas koji ovo izgleda ne samo JavaScript, ali grčki, kao
potpuno nepoznatom jeziku.
Ali ovo je primjer programski jezik.
>> A za sada, odvesti na vjeri da ovo prva linija koda -
i po kodu, ja samo znači tekst.
Tekst koji sam mogao doslovno su upisali u Microsoft Word, ako sam imao
pravo softver kako bi onda nešto učiniti s njom.
Programiranje koda, programiranje broj, je zapravo samo tekst, i to
izgleda drugačije na temelju onoga što jezik koristite, a ne za razliku od engleskog i
Španjolski i ruski svi izgledaju drugačije kada ih upisati na tipkovnici.
>> Dakle, ovom prvom redu, za sada se na Vjera, jednostavno otvara grafike iz
internet, koji bučno grafičke smo upravo vidjeli.
Ovaj sljedeći redak ovdje je primjer petlje, a mi zapravo vidio da ista
Žargon u TED videu.
Petlja je nešto što se dogodi jednom i opet, i iako je to
Apsolutno izgleda zagonetan, s ključna riječ za, a neki zagrade, a
neki zarezom.
Vratit ćemo se na to ne zadugo, ali da ima petlje u biti je
govorim program, iteraciju preko svega od onih bučnih točaka, s lijeva na
desno, odozgo prema dolje.
>> Jer se na kraju dana, slike sviđa mi se ovo - i možete zapravo
vrsta ga vidjeti na ovaj projektor -
je zapravo samo mreža točaka.
Dakle, možemo identificirati svaku od tih točaka kao koordinatnu, x, y, te time
Program, sada možemo početi učinite nešto za tih točaka.
>> Dakle, ono što ću ići naprijed i ovdje to je da ću napraviti neke izmjene.
Prvo ću ići naprijed i riješi svega toga zelenkasto i plavkasto
buke, a ja ću ići naprijed i tip sljedeće
doduše zagonetan sintakse.
im za slike.
postavljena plavo na mjesto x, zarez, Mjesto na y, na 0.
Drugim riječima, želim samo isključite sve plave
točkice u toj slici.
>> Ja ću sada ići naprijed i kliknite to Run / Spremi gumb, a vi ćete
Primijetit na desnoj strani, Dobit slika pojavi.
Sada je super zeleni, ali to nije čudno, jer sam doslovno pretvorio
off, tako što je jedan 0, sve plavi u toj slici.
>> Pa, sad ćemo to napraviti malo više.
im za sliku, dot setGreen, x, y.
A to samo znači ponoviti slijeva na desno, a zatim odozgo prema dolje.
Uključite koji off s vrijednošću od 0, kao i.
Spremi.
I na projektoru, ne možete zapravo stvarno vidi ništa.
>> Na moj laptop zaslon, ako sam zaviriti u samo pravi put, ja mogu vidjeti malo
slika, jer oni su još uvijek neki red tamo.
Ako ste ikada čuli akronim RGB -
crvena, zelena, plava -
to se odnosi na ovaj sastav od slike pomoću
samo one tri boje.
I upravo sada, mi smo bačeni sva zelena, plava svima, ali
nema puno crveno.
>> Pa neka mi ručica crveno.
Kako mogu to učiniti?
Pa, prvo, idem pitati ovaj program je pitanje.
Ja ću ići naprijed i neka ga nazivaju promjenjiva, baš kao u algebra.
Možete imati X ili Y ili z.
Idem proglasiti varijablu i reći, staviti u ovu varijablu,
privremeno, vrijednost Slike getRed vrijednost u x, y.
>> I opet, vratit ćemo se na sve ove detalje u budućnosti.
Ali za sada, samo se na vjeri da Ova linija je molba program, što
je crvena vrijednost na x, y?
U tom točkom?
>> Tada ću učiniti nešto za njega.
Tada ću učiniti slika dot set crveno u x, y, y, ali ovaj put ću se
to potaknuti radeći crvene puta, recimo, 10.
Tako ga povećati za faktor 10.
Dopustite mi sada i smanjivanje klik mogao Run / Save.
I voila, da je bio tamo cijelo Vrijeme, iako su naše ljudske oči
nisam mogao vidjeti.
>> Pa opet, ovo sada je pravi broj, Primjer jeziku koji ćemo doći
natrag prije dugo.
Ali shvatite, pogotovo one od vas bez takvog iskustva, to je sasvim
Uskoro kako smo i sami će se pisanja koda kao da postoji.
U stvari, alat s kojim ste sve nešto upoznat, možda, CS50-a
vlastita tečaj-shopping alat, koji je bio zapravo ponovno podizanje ovog ljeta od strane nekih
CS50 od vlastitih bivših studenata, Sada se okrećemo TFS.
>> Dakle, ovo se događa da se web stranice izgrađen u jeziku zove PHP.
Ona koristi bazu podataka MySQL zove, stvari s kojima ćemo dobiti naše ruke
prljavo kasnije u semestru.
No, vjerovali ili ne, čak i nešto kao što je to u konačnici smanjuje se
najjednostavniji od petlje i uvjeta, a grane, poput onih koje smo vidjeli samo
maloprije u TED videu.
>> Ono što sam mislio da ću učiniti sada je dionicom nije samo nešto smo napravili osoblje
za kampus, nego nešto bivši student - tri
učenika, u stvari -
je ove protekle godine, Sierra, Daniel i Sam, posljednji je imao prije
programiranje iskustvo kada je uzeo CS50.
I za njihov konačni projekt, oni Izlagao je na sajmu CS50,
program pod nazivom wrdly, što je web-based program za koji su napravili
ovaj video koji sam mislio bih podijeliti s daje vam osjećaj upravo ono što je
moguće izraz je kraj.
>> [Glazba svira]
>> DAVID Malan: To je iz tjedna Zero na 12. tjednu ove protekle godine.
>> [PLJESAK]
>> DAVID Malan: Kao teaser, previše, stvarno oštriti apetit je da ono što je
moguće, možda ste već vidjeli, ili uskoro vidjeti, market.cs50.net, a
Novi alat koji toku je tim radili na, ovaj put u
suradnja s Harvard Student Agencije, kao da su s početkom ove godine
i nadamo se nastavlja u ovo dolazi ljeto ćete imati standard
Prilika na kampusu za kupnju i prodaju stvari od interesa za vas.
A uz partnerstvo kroz HSA, vi ćete Također bi mogli ispustiti stavke off
u jednoj od HSA-a fizičke trgovine na neki točka u budućnosti, kako bi se
proxy stvari, pogotovo što vas diplomirati, a ne nužno žele
bacite stvari, ali zapravo to platiti proslijediti ljudi koji bi vas prate
ovdje na kampusu.
Dakle, više o tome doći.
>> No, malo konkretnije, alat koji je došao iz CS50 u nedavnom
godine, s kojima su neki od vas možda upoznati i drugi od vas može biti
googling sada, na CS50.net/2x, vi ćete naći link na Chrome proširenje
koji nam prikazuje kako možete koristiti JavaScript, taj isti jezik smo
koristiti s Eiffelovog tornja maloprije, provesti 2x brzinu reprodukcije
za sve Harvard iSites videa.
To je nešto što je izgrađen u CS50 vlastite video player.
Ali to je, ako se početi kopati u izvorni kod, što ćemo
sretno na raspolaganje, vidjet ćete kako čak možete riješiti probleme kao što je to,
ubrzavanje clanak u web stranice s što ste već dobro upoznati.
>> Dakle, riječ je sada o tijeku i očekivanja i što je pred nama.
U principu, mi doista ću se ovdje okupljaju ponedjeljkom i srijedom - iako
ovog petka, mi ćemo prikupiti, jer Shopping Week -
01:00-14:00, iako ponekad i do 02:30.
S obzirom da stoga možda želite ili morati poduzeti neke klase na 14:00
nadalje, ili čak i prije, shvaćaju Tečaj podupire ono što se naziva
istodobni upis, pri čemu ćemo podržati peticiju oglasa odbora i
Vaš stanovnik dekani na vaše ime, ako imate sukob negdje u ovo
1:00-02:30 rasponu.
Voditelj na tom URL za online dodatne pojedinosti.
>> , Ali u odnosu na potpornu strukturu koja karakterizira CS50, za studente
više i manje ugodno podjednako, mi nude različite pjesme sekcija.
A to je nekoliko tjedana off, ali prije dugo, vi ćete biti upitani o tome
Vaš udobnost razini.
Jeste li među onima manje udobno, ugodnije, ili
negdje u sredini?
>> I mi ćemo imati tri različita pjesme koje razonoditi
upravo ti publika.
Dakle, ni u kojem trenutku u razdoblju trebali ste čak osjećati kao da ste natječu
protiv kojeg studenta s više ili manje pozadinu od tebe.
Doista, tečaj je značilo da se puno više suradnje i mnogo
otvoreniji od toga.
>> U pogledu problematična, one će naći, također, da osim
standardno izdanje svakog tjedna problema postavljena, je često "haker
edition "koji je značilo da se ciljano na 5% do 10%, ili tako
demografska tko je doista među onima ugodnije, a željeli više
od izazov nego standardni izdanje tog pset očekuje.
Više detalja o onih koje treba nalaze u nastavnom planu.
>> No, također tamo se može naći smještaj na tečajeve kasno dana.
Obično problema postavlja dospijevaju četvrtkom.
Međutim, možete produljiti mnoge svoje rokovi ove jeseni iz četvrtkom
Petkom jednostavno nas susretu pola puta, da se tako izrazim, odgovorite na nekoliko zagrijavanja
Pitanja u neke od tjedan problema seta, koji će se automatski
onda vam dati dodatnih 24 sata.
Također će pasti tvoja najniže ocjena, kao i po nastavnom planu.
>> Da bi vam dati osjećaj za ono što je problem setovi su - jer to je doista
toku je problem koji postavlja konačnici definirati gotovo svaka
studenta iskustvo, više nego Predavanja, više nego sekcije, više
tako da od većine bilo koji drugi aspekt tečaja.
Prošle je godine, primjerice, počeli smo, kao počet ćemo ove godine, s nule.
Osobito ovaj petak, koristit ćemo, za Samo jedan dan je vrijeme, grafički
programski jezik, s kojom ćemo započeti programiranje povlačenjem i
ispustite slagalice koja samo okupiti fizički, ako ima smisla
to logično.
>> Sljedeći tjedan, mi ćemo brzo prijeći na C, prilično stara, ali vrlo mali i
Jednostavan jezik, koji će nam omogućiti da stvarno ide 0 do 60 tijekom
o samo nekoliko tjedana, a zatim klađenje te iste vještine i znanje
Osnovni programiranje konstrukata u više razine jezici poput PHP,
JavaScript, a neki još uvijek.
>> Prošle godine, trećeg pset u tijeku bila je kriptografije,
domene određeni program u kojem smo izazvao studenata za provedbu bilo
broj šifre, programi s kojima veranje ili dešifrirati podatke,
to šifriranje.
Za hakerske izdanju, za razliku od, dali smo haker studentima datoteku
iz standardne Unix računala sadrži korisnička imena i lozinke,
potonji od kojih su šifrirani, a mi pobijaju hakeru
studenata za dekriptiranje, kao najbolje što su mogli, te lozinke, i dalje na tome
istu domenu.
>> Scramble, igra s kojima su neki od vas su možda upoznati.
Forenzike komada, gdje smo pitati studente da se oporavim podataka koje su bile
inače brišu iz vlastitog digitalnog Kamere Compact Flash kartice, koje
zapravo pisanje softver za shvatiti, gdje su nule i jedinice u
da je digitalni fotoaparat koji je prethodno sastoji JPEG slika?
>> Izazov vrsta lani uključuje pisanje najbrži
alat za provjeru pravopisa moguća, natječući protiv prijatelja i kolege ako
oni željeli.
Implementacija Huff 'n Puff, Program kompresije.
A onda je završio semestar s CS50 Financije, web-based aplikacija s
kojima stvoriti eTrade-poput web stranice kupiti i prodati dionice, tako da se
govore, koje zapravo povlačenjem gotovo real-time citati Yahoo!
Finance.
>> Ono što nismo prošle godine bila jedan problem set koji ostaje
ipak najdraži.
Ako ste nikada nije otišao u shuttle.cs50.net, vidjet ćete korisnika
sučelje nešto poput ovoga.
No, prije dvije godine, klasa provodi, koristeći Google Maps i
Google Earth plug-in i malo od pamet s vožnje oko kampusa,
tako da je cilj ove igre je, kao što možete vidjeti neke od lica,
se voziti okolo u potrazi za kampusu osoblja, nastavna momci i CAS, i
Kada to učinite, stavljajući ih na svoj shuttle bus.
Nitko od njih zapravo čini da se ovdje, tako da ćemo unesite varati kod.
>> [Smijeh]
>> DAVID Malan: Tu smo.
U redu.
I ovdje je sada osoblja začinjena cijelom kampusu.
I kao što možete vidjeti, na desnu strani zaslona, ​​shuttle bus
ima prazna mjesta.
A cilj je bio napisati broj s kojim se simulira ovu
vožnje i branje gore i ispustite isključiti putnika.
Taj jedan, također, koristeći jezik zove JavaScript.
Dakle, shvatite da programi kao što je to volja biti na našoj istom putanjom to
godine, kao i.
>> U smislu, sad, dodatne potpore, imamo radno vrijeme.
Kao što ste mogli vidjeti u vlastitom domu blagovaonica ili uzivo,
mi ćemo biti u kući blagovaona Dvorane četiri noći tjedno -
Leverett, Pfoho, Eliot i Annenberg ove godine, od 20:00 do 23:00.
I što smo mislili da ćemo učiniti ove godine je nešto malo drugačiji.
>> Ako ste čuli rumblings prošle godine to je malo previše stresan, ovo
Ovogodišnji radno vrijeme, kao što ćemo opisati sljedeći tjedan, će biti više organskih,
kojom prilikom dolaska, vi ćete biti otpremaju u jednom određenom stolu
gdje je više osoblje čekaju, a mi ćemo napraviti stvari puno više
organski.
Nema više čekanja, nema više iPad, ali a imaju intimnije
Razgovori oko stola od samo osam ili tako studenata, kako bismo
približan dojam ono što inače će biti mnogo manji klase.
>> Nudimo, kao i, te stvari mi zove Walkthroughs, video sniman u
unaprijed od strane jednog od tečaja učenja Momci, Zamyla, u kojoj je
provest će vas kroz tjedan problema garniture, koje nude savjete i trikove za
izazovima koji je pred njima.
A s druge strane, nakon što je problematična setovi su zbog, ove godine, također ćemo objaviti
mali isječak nazovite Obdukcijski da zapravo vas kroz
predstavnička rješenja, i dobro i loša, preko koje možete zaključiti koliko je
što bi moglo imati ili bi trebao imati provodi svoje rješenje.
>> A što ćemo ponuditi za prvi put i ove godine, posebice
Za one studente koji se poslužiti Tečaj je od drugog
resursima, ali ipak se bore Svi previše, kolegij
Sam će upariti one studente, kao sredstva dopuštaju, s tutora tako da
imate puno intimnije priliku od kuće blagovaonice
omogućilo jedan-na-jedan pomoć.
>> Sada konačni pogled na neke od krajnjih igara u očima.
Možda ćete biti upoznati s CS50 Hackathon.
Pa, dolazi u prosincu ove godine, od 8:00 PM do 7:00, na početku
Čitanje razdoblje, bit će prilika druženja s vršnjacima -
to će biti oko 21:00 -
tijekom koje ste zaroniti u vaš konačni Provedba projekta uz
kolege, prijatelji i hrane.
To će biti oko 01:00, kada je prva serija od hrane stigli.
A to je oko 04:00 da Konkretno godine na CS50 Hackathon.
>> Ali istina Vrhunac tečaja je značilo da u CS50 sajmu, campus-wide
Izložba svojim posljednjim projektima, na koje obitelj i prijatelji su svi
pozvani, kao regrut i našim naši prijatelji iz industrije.
To, na primjer, je uvid 2000-plus ljudi koji ste pohađali
Posljednjih godina.
Izrazi poput ove nisu neuobičajene, i slično učiniti vaš
kolege uživati ​​u stvarima ste postigli.
>> I doista, prema tom cilju, imamo start-of-termina događaja, kao dobro.
Ako stvari poput ove žalbe na vas ili ti si barem znatiželjan kao što
to, znam da je nova tradicija Tečaj se zove CS50 Puzzle dan.
I to je bio pokrenut par godina doista signal na kampusu
da informatika nije o programiranja, a to sigurno nije
oko obuhvaćajući samo oni studenti koji imaju prethodno iskustvo.
To je zapravo o rješavanju problema općenito.
>> I tako Puzzle dan, tijekom posljednjih nekoliko godina, razvio u lijepo
partnerstvo s našim prijateljima u Facebook, pri čemu tu će biti nevjerojatan
Nagrade i pizza preko rijeke, na ja-laboratorij ovaj dolazak subota.
Krenite na taj URL s dva ili tri prijatelji, ako želite sudjelovati
u ovom novom tradicijom.
>> Tako Htio bih pitati da li zadržati jednu stvar na umu, a mi imamo samo
dvije minute isječak na kojem zatvoriti i danas.
73% je broj zapamtiti.
Torta je, također, će vas dočekati izvan te transepta kao što smo prekinuti samo u
nekoliko trenutaka, što je tradicija je naravno i.
No, to je ključ citat iz Naravno-a Nastavni plan i držati na umu.
Ono što u konačnici važno u ovom kolegiju nije toliko gdje ćete završiti
u odnosu na svoje kolege, ali gdje da, u 12. tjednu, završiti u odnosu na
se u tjednu 0.
>> Ali pogled da ćemo vas ostaviti s danas ovdje je ovo zadnje ovdje
naš istom Daniela, koji je učinio wrdly Video maloprije.
Ostavljam vas s ovom pogled onoga što je pred nama.
I kao što smo to učinili, ako smo mogli CS50 Osoblje na prednjoj sobi
doći na do pozornice slikati sve više od vizualne slike kako bi se
ono što vas čeka u ovoj godini -
dobivanje neugodno.
Mi ćemo zaključiti s ovim Ovdje na zaslonu.
>> [Glazba svira]
>> DAVID Malan: Ovo je CS50.
>> [MUSIC - MATT & KIM, "U redu"]
>> ZVUČNI 1: Volim CS50 više od mačaka.
>> ZVUČNI 2: Whoaaaa!
>> [Smijeh]
>> DAVID Malan: To je, dakle, CS50.
Mi ćemo vas vidjeti u petak.
>> [PLJESAK i pljeskati]
>> Narator: Na sljedećem CS50, na pozornici Demo ne ide kako je planirano.
>> DAVID Malan: Želimo pronaći Mikea Smith je u tom telefonskom imeniku.
Pa, ono što su tvoji instinkti?
Možda ću skočiti otprilike na sredini telefonski imenik, pogled dolje, vidjeti da
Ja sam na M, i sada znam da je Mike Smith nije u lijevo.
On mora biti na desnoj strani.
I tako u ovom trenutku, mi može doslovno suza -
U ovom trenutku, mi bismo doslovno može suza -
u ovom trenutku, možemo figurativno suza telefonski imenik na pola.
>> [UKELELE drndanje]