[音樂播放] [掌聲] 戴維·J·馬蘭:這是CS50, 哈佛大學的介紹 對智力 計算機科學的企業 和編程的藝術。 現在,如果你是在那些 每年都會坐在這裡 在你的心中有點緊張的,這樣的 你不覺得你屬於這裡, 你認為最 有人坐在你身邊 了解遠遠超過你,確實是 比你更舒適的電腦 科學或電腦 更一般地,實現 學生現在誰是78% 採取CS50有沒有現成的經驗。 的確,有100個點有 在顯示器上,78其中 是純綠色的,這意味著你, 如果你的人口中, 是非常好的公司這裡開始了。 如果你是代替中 CS50的學生22%誰做的確實 有之前的經驗,​​無論是在 高中或其他程序, 認識到你,也將 在使用過程中受到挑戰。 我們不僅有不同的軌道 學生不舒服,更 在部分舒適的一致好評,我們 也有所謂的黑客版本 大部分習題的 將挑戰那些學生 與額外的經驗 探索類似的材料 但是從更 複雜的觀點。 但是,什麼是計算機科學? 那麼,最終什麼事情 當你探索這個領域的事情是沒有 與其說你在哪裡結束 相對於你的同學, 但如果你自己最終在 對,你在這裡開始為期12週 零一周。 現在電腦science--好,讓我們 把它的computation--科學 這裡計算的是真的只是一個 的說法,服用一些花哨的輸入方式, 產生一些輸出,並 通過運行算法這樣, 的指令集用於解決 這些輸入的一些問題 為了產生某些輸出或 解決方案中,你有興趣。 所以,我們最近有 一次旅行了 加州會見的校友。 她的名字是蘇珊·沃西基。 她想說話 你在這裡的視頻 要證明是多麼適用 電腦甚至只是味道 科學的 入門級就可以。 即使你沒有去追求 計算機科學的領域, 甚至工程, 或STEM更一般地, 你會看到,其實,如何在一定 當然,這樣影響了她的生活。 而她才剛剛把它當她 是一位資深你們是哈佛學院。 如果我們能夠把燈光調暗了蘇珊。 蘇珊沃西基:你好,世界。 我是蘇珊·沃西基。 我的YouTube的首席執行官。 我花了CS50當我 在1990年的高級哈佛大學。 我其實是歷史 文學專業。 而我大三暑假, 我意識到,也許我 想學的東西 電腦。 所以,我回來了。 我把CS50。 這是很難的,但它是 最令人驚訝的I類了。 它改變了我如何看待一切。 當我從哈佛畢業 在1990年,我去了矽谷。 我找到了一份工作。 我一直在努力 在高科技至今。 戴維·J·馬蘭:現在什麼蘇珊 沒有提到在這段視頻中, 這竟是她 車庫,谷歌本身是 由Larry和Sergey創辦。 現在,我們也達到了我們的朋友 在code.org,一個組織, 在過去一年中一直 讓人們特別是 興奮的計算機科學 和編程,尤其如此。 但值得一提的是,編程 是不是計算機科學本身。 計算機科學是不是編程。 而編程只是一個 tool--與大家 將一切太清楚 按學期end--熟悉 例如,你可以不適用 只是在未來的CS課程 但是從那裡任何領域 你來了,在人文, 社會科學,自然科學 學,或類似物。 事實上,讓其他幾個 校友和他們的同事 說話的適用性 等待著的領域。 比爾蓋茨:我13歲的時候我 第一次拿到進入電腦。 多爾西:我的父母 1984年我買了蘋果 當我8歲了。 馬克·扎克伯格:我是 小學六年級。 揚聲器1:我學會了在大學的代碼。 魯奇SANGHVI:大一的時候,第一個 學期,介紹計算機科學。 比爾蓋茨:我寫了一個程序 這起井字腳趾。 德魯休斯頓:我認為這是 很卑微。 我覺得第一個程序 我寫信問之類的東西, 什麼是你最喜歡的顏色? 或者,你多大了? ELENA SILENOK:我第一次聽說 如何使一個綠色的圓 和一個紅色方塊出現在屏幕上。 加布紐維爾:第一 當時我其實是有 東西上來,說,你好,世界。 我做了一個電腦做的。 這只是驚人的。 馬克·扎克伯格:學習如何 以程序沒有啟動過 如想學習 所有的計算機科學 或者試圖掌握這個 紀律之類的東西。 這只是起步,因為我 想做這一個簡單的事情。 我想要做的東西, 有趣的是為我自己和我的姐妹們。 我寫了這個小程序。 然後基本上只是 加一點點吧。 然後,當我需要 學習新的東西, 我看著它,無論是在 一本書或在互聯網上, 然後加一點點吧。 德魯休斯頓:這真的沒有什麼不同 彈奏樂器或東西 或者玩一種運動。 戴維·J·馬蘭:好吧。 因此,讓我們現在實際上 在下潛更深一點。 什麼是這些輸入和輸出 我們在這裡討論的? 所以,怎麼樣簡單的東西? 你可能知道,即使你有 隨著計算機技術的熟悉不 無論如何,這台計算機以某種方式使用 並明白只有零和一。 但如何才能使這可能是給予怎樣 很多今天的台式機和筆記本都 可以嗎? 一天的DNA中,僅 字母表示理解 是0或1。 那麼,考慮一下。 我們人類,傾向於使用 十進位制。 “DEC”的意思10。 而這10因為我們有 10個數字,從0到9。 現在的計算機,相比之下, 傾向於使用二進制。 “碧”的含義2。 因此,他們往往只有零和一的使用。 但事實證明,即使是 只是用0和1的 是一個足夠大的字母表 與代表最 你想要的任何一塊數據, 無論它是一個數字, 無論它是一個字母,無論是 在屏幕上的圖形或視頻。 舉個例子,我們人類如何 通常在這裡解釋這個數字。 這是短短三年 位,一個,兩個,三個。 但是我們知道這個號碼 天生現在123。 但是,為什麼會這樣呢? 好吧,如果你想回來 或許小學, 你可能被教導想 這些數字中的列之中, 其中一個是在數百 處,這兩個是在十位, 和三是在那些地方。 為什麼是實際有用嗎? 嗯,想想 超級簡單的算術題 我們都曾有過 現在做了多年。 實際上,如果你有 一個在百位, 你快數學100 1次加10倍2-- 因為二是在幾十 place--加1次3-- 因為3是在個位。 當然,所以,如果我們 實際上乘了這一點, 我們真正代表 與此pattern-- 1 2 three--是100加20加 3,這當然是123。 現在二進制和計算機真的, 從根本上說同一種語言 我們做的。 他們只是有一個較小的字母表。 所以電腦只有零 和那些在他們的處置。 因此,而我們人類有本質 10在這些places--的權力 10到零,10到1,十 兩個,給你110和100 分別。 因為計算機只具有兩個值 他們能夠理解,零和一, 他們必須使用不同的值 在這些列中,一個,兩個,四個。 如果我們堅持下來了,八, 16,32,64,等等。 但在圖形和 心態是完全一樣的。 因此,通過這樣的邏輯,任何人,怎麼會 我去約相當於數 1二進制? 如果你從來沒有想過 這之前,什麼是你的直覺說什麼? 聽眾:一。 戴維·J·馬蘭:一。 沒錯。 我們只需要一個人在 那些地方,因為在零 足以給我們 既不四,也不是2。 所以一時間一等於之一。 現在事情變得有點有趣。 如果我想代表 二進制數two--但是, 再次,即使你從來沒有 之前講這種語言, 我們怎麼表示的二進制 值我們人類所知道的2? 零壹零。 只要把一個在 您希望它列。 現在,它變得相當 易可能了。 所以,如果我要代表three-- 沒有3的專欄。 所以,再一次,我現在可以添加這些值 一起放一個人在這裡。 因此,2次1加1 次1,當然,3。 現在,事情得到一點樂趣 在那些現在變成零。 並代表4,我得到這個。 如果我們慢慢增加 這裡 - 這將是5。 這將是6。 這將是7。 但現在我似乎有 碰到一個問題。 我怎麼可能去代表 eight--將是下一個值。 是的,所以我們需要一個新的位。 而且,事實上,如果你 以前聽到這句話, 位,這只是短暫的 二進制數位,0或1。 所以,我碰巧代表 只有三個這樣的位位置。 但是,如果我有沒有存儲的一種方式 三個不同的位,而是四個, 我肯定可以代表 8,然後9,然後 10,甚至高。 但是,然後調用 質疑我們如何 去代表這些 東西擺在首位。 這是一件事畫 他們在這裡載玻片上, 但你如何代表他們 如果你是一個機械裝置? 什麼是計算機操作的 表示輸入和輸出 從根本上定義的計算 在一天結束? 那麼,什麼樣的東西 超級簡單的這樣嗎? 這只是一個燈泡。 我可以觸發此 燈泡去 通過將一些電 並允許電子 流過,從而改變其 國家或它的價值,可以這麼說。 例如,這是 一個老同學的檯燈 這裡有一個這樣的 燈泡裡面它。 而現在它不是 真正做任何有用的事。 但只要我將它 插入電源插座 然後用這個switch--或 我們甚至可以稱之為晶體管 或把它想成such-- 現在我可以代表 此值,其中,燈泡的 明顯地關閉,或者該值。 該值或該值。 這個值等等。 因此,一台電腦裡面,大概 小得多的硬件部分, 但是,在該端 一天只需 使用electricity-- 也許是捕捉它 - 然後要么保持的東西 或保留的東西了。 當然,這是不 特別有趣的事情 只是一個單一的燈泡。 事實上,有多高,我可以算的 二進制這個檯燈嗎? 聽眾:一。 戴維·J·馬蘭:一,對不對? 我需要更多的檯燈,如果我 其實要算高。 但我們可以做的比這更好的。 因為燈泡的 我們已經把這些東西 其實票友燈泡 比昔日允許。 而它們實際上是 聯網的燈泡。 和公司的串 做這些事情,這些天。 但事實證明, 這其中尤其是 配備了一個功能即 你可以改變它的顏色。 因此,例如,如果 裝飾你的寢室 與一些這些光 燈泡,這取決於你的心情, 取決於誰進來, 根據天氣, 根據不同的時間 一天,你其實可以 改變的顏色 燈泡在你的房間。 那是因為這些光 燈泡和其他類似的有什麼 所謂的API,應用程序 編程接口,該接口 是一個話題,你會很好 熟悉了學期結束。 而這僅僅是一個幻想, 的說法神秘的方式, 您可以設定這些光 燈泡做你的出價。 你可以向他們發送消息 就像你,一個人, 可以將消息發送到Web服務器 他說,給我今天的新聞 或者給我的電子郵件。 您可以發送更多的奧術 消息,這些燈泡 也就是說,打開和關閉。 但是,這並不是那麼有趣。 你可以說,開啟紅, 變綠,打開藍色, 所有具有相同的燈泡。 你甚至可以與多一點 精明,說,把自己的藍色 當它是一個黑暗的日子 外,例如。 實際上,它可以修補成 天氣的API,並找出 天氣是什麼,或時間 的當天,或其他這樣的觸發器。 所以,實際上,兩個 CS50自己的工作人員, 丹·布拉德利和安塞爾 達夫在這裡,請購買 我們一大堆這些燈泡。 和他們建立了CS50的 第一個二進制燈泡, 我們已經表示這裡 - 與這些俏皮的小magnets-- 各種佔位符,我們 提到只是有點前。 所以來這裡的路上是 個位,二,四。 而且,我們也沒有看到比這高。 但是,當然,他們是兩個大國。 八,16,32,64和128。 所以,如果我現在想成為一個小票友 不是用這個老同學開關, 我這裡有對這款iPad 一個超級簡單的界面 丹·布拉德利,前 學生現在教的傢伙, 使用一些HTML程序性 和JavaScript,這 是標記和編程 分別的語言。 你可以大概 see--即使在back-- 還有一個很大的優點和一大負, 加一個按鈕為每個這些燈泡的。 什麼這是怎麼回事,讓我 確實是,比如,單擊加號 而現在所代表的 當然,有什麼號? 之一。 我可以再次打它。 二。 三。 四。 五。 六。 七。 在這裡,現在我們得到了側翻, 但是我們有一個四號位這個時候, 所以現在我們有八個。 所以我們可以很長一段時間做到這一點。 事實上,順便說一句, 我們有多高可以指望? 任何人嗎? 聽眾:255。 戴維·J·馬蘭:255,對不對? 不要太擔心數學的 現在,但是這是一個相當不錯的數字。 但它實際上並不只是約束 有多少條信息, 像字母或圖形 我們可以代表。 但不管現在。 我要繼續前進 然後將它們全部關閉。 如果我可以,我想詢問 一個志願者,我們的第一個volunteer-- 哦,hello--在舞台上。 美中不足的是,你必須要 舒適的出現,因為你清楚 在所有的同學面前, 以及在互聯網上。 讓我看起來有點超出the-- 怎麼樣在這裡的白襯衫? 和手了。 上來吧。 你叫什麼名字? 聽眾:成龍。 戴維·J·馬蘭:成龍。 成龍大哥,拜託了。 所以什麼也就此 iPad是一款名為遊戲模式按鈕。 而這種遊戲模式是 要允許我輸入 提前一個特定的小數 數字,這些數字我們人類 熟悉。 然後,你將面臨挑戰 這裡使用的按鈕 在top--之一 這些bulbs--的 真正搞清楚 燈泡的圖案 表示所討論的數目。 我很抱歉,再次你叫什麼名字? 聽眾:成龍。 戴維·J·馬蘭:成龍。 好吧。 很高興見到你。 因此,讓我繼續前進,計劃在 讓全世界都看到數字15。 我們會保持它在小先到這裡。 而我要進入遊戲模式。 我要去指定, 給我們的15號。 行。 現在大家watching--如果 你想也許受不了這種方式, 因為它會排隊up--繼續前進, 切換沿頂部的八個按鈕 打開燈泡上 或關閉您認為合適的。 聽眾:確定。 戴維·J·馬蘭。也沒有作弊 通過點擊加15倍。 哦,我們將做到這一點。 聽眾:哦,等等。 我很抱歉。 戴維·J·馬蘭:你也可以打開 在燈泡上分別 與每個上頂這些按鈕。 聽眾:哦,好吧。 因此,這將是like-- 戴維·J·馬蘭:確定。 所以現在我們有八個。 因此,讓我們停下來的 觀眾在這裡搞。 什麼號碼是成龍 目前代理? 11。 因此,我們快到了。 並以優異的。 因此,我們有我們的第一個冠軍。 恭喜。 而且我們認為我們會擁有 一些神話般的贈品。 如果你想成為一個這樣的 這裡的宿舍在校園裡, 您可以自己有一個最終方案 現在使用這個API,感謝成龍。 所以now-- [掌聲] - - 如果我們可以,多了一個 如本左右。 呵呵,現在每個人都希望有燈泡。 對於所謂的黑客版, 我們要斜起來A--哦, 是的,不置可否。 我覺得你來了,現在 如果你的手是怎麼回事了。 你叫什麼名字? 聽眾:亞歷克斯。 戴維·J·馬蘭:亞歷克斯,拜託在這裡。 因此,對於亞歷克斯,我們要 計劃在稍大一些。 也許是為了。 數字50。 聽眾:確定。 戴維·J·馬蘭:但是,如 í說 - 你可能 要站在這裡讓 這些按鈕排隊 正如你所expect--但我確實 調用此黑客版。 So--祝你好運! [笑] 你將能夠把 它們趕走,如果你 - 確定。 優秀的。 太好了。 恭喜。 [掌聲] 我想我要了。 恭喜亞歷克斯為好。 行。 所以,最終的外賣 這裡是希望,坦率地說, 該simplicity--的 簡約與 你可以得到一些不錯的光 燈泡,顯然是在[聽不清]。 但他們表示, 最終,同樣的想法 與我們人類 已經太熟悉了。 所以,什麼才是下一個 步驟是在級數 試圖做一些事情 有趣的數據 和表示輸入,不只是 號碼,但也許是字母或更多? 嗯,事實證明, 計算機世界,多年來, 只需通過一個任意的,而是 映射的數字一致的標準 在字母表中的字母。 舉例來說,這裡是一個 摘自該映射。 這就是所謂的ASCII碼。 A-S-C-I-I。而這僅僅是一個 表映射大寫letters-- 在這個case--為十進制數字。 但是,有什麼寓意? 好吧,如果你真的想代表 像電子郵件或一些文字 在網頁上,你 顯然是想展示 的人的信 字母,而不是數字。 所以根據 該程序的上下文 一個用戶使用,如果是 Web瀏覽器或電子郵件客戶端, 數字可以肯定是 解釋為字母。 也就是說,比特圖案可以 容易被解釋為字母。 還等什麼,我們可以有 是字母A為 表示為65,B 被表示為66。 因此,如果我們有一個超級 總之一句話,似喜, 什麼是計算機最終將 店小數,但真正的二進制, 使用比特一些序列,利用 在某些方面有點用電, 將兩個數字72和73。 但比特圖案 代表這些值。 因此,這些則是我們如何 代表我們的投入和產出。 而我只想說,我們可以 做更複雜的交涉 最終與東西 圖形,視頻,音樂和更多 正如我們將在後​​面看到這兩個字。 讓剛剛離開後 算法,這些套 指令與 我們解決實際問題。 我們通過在輸入的算法。 而這些算法產生 產出,希望正確的輸出 並希望,也 有效地收集輸出。 換句話說,這是一件事 正確實現的東西。 這是另一回事實現 東西好或有效率。 例如,一個示範 我們很喜歡在使用過程中 就是這一個。 但是,這些事情會越來越 越來越難找。 但是,這確實是一個老同學 電話本,裡面其中 有1000多頁的 名稱和電話號碼。 如果我想查 有人在這個電話本, 我可以簡單地做一個 很天真的算法。 我可以打開的第一頁, 我可以開始去尋找,比如,有人 名為邁克·史密斯。 如果他不是第一個 頁,我進步到第二, 然後到第三,然後 第四,等等, 直到我終於找到邁克·史密斯。 現在是算法正確嗎? 聽眾:是的。 戴維·J·馬蘭:是的。 如果他在那裡,我會 最終找到了他。 但它可以說不是很 高效,肯定不會快, 因為,我的上帝,我為什麼 浪費我的時間翻轉 通過所有這些網頁時,我可以 當然做到這一點身體更快? 好了,有輕微的優化,所以 說話,可能是沒有一個頁面的時候, 但二,四,六,八,10。 仍然是正確的? 聽眾:第 戴維·J·馬蘭:所以沒有,如果我的 例如跳過邁克·史密斯。 但是,只要我背踏板 一個頁面,如果我衝他, 也許我們可以糾正一下 否則可能是一個疑難雜症。 但它是更好嗎? 它是更快? 我的意思是,是的。 這是字面上快一倍 如果我做兩頁的時間。 所以,如果我本來有1000頁, 現在我只需要翻轉500倍, 沒有充分1,000頁,以獲得 潛在地,在最壞的情況下 到手機的端 書,如果有人 像邁克·史密斯還是有人用 以後的名字實際上可能。 但是,當然,我們 人類肯定不是 會做的,當然 此時未在我們的生活中。 什麼是合理的 人類有可能會做什麼? 聽眾:直行至第九城市的s。 戴維·J·馬蘭:直行到S的? 我怎麼直行到S的? 聽眾:撕成兩半。 戴維·J·馬蘭:嗯, 沒有標記。 所以,是的,如果確有 標籤或與S的粘性標籤, 我們要跳就在那裡。 但它是相當無害。 所以,盡我所能做的就是大致 在S部分或者是大致 成的中間。 但關鍵外賣 now--和直覺 你已經採取 授予年probably-- 是什麼,現在你 了解這個問題呢? 聽眾:[聽不清] 戴維·J·馬蘭:邁克·史密斯肯定 未在此問題的一半 因為史密斯來了之後,中間 這大概是M個部分, 它似乎是。 所以,你可能已經看到 Visitas,我們現在可以從字面上 撕成兩半這個問題。 聽眾:嗚! 戴維·J·馬蘭:這是 越來越容易。 [掌聲] 你去那裡。 [笑] 現在我根本 有同樣的問題, 但它字面上的一半大。 我還在尋找邁克·史密斯。 而且我敢說,我仍然可以 尋找他以同樣的方式, 分裂成兩半問題 再次,撕裂的問題又來了 在上半年,現在讓我用 有問題的四分之一大小, 極大地扔一半路程, 一次又一次地重複這個過程 又一次,低頭 在每個點看 如果邁克·史密斯是 有問題的頁面。 現在,如果我這樣做的權利, 最終我會發現自己 只用一個頁面上的麥克·史密斯 是,如果他確實是在電話簿。 當然,我可以 永遠不再叫邁克。 但這裡的問題是,如果我們開始 有000頁,我的第一個算法, 翻動頁面,可能有千times-- 肯定少,因為它是 一個S名字,而不是Z名稱,但作為 多達1,000頁可能。 第二種算法,效果更好。 500頁。 第三算法,雖然 多少個步驟將它 採取分1000頁 電話簿中的一半這樣呢? 10,給予或採取。 因此,只有通過翻轉 電話簿,潛水和征服, 可以這麼說,10倍,我會 我一路下跌到只有一個單一的頁面。 因此,我們可以捕捉到這種直覺 現在有點圖解 如果你只是考慮 這個超級簡單的圖形。 我們在x軸或水平 軸,是我的問題的大小, 的電話簿中的頁數。 和計算機科學家 一般喜歡叫 n的問題,這裡的大小 n是只是一些變量 represents--在這 case--頁數。 垂直或y軸,這裡是 將要解決的時候, 可能的翻頁次數, 幾秒鐘,也許數 或數分鐘,無論 您的度量單位是。 所以,這條紅線 表示第一算法, 因為有一個一對一的 數之間的關係 的時候頁面和金額需要。 如果Verizon的兩倍數量 明年電話簿頁面, 我跑步的時間 - 所需的時間來執行 首先算法 - 加倍在最壞的情況下。 但第二個算法, 這裡我用兩個翻轉, 需要的時間更短 給定大小的問題。 所以,如果我有這麼多 頁面這裡 - 公告 該黃色的線 建議少去解決的時間。 事實上,它代表著, 我們會說,正了兩個。 但是,什麼是第三個形狀 最後曲線將會是什麼樣的? 是的,它的確會look--í 不知道你要說的話。 但是,讓我們看看有什麼 你會說。 聽眾:喜歡。 戴維·J·馬蘭:這是怎麼回事的樣子 這一點,對數slope-- exactly-- 因此,你有這個奇怪的斜率。 它不再是一條直線。 這有什麼令人信服的關於那就是 儘管該圖現在切斷, 你可以在你的推斷 介意的綠線不 要增加在 高那麼多 你再繼續 向下的水平軸。 事實上,Verizon公司,為 舉例來說,可能會增加一倍 在電話的頁面數 今年和明年的書 從1000到2000 網頁,但沒什麼大不了的。 有了這個第三個也是最後, 有一個直觀的算法 的分裂和征服。 它會帶我多少 步驟明年找人 喜歡邁克·史密斯? 聽眾:一。 戴維·J·馬蘭:這裡有一個。 他們可以翻兩番,它是 要帶我短短兩年多的步驟 等等。 所以這是證明 到底有一番精心的設計 而對於一些欣賞什麼 您的輸入是可以做的更好。 現在我們正在作弊 在這個意義上點點 我們正在利用一個假設。 什麼是我的假設 我們的電話本 這讓我分而治之 在這個直觀仍然是正確的方法是什麼? 聽眾:[聽不清] 戴維·J·馬蘭:是的。 因此,它被訂購。 它是由按字母順序排列 該電話號簿公司。 如果它是按照隨機的順序,即 是的電話簿地獄, 但它肯定不會 容易以該算法 我用的,因為你永遠不會 剛剛發生過邁克·史密斯 如果你一直在劃分 上半年那樣的偶然。 現在讓我們正式 什麼是清晰直觀。 所謂的東西 偽代碼是我們將 開始我們的一些初步問題。 這是描述一個通用的方法 一個算法或計算機程序, 不使用C或C + +或Java, 或任何特定的語言, 但只使用英語,與 而任何人可能很熟悉。 我們可以寫的偽代碼 對於這個問題,如下所示。 步驟一,拿起電話簿。 第二步,打開電話本的中間。 第三步,看名字。 第四步,如果史密斯是其中names-- 而現在,這是一個 有趣的構造。 這是一個決策點。 這是在一個岔路口,如果你 將一個分支,可以這麼說。 所以,我要縮進 只是按照慣例step-- 不five--這是 比方說,我會打電話給邁克。 所以這個缺口,完全 任意人約定,但它的 只不過是傳達語義 如果史密斯的名字中, 那麼我應該叫邁克。 與此同時,在第六步,通知 該壓痕不見了。 所以其他人在其他叉 路,其他的路我會旅行。 所以,如果還有史密斯 本書前面,有什麼 我的下一步可能會是在這裡? 聽眾:你去左邊。 戴維·J·馬蘭:是啊,所以去 電話簿的左半部分。 扔掉的右半邊,如果 史密斯早在書上。 所以中間開 書的左半邊。 然後第八步,去線三條。 這是一個奇怪的循環,我 誘導,遞歸可以這麼說。 但上,在未來更多。 我用我同樣的算法, 我一樣的偽代碼, 再次解決同樣的問題 因為這是唯一改變的 是問題的大小,而不是 我的目的,而不是人 我在尋找。 因此,我可以重複使用的算法 我已經定義。 否則,如果史密斯後來是 在book--你可能 guess--開放至中間 書的右半邊。 再次,去線三條。 Else--什麼是線下決賽 在這個方案將是? 如果他不是中 我在頁面上的名稱 對,如果他在不早 這本書,他是不是以後 在這本書中,我怎麼知道 是真正的邁克·史密斯嗎? 聽眾:他不是在書裡。 戴維·J·馬蘭:他不是在書裡。 所以,最好的,我能做的也只是 放棄和停止這一計劃。 好吧。 所以在這一點上,讓我們一 快速瀏覽一些什麼等待著。 而事實上,我在這裡參加 由多個CS50人員。 如果這些人能全部 在這裡和我一起在舞台上。 [掌聲] 你要知道,這只是 CS50的工作人員的一個子集, 每一年,因為我們有近100名工作人員 在課程助理的角色成員, 教學研究員,等等。 上來吧。 因此,他們將和我們一起在這裡 笨拙的只是一瞬間 為我們給出了一個旋風之旅是什麼 你應該期望在這裡的課程。 因此,首先,我們有SAT / UNS 如在使用過程中的分級選項。 這是故意的意思 為一種選擇,由此 如果你是一個有點不安 在過程之中, 而你怕failure--即使 坦率地失敗意味著傷害你的GPA, 得到一個B和一個不A--是 正是,肯定是一個網關 當然像CS50等 入門課程, 該分級選項的目的是讓。 我衷心鼓勵 students--尤其是 如果在fence--啟動 當然SAT / UNS,甚至保持SAT / UNS。 但你一定可以切換到信 在該術語由第五週一級。 坦率地說,回來時,我 才上大一,1995年, 我自己根本就沒拿CS50 因為我沒有起床的神經 真正邁入教室。 這似乎是一個域名過於 陌生的我,真的只有 對於我的那些朋友, 坦率地說,誰曾編程 因為它們是六 也許10歲。 而這只是因為我 能夠利用CS50在我的一天 在相當於版本 SAT / UNS--通過/失敗回到day-- 即使我拿了50。 並以某種方式或其他,我 在這裡再次與大家今天。 同時現在還有什麼你 應該記住約50 是同時招生。 相反,有傳言稱 你可能聽說過, 可以,其實,同時 報名參加CS50和其他類 在滿足相同或重疊的部分 時間CS50的講座就在這裡。 請參閱課程綱要的詳情 實施物。 講座,同時,有違 什麼是正式在編錄, 通常只 滿足一小時。 有時,我們可能會遇到長一點。 但請記住, 在CS50的演講目標 是為您提供 一個概念的概述, 希望一些示威活動, 甚至一些贈品, 什麼樣的等待 之後的一周。 因此在演講中,我們將探討 這些主題和例子在一起, 使學生在舞台上,和 經常在舞台上的工作人員了,因為我們可以, 在短短每週幾個小時。 部分,同時,將 這些人這裡 - 提供許多 他們的教學研究員,有些 其中當然assistants--意志 可以每週發生。 什麼是關鍵,以保持 注意的是,我們 不要have--沒有什麼不同首先 夜,音樂類別 - 部分對於不同的軌道 學生不舒服,更 舒適,介於兩者之間。 坦率地說,你知道,如果 你不太舒服。 你可能知道,如果 你更舒適。 如果你真的不知道,你是 通過定義在兩者之間。 所以,當談到時間段 在一個星期左右,每教學大綱, 我們會問你這個問題。 而且,您可以自行選擇基於 在自己的舒適程度 和與students--與綠色 dots--的舒適程度給你類似。 同時,我們有問題 集,這將最終 定義你在這個過程中的經驗。 他們通常提供 在多個版本。 我們預期大部分標準版 每個學生在使用過程中應對 而且所謂的黑客版 ,提供任何形式的額外信貸 奪標但真正的吹牛的權利 說,你嘗試和解決 課程的黑客版的 接近類似的材料 但是從更複雜的角度。 我們提供的 標準版,因為, 再次,超級多數 學生,不 只有穿行,這是 視頻率領過程的工作人員 真正引導您通過 當然,面臨的問題和可能的設計 實現。 而且我們還經過了 事實上,報價屍體解剖, 因此,如果你想知道 你怎麼可以有 或者應該已經解決了一些 問題,教學人員 將引導您完成 那些對視頻以及。 與此同時,等待太有 5晚天的事實 我們會讓您 最低分數。 我們當然明白,作為交換 對於工作量預計50 你,生活的方式獲得 有時,如果不五倍。 因此,這將提供 你有點彈性, 從,說,延長你的最後期限 週四中午至週五中午。 請參閱課程綱要的 實施細則物。 現在有什麼正等待? 而這只是發生 我現在究竟有多長 我在你們站在這裡,在舞台上。 [笑] 戴維·J·馬蘭:但是我們會得到 不久高潮完成。 那麼是什麼在等待條款 問題集? 我們都很好,也許是玩笑話 去年做你的前輩。 在第一個問題集 去年,我們推出 從無到有,圖形 編程語言 您可以按字面編程 拖放拼圖, 像這樣的,是 讓人聯想到構造 看到短短一個星期 因此,當我們切換 到一個更傳統的 語言,被稱為C。 去年,我們進行 這個問題集, 涉及的密碼, 的信息的擾頻 保持它來自政府或朋友 眼睛,你不希望看到它。 編碼在這裡是一個 消息很快你 將能夠解密或解擾。 突圍是一個問題 其中,設置在去年, 你使用這些新發現的編程 技能,以真正實現 遊戲wherein--你 還記得從childhood-- 目標是要抨擊 磚是頭頂上的屏幕 在這裡,積累了 一路上得分, 並實現自己的算法 與此溶液最終 讓你玩遊戲。 同時,在後面的 學期,我們將為您 的143091英文單詞的字典。 而你將面臨挑戰 編寫一個程序, 拼寫檢查,證件,由 加載了許多話到內存 盡可能高效。 一般來說,你蝕 對你的同學 如果你選擇成為一個有點 在領先榜的挑戰 看看誰可以用最少的 運行時間的秒, 和最少數量 兆的內存, 居然微調你的程序 是令人難以置信的資源有效的不 只是時間。 去年,我們也期待在年底 的學期在web編程。 事實上,我們會做一遍這個 一年多的習題集, 向您介紹的技術和 心態與您可以申請 這些編程技巧 網站,動態網站, 實際上解決網站 的問題和不同的表現 並且不是簡單的靜態 網站的靜態信息。 最後一個項目,最終 將限定,雖然 課程的高潮 為學生,其中 你將面臨的挑戰是落實 最感興趣的東西 你,既然這麼長時間,不知何故 借鑒過程中的經驗教訓。 而當你在看到 在開始錄像, 我們將結束與學期 CS50 Hackathon,它如果不熟悉, 將開始在下午7:00一晚 最終在上午07時,第二天早上。 晚上9:00左右,我們將 為了在第一頓晚餐。 各地上午1:00,我們將 為了在第二個晚餐。 如果你還在 站在上午05時,我們 將穿梭巴士你 到IHOP吃早餐。 該CS50展,同時,一個事件 到2000以及教師,學生, 與來自全國各地的校園工作人員將 來看看你的成就 在使用過程中和最終 項目及作品 您在您的筆記本電腦的創造, 台式機,甚至可能是燈泡。 同時,辦公時間 和所述支撐結構。 現在它會一直是個 更好的時間來把你抱起。 辦公時間將於四夜 一個星期多小時,每天晚上 用的通常為20〜30 執勤過程中的工作人員立即 為您提供貼心 支持單對單的機會 隨著課程的習題集。 輔導過會 用,特別是 讓學生少comfortable--或 敢說至少comfortable--為誰 辦公時間是不 大部分培育環境 而且肯定不是 最無壓力。 特別是當最後期限緊迫, 我們將主動配對,你自己 與職員一起工作 一些定期為您的需求 和他們的日程安排允許​​。 和工作人員。 請允許我介紹Davon,搶, 和Gabriel,今年的頭。 如果您想每個喜歡say-- [掌聲] --a字。 [掌聲] Davon在這裡是 當然的經理,這 是指在他的全職角色 他有助於與執行 和CS50的物流。 DAVON:是啊,嗨,伙計們。 你會看到很多我在上班時間。 我會教節。 如果你前面拍的電子郵件, 我可能會得到回應。 所以我會看到很多關於你的學期。 並歡迎CS50。 戴維·J·馬蘭:現在加布里埃爾,誰 本人是剛上大一,去年, 但在過去的幾年中有 一直經營他自己的版本CS50的 在巴西,因此他下載 所有課程的內容 - 對 這顯然是 拍攝並放置online-- 這樣他就可以把它翻譯為 葡萄牙再教100多名 他的同學在中 一兩年過程中, 教授在他的母語 該課程的課程。 GABRIEL:你好。 [掌聲] GABRIEL:你好,我是加布里埃爾。 我是當然的頭TF。 我希望你會喜歡CS50。 這是CS50。 戴維·J·馬蘭:現在的羅布。 哦,你想介紹一下嗎? 羅伯:不,我不知道。 [笑] 戴維·J·馬蘭:和Rob博登。 [笑] 羅伯:你好,我是羅布。 這是我的第五個年頭 參與該過程。 每年,它只是一個 好類, 所以你們都清楚 將是真棒。 我希望大家有它的樂趣。 我將有它的樂趣。 所以,看到你身邊。 戴維·J·馬蘭:和 時間不容許我們 - [掌聲] 時間不允許我們 介紹給大家 在舞台上和所有的同事 誰是購物類今天。 但是,請允許我介紹 貝琳達和CS50之謎 天,這等待這 星期六,這 是第一的 當然的大型活動。 這其中尤其指 錘家點 該計算機科學是最終 不是編程,而是 有關解決問題的更普遍。 和益智一天,你會 看,會帶給你 和你的同學together-- 我們希望這個星期六。 貝琳達:確定。 嗨,伙計們。 所以感謝。 所以,作為我們的傑出隊長 說,我的名字的貝琳達。 我是一名大二的學生,在昆西家。 我就是喜歡你們,把 CS50去年,真的很喜歡它。 我有一個死穴 你們在第三排。 我很自豪地說,我現在 在承諾的關係 與CS50 [聽不清]。 行。 這是一個笑話我的跛腳版本。 總之,讓人感動的, 只是想邀請 你們所有的i實驗室,哈佛商學院或蕁麻疹。 我們將要為 益智日從12:00到3:00。 而且這對你有很大的機會 男人滿足你的同胞的CS的朋友, 解決一些非CS拼圖,就像船長 說過了,也吃了一些免費的食物, 賺了一些真棒獎品,如 禮品卡,75元的人, 和also--是什麼呢? Wii U的什麼? Wii U的? 是的。 對於我們的抽獎活動。 真棒。 所以,我會下課後留下來。 如果你們有什麼 的問題,讓我知道。 戴維·J·馬蘭:你會看到,超越 這沒有什麼今天做。 第一個問題集 將熄滅週五 但是,今天給我們帶來的家,我想 為您介紹具體多了一個 工作人員介紹,科爾頓成員 奧格登在這裡,他的手現在 你上面的保護, 這個MIDI控制器 給點意見進一步推敲家 在計算機科學中,也 具有適用性遠遠超出工程 和莖和計算機科學本身, 即使是這樣的領域如音樂延伸。 科爾頓有好心offered--我想 其中之一是要解決的重點。 安德魯,如果我們能夠召喚焦點 在這裡只是一瞬間。 科爾頓什麼做 預先計劃 該裝置中,此按鈕墊 你看到的生動描述了這裡, 作為MIDI控制器, 其中每個這些按鈕 被連接到一個特定的音符 或聲音,更普遍的記錄, 這樣,通過播放這些圖案 按鈕,很像比特圖案, 可以代表其他 更高層次的概念。 他將能夠最終 帶我們回家今天在這裡? 事不宜遲,如果 我們可以把燈光調暗, 並把後面的科爾頓在屏幕上。 聽眾:嗚! 戴維·J·馬蘭:這是CS50。 [音樂播放] [掌聲] 這就是它的CS50。 我們會看到你週五 一些蛋糕等待著你的耳堂。 [音樂播放]