CS專業本科生簡歷上寫實現過《演算法導論》上的全部演算法是否合適?

最近在努力刷《演算法導論》,想問問大神們,《演算法導論》作為內功修鍊,該不該寫在簡歷上?(本科簡歷沒啥亮點可寫)

另外課後習題是不是要一道一道擼完?作為程序員,好想只寫出代碼就跑路


我大二半個學期就把算導主要的演算法全寫了一遍
GitHub - JimChengLin/JimCollection: Algorithms and Other Things
但每次無論是拿我的AsyncDB還是拿我算導的代碼, 好像所有人都不知道這有什麼意義?

初入社會, 去了一家杭州做徵信的企業.
一開始, 所有人都當我是菜鳥. 之後, 3個月從零開始用React Native順利寫完了一個還算複雜的App並上架. 這個我認為最簡單的任務, 反而讓很多人很厲害.

再然後, 我辭職了. 薪資方面有些矛盾, 我在那家公司幹了4個月, 總共拿到手的錢沒到1萬.

在那邊, 我演算法上有兩個成就.
第一, 用Myers演算法重寫了文檔比較邏輯. 第二, 設計了帶權重的Pagerank演算法(沒來得及實裝).

我有時候也慢慢能體會到, 其實程序員在國內和那些推銷保險的臨時工差不多. 只是個螺絲釘而已. 你走了, 機器還是照樣轉. 大部分的互聯網企業還是以運營為核心的, 並不真的怎麼重視技術. 你文檔比較速度快個50%, 有什麼意義呢?

不過, 我寫程序主要還是為了興趣多一點, 希望不忘初心!

最近在寫一個正則引擎加強版! 技術人員總要有點驕傲(傲嬌)吧!


你如果實現過,哪怕僅僅是一部分,都可以把代碼扔github上,然後在個人項目里寫這個,再附上鏈接。如果你只是說自己看完了算導,那你就是空口無憑;但你如果把源碼擺出來,不僅能證明你的的確確領悟了書的內容,而且這些東西也算代碼量,可以作為項目經歷中的一部分。我覺得這個東西遠比寫個app有價值。

如果你怕面試時候挑算導的題來考,你就說你寫了某個語言的擴展演算法庫,給你的項目做個包裝,知道吧。人家實現stl的都能寫,你這個又怎麼了?


你可以寫啊,如何寫簡歷是你的自由。不過如何看簡歷是HR/面試者的自由。要我的話,我更看重做了什麼別人做不了的,而不是重複了什麼別人已經做過的;更看重實際項目,而不是作業;更看重如何組織自己的工作,而不是寫出代碼就跑路。


寫了無非兩種後果:

1. 被面試官忽略

2.被面試官重視,面試的時候各路演算法題轟炸


你當然可以寫啊,有沒有人想因此理你這是另外的問題(逃


別寫,看上去太出格,簡歷篩選直接就過了


謝邀,我感覺如果只是對著演算法導論上面的偽代碼,單純變成一個可執行文件,而且也沒有放到oj或者別的工程文件中接受黑盒子白盒子測試,這並不是什麼太了不起的東西。除非你可以信手拿起鍵盤打開IDE或者編輯器直接擼一段代碼出來,並且可以很快地分析作用範圍,複雜度以及優化方法,這樣我覺得絕大多數的公司的面試都能應付自如了。另一種可能就是把演算法導論的東西變成一個庫,然後自己基於這個庫進行app開發,這樣我覺得也能擊中大多數公司的敏感點。


我認為這麼寫有害無益,這還是假設你真的做到了的前提下。

一方面,簡歷關多半是不會影響你過或者不過的,樓上有人說HR還是懂行的,這點我持保留意見,我認為不會有多少人發現這個「亮點」。

另一方面,面試官幾乎是一定會注意到的,然後他就想挑戰你,然後你的面試題就會比別人難很多。做得出也就罷了——何況你要是有這水平,你又何必找這麻煩呢,反正能過一般水平的面試——要是做不出呢?


我是不會這麼寫的,萬一面試的真有一本演算法導論,拿出一個題讓我來實現咋辦


如果我是面試官,而你又說你寫過的話,那麼我會考慮隨機挑幾個經典題目,然後問你在工程實現上遇到的困難點以及解決這些難點時的思考。


你先全實現一遍再說。光靠在座的各位給你言語上的首肯是不夠的,知乎上年輕人容易犯的一個毛病就是如果我怎麼怎麼樣:如果我都實現了是不是很牛逼,如果我中了五百萬。。。。現實中八字還沒一撇,腦海里先把成功的喜悅演繹了一遍,面對這樣的問題,拜託:

你先實現了再說,你先中了再說!

就醬。

PS。所有的你都實現了,你已經高出百分之九十的同屆生了。至少演算法方面。一般公司也都能去了,放心,HR還是有這點專業素質的,你的簡歷一定會被挑出來的。別忘了把《演算法導論》四個字加粗加大。


我現場給你一台電腦,你給我把斐波那契堆寫出來


如果我是面試官,你單純把書擼了一遍,我也許根本不會太在意(這要看當天的心情

但是,你如果通過書自己寫了個演算法庫,那就完全不一樣了.(逃

畢竟,工程能力才是重要的.


沒什麼卵用,我只寫ACM拿過XX獎。


蓋大高樓需要一個好的地基,

一個好的地基不一定能蓋起來大高樓。

你去賣一塊地的時候,有的人想買個摩天大廈,或者蓋個迪拜塔。有的人就想買個三室一廳的一層小別墅。但是你光有一塊地基,挖了個大坑,幾乎一定賣不出個好價格。買家會問你——樓呢?

演算法導論是個好東西,毫無疑問。但是你最終發揮出來的能力,演算法導論依然只是基礎。就像一個人雇屠夫,問他你一天殺幾隻豬,屠夫說,我雖然還沒殺過豬,但是我這個刀已經磨得足夠快了,要想殺豬,一刀一個。可是又有多少個雇屠夫的人,有時間培養他等待他練慣用他的屠龍刀殺豬呢?

看似嘆為觀止的地基上,最後小房子都蓋不起來的,也不是從未出現過。

如果你認為演算法導論這個東西很重要,或者很本質,實現完了面對其他問題都手到擒來,那你不妨拿個問題試試呀?就像會了小無相功的鳩摩智,進少林遛一遛,不費吹灰之力,證明自己很牛。如果你在這個過程中發現,原來基本功到實際問題之間還有這麼大的差距,那你就不難想像,為什麼HR和面試官在看到你簡歷這個部分的時候,會不那麼重視。相反,在你看來的很簡單的項目實現上,他們會兩眼放光。

當你有潛力,而他有實力,你的潛力可能遠超出他現在的實力,但是公司不一定總會選擇一個未來光明的人,他們經常選擇一個來之能戰的人。玩過FM么?潛力高的小牛多得是,但是經營球隊,更多的時候還是看即戰力的。儘管每個頂級球星都天賦異稟,但不代表每個天賦異稟的人都能成為頂級球星。不是所有人都是虛竹,這個世界上還有董方卓。

所以啊,刷演算法導論當然是個好事,磨刀也自然不誤砍柴工,但是找工作之前,是不是也得用快刀砍砍柴?畢竟到了最後,給公司實現效益的,不是你的刀有多快,而是你砍了多少柴。


演算法適可而止即可,本科畢業就搬磚的話並不需要太多演算法(90%以上演算法知識都是為了面試的時候準備的)。

具體的工程經驗更重要,也就是,多寫代碼,多讀好代碼。這些才是主菜。

當然,如果你是想參加acm,畢業去深造,做高大上的研究,看看也沒啥壞處。


更新,談下目前對CLRS這本書的理解

書本身的內容

翻開目錄部分,你會發現,作為一個本科生階段的讀物,所使用的數學工具基本上都是高中階段的知識和離散數學的基本知識,翻翻wiki,半天時間都能基本理解了。最後加上第四章介紹的主方法,組成了這本書複雜度推導所使用的全部理論知識。可見,從難度上來講,把它捧得太高是不科學的。(這並不代表課後習題也很簡單)

內容上,概括得說就是,正文部分講主要的數據結構和常見的演算法。思考題部分擴充了很多其他的數據結構或者正文中所提到的結構的一些實用的擴充方法。課後習題主要是三個作用:1、深入挖掘正文所介紹的數據結構,很多自以為理解的地方撥開來看發現還是存在認識的模糊;2、引導你優化某些方法;3、應用。(所以大多數人對只看正文的行為很不屑)

CLRS基本覆蓋了常見的數據結構和演算法,「完全足夠搬磚所需」。

建議

想要漂亮的簡歷的話,不建議把時間用在這本書的學習上,認真造個輪子對找實習找工作更有幫助。而對於有競賽情節的人,這本書也不夠用。閱讀演算法導論是一個比較耗時間和精力的過程。

我很感激自己讀了這本書。

最後,一直想把之前看書時寫過的代碼按規範重寫一遍,加上些C++11,14的新特性,但是我的拖延症啊,唉。。。

以下為原答案

------------------

可以寫,沒必要

比較好的選擇是github上創建一個項目,然後將每天完成的演算法都上傳上去。簡歷上留下github地址就好,也沒必要提演算法導論。

另,我當時完成了90%左右,課後題都沒寫代碼而是在紙上解答的。很多不會的都是Google答案。我覺得演算法導論上最值錢的部分不是課後題,也不是正文,而是每章最後擴展里的那幾道題


如果題主確實把演算法導論都實現了,那當然可以在簡歷上這麼寫啊。

不用擔心,面試官肯定會考問你的。

更不用擔心的是,如果你白板實現失敗,面試官會認為你騙人。

所以題主看著辦吧。

我記得兩年前知乎有人說,裸手寫快排就能價值一萬。不知道現在還是不是這個行情。

總之,懂演算法絕對是優勢。

反正,有句話是這麼說的,

搞演算法研究大多是富二代;

搞工程開發大多是窮二代。

φ(. .)

哦,不用找了,這話我說的。


不過分,還有很多人寫精通C++....


恕在下直言,我認為clrs中的絕大部分內容是一個cs本科畢業生應當掌握的,當中的大部分演算法和數據結構都應當隨手寫。課後習題應當都做。

所以你把這個寫進簡歷並不厲害...

對於競賽選手來說,演算法導論真的只是個導論...

不是能實現裡面的演算法就是學會了,而是即使獨立做完了裡面的習題也不一定能掌握,還需要額外的練習

所以,如果你真的覺得自己學的很好了,不妨參加一下acm, gcj之類的比賽,國內大廠的比賽也很多。把比賽經歷寫在簡歷或許更能證明你的演算法能力。

我很反感把clrs捧上神壇,它是一本極好的書,但不是九陽神功,僅僅是少林寺的小和尚每天都打得拳法而已


推薦閱讀:

如今「雲計算」流行的今天,是否違背了計算機先驅們「去中心化」的理念?
霧計算與雲計算哪一個是技術的變革哪一個是商業模式的變革?
【估算】計算機對兩個簡單自然數做相乘運算需要多少時間?
有哪些十分精巧的數值演算法?
Python 有哪些新手不會了解的深入細節?

TAG:計算機科學 | 演算法導論書籍 | 演算法設計 |