教一位文藝女青年演算法,有哪些書與網路資源推薦?

網路資源:包括有真人回答的論壇、視頻;中英均可。


如果該文藝女青年同學認真的想學演算法,程門立雪那麼想,可以嘗試教一下,愚公移山那麼教。

鑒於應該是個沒基礎的,所以基本沒法套著科班出身的經驗重走當年長征路。真要從編程,離散數學,計算複雜性這些一步步講上來,到該女青年能聽懂O(nlogn)的時候應該已經兩年過去了。而且這時候,也就剛剛登堂入室,正經實用的演算法還沒來得及接觸幾個。這種進展速度對於保持學習熱情是個挑戰,而對於保持文藝女青年的熱情是個幻想。

所以愚公移山的方法是從生活點滴里教。

比如文藝女青年同學愛攝影,讓她拿出20張照片,標明拍攝時間後,先教基本的排序演算法。從冒泡到快速排序,像發牌一樣用手走一遍排序演算法,學排序不必先學會C或python。

然後取其中一張照片,讓她推薦和這張最相關的照片。「喜歡這張照片的也喜歡」,是的,可以簡單介紹一下協同過濾的思路。

然後給一個關鍵詞,讓她從這些照片里找幾張最符合的。可以教一下基本的搜索引擎rank演算法怎麼玩。我擔心文藝女青年到這時候已經開始不耐煩並要求出門去攝影了。那就正好,愚公下次再繼續移山好了。

要領是:不要企圖把文藝女青年變成一個程序員,在對方生活經驗內指出無所不在的演算法即可。


對於普通青年,我會推薦演算法導論,會推薦 http://poj.org,但是既然問題是文藝女青年,那麼答案應該有些不一樣。

是的,找個懂演算法男朋友就好了。


推薦北航的OJ:http://www.bianchengla.com/ ,上面入門水平的題非常多,對於新手很合適。(2周-4個月)

做的無壓力之後,可以系統的看一些演算法和數據結構的書,這時候你的水平已經對各個演算法數據結構有比較好的了解了,所以書地選擇可以很隨意,但是不推薦演算法導論,經典但不適合速成,如果不是對各種演算法有了比較好的了解,不容易領悟其中的玄妙。(1周-1個月)

這時候,就可以根據自己的實際情況學習了,如果對基礎演算法有興趣,就去做大學ACM的OJ,比如http://poj.org等等。如果是對機器學習方向的東西感興趣,那就在學習完圖論、離散、概率和高等數學的基礎上看standford的機器學習視頻,之後結合自己情況看些論文之類的東西。


文藝女青年學演算法,好奇怪噢。

我身邊也有幾個會演算法的文藝女青年,但,問題是,她們的文藝與演算法無關。

她們會演算法,因為她們是CS專業,或者她們從小開始搞OI,沒見過更多的原因。

「左手程序右手詩」,是我認識的一個會演算法的文藝女青年的簽名,大概就這樣吧,演算法很美,但和文藝女青年不是很搭。


從面試題裡面的腦筋急轉彎(Brain Teaser)開始咯,又不用學編程,基於生活,又能介紹『演算法』的概念……

演算法的本質是一個procedure,給一個合法的input,通過這個procedure處理,生成我們想要的output. 比如一個例題:有一個容量為3升和一個容量為5升的容器,往裡面裝水,如何獲得4升水呢。過程中,兩個容器只能清空或者裝滿。沒有度量,不能用其它容器。怎麼做呢?

如果那個女生覺得這樣的題目有趣,那就可以繼續玩。記得小學奧數有一類題目專門講這類題,挺有意思的。如果她有興趣學編程了,那就讓她學python去。


不知道你會不會某一個編程語言,如果不會的話還是學一個語言再說吧,不然怎麼嘗試著寫?在學語言的過程中肯定會有一些小題目,算個數列某一項,排序求和什麼的,這些如果可以自己寫出,就開始看看數據結構。數據結構我的經驗的是看&<數據結構與演算法分析&>這本書,有用不同語言描述的,差別不大。我們學校的演算法教學也就這個水平了。如果這本書掌握好了,演算法導論我個人認為就可以不看了,因為你都會了^_^.

再往後,就找某一個特定演算法研究研究吧...


鑒於「文藝」屬性,推薦鄒恆明的《演算法之道》,此人還寫過一本更唬人的書叫做《操作系統之哲學原理》——從聖經開始講起!不過最後考慮到「女青年」的屬性,建議還是直接找真人吧。。。不信,可以打賭。。。


誰尼瑪要干教文青學演算法這種事情啊!!!!!

學點重裝系統之類更實用的技能不好嗎!!!!

話說最簡單的就是去某大學蹭一學期的C語言課程,基本演算法和編程的基礎認知都了解了。自學一門全新的思考方式完全不同的技能,門檻還是挺高的。


演算法導論; 數據結構相關書籍若干;

如果TA 可以很快理解雙層循環、遞歸、冒泡排序,還可以繼續嘗試下;(文藝 | 女青年)一般都很難接受這些東西; (文藝 女青年),太有挑戰了!!還不如幫TA重裝系統 把妹神技.........


推薦閱讀:

每天你都煩自己卧室太亂卻又不願整理的壞習慣要怎麼改?
如何與文藝男青年男朋友相處?
你認為最文藝的一張圖片是哪張?
文字傳遞的負能量到底有多大?

TAG:文藝青年 | 演算法 | 計算機 |