2016-08-08 23:00:37
導讀:程序對現在會使用電腦的人來說都已經不陌生,但講到算法,那是計算機的專業術語,使用算法的目的是讓程序擁有更優的執行狀態,這篇文章卻把程序算法和人生選擇對應起來,一定對大傢很有啟發。
文/陳皓
每年一到要找工作的時候,我就能收到很多人給我發來的郵件,總是問我怎麼選擇他們的offer,去騰訊還是去豆瓣,去外企還是去國內的企業,去創業還是去考研,來北京還是回老傢,該不該去創新工場?該不該去thoughtworks?……等等,等等。今年從7月份到現在,我收到並回復瞭60多封這樣的郵件。我更多幫他們整理思路,幫他們明白自己最想要的是什麼。(註:我以後不再回復類似的郵件瞭)。
我深深地發現,對於我國這樣從小被父母和老師安排各種事情長大的人,當有一天,父母和老師都跟不上的時候,我們幾乎完全不知道怎麼去做選擇。而我最近也離開瞭亞馬遜,換瞭一個工作。又正值年底,就像去年的那篇《三個故事和三個問題》一樣,讓我想到寫一篇這樣的文章。
幾個例子當我們在面對各種對選擇的影響因子的時候,如:城市,公司規模,公司性質,薪水,項目,戶口,技術,方向,眼界…… 你總會發現,你會在幾個公司中糾結一些東西,舉幾個例子:
某網友和我說,他們去上海騰訊,因為騰訊的規模很大,但卻發現薪水待遇沒有豆瓣高(低的還不是一點),如果以後要換工作的話,起薪點直接關系到瞭以後的高工資。我說那就去豆瓣吧,他說豆瓣在北京,污染那麼嚴重,又沒有戶口,生存環境不好。我說去騰訊吧,他說騰訊最近組織調整,不穩定。我說那就去豆瓣吧,慢公司,發展很穩當。他說,豆瓣的盈利不清楚,而且用Python,自己不喜歡。我說,那就去騰訊吧,……還有一網友和我說,他想回老傢,因為老傢的人脈關系比較好,能混得好。但又想留在大城市,因為大城市可以開眼界。另一網友和我說,他想進外企,練練英語,開開眼界,但是又怕在外企裡當個螺絲釘,想法得不到實施。朋友拉他去創業,覺得創業挺好的,鍛煉大,但是朋友做的那個不知道能不能做好。還有一網友在創新工場的某團隊和考研之間抉擇,不知道去創新工場行不行,覺得那個項目一般,但是感覺那個團隊挺有激情的,另一方面覺得自己的學歷還不夠,讀個研應該能找到更好的工作。還有一些朋友問題我應該學什麼技術?不應該學什麼技術?或是怎麼學會學得最快,技術的路徑應該是什麼?有的說隻做後端不做前端,有的說,隻做算法研究,不做工程,等等,等等。因為他們覺得人生有限,術業有專攻。等等,等等……我個人覺得,如果是非計算機科班出生的人不會做選擇,不知道怎麼走也罷瞭,但是我們計算機科班出生的人是學過算法的,懂算法的人應該是知道怎麼做選擇的。
排序算法你不可能要所有的東西,所以你隻能要你最重要的東西,你要知道什麼東西最重要,你就需要對你心內的那些欲望和抱負有清楚的認識,不然,你就會在糾結中度過。
所以,在選擇中糾結的人有必要參考一下排序算法。
首先,你最需要參考的就是“冒泡排序”——這種算法的思路就是每次冒泡出一個最大的數。所以,你有必要問問你自己,面對那些影響你選擇的因子,如果你隻能要一個的話,你會要哪個?而剩下的都可以放棄。於是,當你把最大的數,一個一個冒泡出來的時候,並用這個決策因子來過濾選項的時候,你就能比較容易地知道你應該選什麼瞭。這個算法告訴我們,人的雜念越少,就越容易做出選擇。好吧,可能你已茫然到瞭怎麼比較兩個決策因子的大小,比如:你分不清楚,工資>業務前景嗎?業務前景>能力提升嗎?所以你完全沒有辦法進行冒泡法。那你,你不妨參考一個“快速排序”的思路——這個算法告訴我們,我們一開始並不需要找到最大的數,我們隻需要把你價值觀中的某個標準拿出來,然後,把可以滿足這個價值的放到右邊,不能的放到左邊去。比如,你的標準是:工資大於5000元&&業務前景長於3年的公司,你可以用這個標準來過濾你的選項。然後,你可以再調整這個標準再繼續遞歸下去。這個算法告訴我們,我們的選擇標準越清晰,我們就越容易做出選擇。這是排序算法中最經典的兩個算法瞭,面試必考。相信你已爛熟於心中瞭。所以,我覺得你把這個算法應用於你的人生選擇也應該不是什麼問題。關鍵在於,你是否知道自己想要的是什麼?