你知道為何我會看演算法的公開課(open course)影片嗎?
夏再嚇:這我哪知道?沒學過吧!!
別介意啦!!用奇怪的問句描述個話題是我的習慣
雖然看起來是個不好的習慣
夏知饋:嗯~有個可能性,我在想是不是自學時遇上困難所以只好看影片
哎呀!!夏知饋好厲害啊
嗯,我被前幾天買回來的利用資料結構與演算法解題的書電爆了
像動態規劃(dynamic programming)導公式、skip list與許多沒看過的樹狀結構等等
試了一下真的覺得理解上有些困難
萬袑衽:為什麼要買那麼難的書?
因為比較簡單的,看了幾題感覺就不太想買
買較難的書優點就是
知道ACM解題競賽不是一蹴可幾的
萬袑衽:等等,運用資料結構與演算法解題
萬袑衽:與其補強演算法,不覺得針對各特例題目去理解比較務實嗎?
嗯,你說得沒錯
可是我解不出來的題目並不單只有用到特殊資料結構的
而且我演算法也只有看過教材沒真的上過課
出於好奇心想看些課的影片或教材,看能否有些收穫(個人喜歡禾部的獲)
吳鶴以:其實可以理解成學長不太想解題,想看能不能撿現成的
嗯,雖然有些直接,但大概就是這樣
切入主題
中英雙字幕影片在網易公開課(open.163.com)
這是第一堂課的影片
Stanford的也不錯,在找排列(permutation)程式時,有看到相關影片
不過個人英文差、聽力不好,就看有字幕的了
目前的心得是
這堂課老師雖然一直很強調要先修機率課與具備些基礎數學能力
但看到63分鐘時,意外的發現他問的題目原則上都會
不過我英文不太行不清楚要怎麼回答
吳鶴以:哦,影片是連續80分鐘啊
吳鶴以:若是現場上課身體要很好、水喝少點,不然中途得暫離陣子
像期望值就是各情況出現的值乘上出現的機率再加總,也可以說是加權平均的總和
然後等差級數、等比級數這邊比較難
呃,這邊難不是指本身很難
因為臺灣教學比較務實,用的名詞是平易近人的
等差級數就是算術級數(arithmetic series)
等比級數就是幾何級數(geometric series)
不過這邊其實回想一下
"算術幾何平均不等式"(算術平均數大於等於幾何平均數)
就大概知道英文了
萬袑衽:以你的程度,至少還有看過教材,與第一堂課來說,不會的話才需要去切腹吧
夏再嚇:我發現,學長說的部份連我都會欸
其實還有統計學的均勻分布啦
這邊就比較需要修先修課了
萬袑衽:不能理解,均勻分布不是必教的嗎?
吳鶴以:可是均勻分布,每個情況機率均等的那個,不是通常連題目都不屑出嗎?
吳鶴以:不過美國跟臺灣的著重點可能較不一樣,或者說是課程編號的著重差異
夏知饋:統計好像大多在考假設檢定概念、各種分配、大小樣本與查機率表
呃,祂們的先修課不是統計是機率啦!!
上述說的是因為我們算商管出身的
這邊統計、機率相關的基礎部分比較沒問題或者說不能有問題啊
但程式熟練度的部分可能就會有麻煩了
不過程式與其修課
不如把各校的程式設計題目做過與看別人是怎麼解的較有幫助
我是覺得在理工領域,呃,程式可能算電資領域
會解一個學校的題目、作業、實驗,就等同或超過那學校的學生了
嗯,繼續看,以後有心得的話再新增!!
第一堂還沒看完的說
這就是80分鐘的威力
其實裡面有段關於寫程式的話還蠻有意思的
寫程式要到一定水準,就兩年內每天寫程式
但寫程式要有所突破的話
可以選擇十年內每天寫程式,或寫程式兩年跟修堂演算法
雖然這段是較不具實質生產
有些像精神喊話的部份
第二堂課的重點
個人感覺是沒唸computer science真是太好了
可以避開理論部分
等比(幾何)級數公式推導(太久了也許會忘記需要複習下)
還有樹(tree)的概念
高度準確來說應該是log ₂ (n+1)
也許是+1被省了,還是祂們算樹的高度是從0開始算,這邊不太清楚
還有像葉(leaf)節點,葉節點就是底下沒分支的節點
感覺上演算法這堂課的先修課不只機率
應該還有資料結構或離散數學
因為課堂上沒特別講解概念
反正大概懂就好了
想加強的是程式部分,理論就草草看過
以後發現需要補強時再回過頭來看