第497章 養魚先養塘
從綜合體育館出來,蘇念和黃文岫往女生宿舍方向走。
顧嶼往反方向拐。
「你不跟我們一起回去?」
蘇念停下腳步,轉過頭看他。
「我去報個社團。」
顧嶼沖她晃了晃手機,
「你先回去繼續研究商標分類。」
蘇念推了推眼鏡,目光裡帶著疑問。
「計算機協會……到底為什麼?」
「興趣。」
顧嶼面不改色。
蘇念盯著他看了兩秒,沒再追問。
她轉過身,和黃文岫並肩往宿舍走去。
顧嶼看著那個灰格子百褶裙的背影消失在梧桐樹後面。
行了,JK制服危機暫時解除。
他掏出手機翻了翻校園社團通訊錄,找到計算機協會的活動室地址。
東區六教,地下一層,B07室。
十分鐘後,顧嶼站在B07門口。
門沒關。裡面傳來鍵盤的噼啪聲和偶爾蹦出來的低聲討論。
顧嶼推門進去。
活動室比漢服社的要大兩倍。
靠牆一排桌子上擺著七八台顯示器,屏幕上閃爍著各種IDE界面和終端窗口。
三個穿格子衫的男生正圍在一台機器前爭論什麼,還有兩個人戴著耳機在敲代碼。
靠門最近的桌子後面坐著一個瘦高個,戴著厚厚的黑框眼鏡,T恤上印著一行代碼:
while(alive){eat();sleep();code();}
他抬頭看見顧嶼,目光在他身上停了一秒。
「新生?」
「對。大一,來報名入社。」
「什麼院系的?」
「國際政治。」
瘦高個的手指懸在鍵盤上方,整個人明顯卡了一下。
旁邊那三個圍在一起的男生也轉過頭來。
活動室里安靜了大概三秒。
「國際政治?」
瘦高個推了推眼鏡,表情像是聽到了一個不太好笑的冷笑話,
「同學,你是不是走錯了?隔壁B08是模擬聯合國社團。」
「沒走錯。」
顧嶼拉過一把椅子,大咧咧地坐下。
瘦高個和旁邊的人交換了一個眼神。
「你學過編程嗎?」
瘦高個勉強維持禮貌。
「學過一點。」
「學過什麼語言?」
「C,Python,Java都碰過。」
瘦高個的眉毛動了一下。
他顯然沒預料到一個文科生能一口氣報出三門語言的名字。
「我們協會有個慣例,新入社的成員需要做一套簡單的測試題。這是給非專業同學的基礎版。」
瘦高個從桌上翻出一張A4紙,推過去,
「不限時間,手寫偽代碼就行。」
顧嶼低頭看那張紙。
三道題。
第一道:實現一個冒泡排序算法,並分析其時間複雜度。
第二道:給定一個字符串,判斷它是否為回文。
第三道:用遞歸實現斐波那契數列的第N項,並說明遞歸方案的缺陷及優化方向。
顧嶼差點沒繃住。
冒泡排序。回文判斷。斐波那契遞歸。
這三道題,對顧嶼來說實在太小兒科了。
前世他創業沒錢僱人,產品、開發、測試全是他一個人硬扛,硬生生被逼成了個全棧野路子。
這種感覺怎麼形容呢。
大概就是讓一個開了十五年卡車的老司機,去考科目一的口頭題:「紅燈亮了應該怎麼辦?」
顧嶼拿起旁邊的原子筆。
第一道題。
他沒用標準教科書的寫法。
手起筆落,直接寫了一版雙向冒泡排序的優化變體,減少了接近一半的無效遍歷。
時間複雜度分析寫了三行,從最優O(n)到最差O(n²),順帶提了一句在近乎有序的數據集上,插入排序的常數項優勢更大。
第二道題。
回文判斷。
他用雙指針法寫完,又在旁邊補了一行注釋:若輸入是Unicode字符串,需額外處理代理對的邊界情況。
第三道題。
斐波那契遞歸。
顧嶼寫完樸素遞歸版本後,在下面畫了一棵遞歸樹,標註了大量重複子問題。
然後給出了兩種優化方案:備忘錄法和自底向上的動態規劃。
最後,他在紙張空白處加了一行小字:「如果N極大且只需精確值,建議用矩陣快速冪,時間複雜度可壓到O(logN)。」
全程不到四分鐘。
顧嶼把筆放下,把那張A4紙推回去。
瘦高個接過來,低頭掃了一眼。
他的表情變化很有層次。
先是例行公事的隨意一瞥。
然後眉頭擰了一下。
然後眼球開始快速左右移動,像是在逐行校驗代碼邏輯。
然後他的嘴巴微微張開了。
旁邊一個圓臉男生湊過來看了一眼,低聲說了句什麼。
瘦高個沒理他,把紙翻過來看了看背面是不是也寫了東西,確認沒有之後,又翻回正面重新看了一遍。
「同學。」
瘦高個抬起頭,表情已經完全不一樣了,
「你確定你是國際政治的?」
「確定。」
「你這個雙向冒泡的寫法……你之前在哪學的?」
「自學。」
顧嶼語氣很淡,
「網上教程挺多的。」
瘦高個看了他好幾秒,又看了看手裡的答卷。
「矩陣快速冪……」
他指著最後那行小字,聲音不自覺地低了半度,
「這個我們協會的副會長也未必會在入社測試里隨手寫這種東西。」
顧嶼心裡想的是,你們副會長要是連這都寫不出來,那我來這兒挖人的計劃怕是要泡湯。
但他臉上只是客氣地笑了笑。
旁邊那三個格子衫男生已經全部圍了過來,一個個伸長脖子看那張A4紙。
「雙指針還考慮了Unicode代理對?」
圓臉男生倒吸了一口氣,
「我上學期數據結構課設都沒想到這個。」
「這字也太好看了吧……」
另一個男生冒出了一句畫風清奇的評價。
瘦高個把那張紙放在桌上,從抽屜里翻出一張空白的社團登記表。
「叫什麼名字?」
「顧嶼。」
「手機號?」
顧嶼報了號碼。
瘦高個一筆一划地幫他填完,然後從桌上摸出一枚社團徽章遞過來。
銀色的小圓牌,上面刻著一個簡化的二進位圖案。
「歡迎入社。」
瘦高個站起來,伸出手,態度跟三分鐘前判若兩人,
「我叫陳恪,大三,計算機系,現任協會技術部部長。以後有什麼活動我在群里通知你。」
顧嶼跟他握了一下手。
「對了,」
陳恪猶豫了一下,
「你考慮過轉專業嗎?以你這個水平,轉到計科或者軟工完全沒問題。」
「暫時沒有。」
顧嶼搖了搖頭,
「就是單純感興趣。」
陳恪的表情明顯寫著「暴殄天物」四個大字。
顧嶼沒有多留。
拿了徽章,加了群,告辭出門。
走出六教地下室的那一刻,十月的晚風迎面撲來,帶著北京深秋特有的干冽氣息。
顧嶼把那枚銀色徽章攥在手心,嘴角微微上揚。
興趣?
當然是興趣。
不過他感興趣的不是社團本身,而是社團里的人。
清華計算機協會,中國最頂尖的程式設計師苗子集散地。
這間不到五十平米的活動室里,未來十年會走出不少網際網路公司的CTO、技術合伙人、獨角獸創始人。
他們現在還只是一群穿著格子衫、喝著可樂、為一個排序算法爭得面紅耳赤的大學生。
養魚先養塘。
現在撒下的餌,三年後收網。
顧嶼把徽章塞進口袋,掏出手機。
飛書上彈出一條新消息。
林溪:
「快錢的人同意下周一在上海見面。關國光本人會到場。」
顧嶼看了一眼,回了兩個字:
「收到。」
口袋裡的手機又震了一下。
他低頭一看,是蘇念發來的引力消息。
「社團報了嗎?」
「報了。」
「他們沒為難你?」
「問了三道題。」
「難嗎?」
顧嶼盯著屏幕想了想,打了四個字:
「還行吧。」
蘇念的回覆很快。
「說人話。」
顧嶼笑了,編輯了一條新消息:
「比追你簡單多了。」
對面沉默了整整十五秒。
然後彈出一條消息:
「油嘴滑舌。晚安。」
顧嶼盯著那兩個字看了一會兒。
晚安。
多好的詞。
顧嶼往反方向拐。
「你不跟我們一起回去?」
蘇念停下腳步,轉過頭看他。
「我去報個社團。」
顧嶼沖她晃了晃手機,
「你先回去繼續研究商標分類。」
蘇念推了推眼鏡,目光裡帶著疑問。
「計算機協會……到底為什麼?」
「興趣。」
顧嶼面不改色。
蘇念盯著他看了兩秒,沒再追問。
她轉過身,和黃文岫並肩往宿舍走去。
顧嶼看著那個灰格子百褶裙的背影消失在梧桐樹後面。
行了,JK制服危機暫時解除。
他掏出手機翻了翻校園社團通訊錄,找到計算機協會的活動室地址。
東區六教,地下一層,B07室。
十分鐘後,顧嶼站在B07門口。
門沒關。裡面傳來鍵盤的噼啪聲和偶爾蹦出來的低聲討論。
顧嶼推門進去。
活動室比漢服社的要大兩倍。
靠牆一排桌子上擺著七八台顯示器,屏幕上閃爍著各種IDE界面和終端窗口。
三個穿格子衫的男生正圍在一台機器前爭論什麼,還有兩個人戴著耳機在敲代碼。
靠門最近的桌子後面坐著一個瘦高個,戴著厚厚的黑框眼鏡,T恤上印著一行代碼:
while(alive){eat();sleep();code();}
他抬頭看見顧嶼,目光在他身上停了一秒。
「新生?」
「對。大一,來報名入社。」
「什麼院系的?」
「國際政治。」
瘦高個的手指懸在鍵盤上方,整個人明顯卡了一下。
旁邊那三個圍在一起的男生也轉過頭來。
活動室里安靜了大概三秒。
「國際政治?」
瘦高個推了推眼鏡,表情像是聽到了一個不太好笑的冷笑話,
「同學,你是不是走錯了?隔壁B08是模擬聯合國社團。」
「沒走錯。」
顧嶼拉過一把椅子,大咧咧地坐下。
瘦高個和旁邊的人交換了一個眼神。
「你學過編程嗎?」
瘦高個勉強維持禮貌。
「學過一點。」
「學過什麼語言?」
「C,Python,Java都碰過。」
瘦高個的眉毛動了一下。
他顯然沒預料到一個文科生能一口氣報出三門語言的名字。
「我們協會有個慣例,新入社的成員需要做一套簡單的測試題。這是給非專業同學的基礎版。」
瘦高個從桌上翻出一張A4紙,推過去,
「不限時間,手寫偽代碼就行。」
顧嶼低頭看那張紙。
三道題。
第一道:實現一個冒泡排序算法,並分析其時間複雜度。
第二道:給定一個字符串,判斷它是否為回文。
第三道:用遞歸實現斐波那契數列的第N項,並說明遞歸方案的缺陷及優化方向。
顧嶼差點沒繃住。
冒泡排序。回文判斷。斐波那契遞歸。
這三道題,對顧嶼來說實在太小兒科了。
前世他創業沒錢僱人,產品、開發、測試全是他一個人硬扛,硬生生被逼成了個全棧野路子。
這種感覺怎麼形容呢。
大概就是讓一個開了十五年卡車的老司機,去考科目一的口頭題:「紅燈亮了應該怎麼辦?」
顧嶼拿起旁邊的原子筆。
第一道題。
他沒用標準教科書的寫法。
手起筆落,直接寫了一版雙向冒泡排序的優化變體,減少了接近一半的無效遍歷。
時間複雜度分析寫了三行,從最優O(n)到最差O(n²),順帶提了一句在近乎有序的數據集上,插入排序的常數項優勢更大。
第二道題。
回文判斷。
他用雙指針法寫完,又在旁邊補了一行注釋:若輸入是Unicode字符串,需額外處理代理對的邊界情況。
第三道題。
斐波那契遞歸。
顧嶼寫完樸素遞歸版本後,在下面畫了一棵遞歸樹,標註了大量重複子問題。
然後給出了兩種優化方案:備忘錄法和自底向上的動態規劃。
最後,他在紙張空白處加了一行小字:「如果N極大且只需精確值,建議用矩陣快速冪,時間複雜度可壓到O(logN)。」
全程不到四分鐘。
顧嶼把筆放下,把那張A4紙推回去。
瘦高個接過來,低頭掃了一眼。
他的表情變化很有層次。
先是例行公事的隨意一瞥。
然後眉頭擰了一下。
然後眼球開始快速左右移動,像是在逐行校驗代碼邏輯。
然後他的嘴巴微微張開了。
旁邊一個圓臉男生湊過來看了一眼,低聲說了句什麼。
瘦高個沒理他,把紙翻過來看了看背面是不是也寫了東西,確認沒有之後,又翻回正面重新看了一遍。
「同學。」
瘦高個抬起頭,表情已經完全不一樣了,
「你確定你是國際政治的?」
「確定。」
「你這個雙向冒泡的寫法……你之前在哪學的?」
「自學。」
顧嶼語氣很淡,
「網上教程挺多的。」
瘦高個看了他好幾秒,又看了看手裡的答卷。
「矩陣快速冪……」
他指著最後那行小字,聲音不自覺地低了半度,
「這個我們協會的副會長也未必會在入社測試里隨手寫這種東西。」
顧嶼心裡想的是,你們副會長要是連這都寫不出來,那我來這兒挖人的計劃怕是要泡湯。
但他臉上只是客氣地笑了笑。
旁邊那三個格子衫男生已經全部圍了過來,一個個伸長脖子看那張A4紙。
「雙指針還考慮了Unicode代理對?」
圓臉男生倒吸了一口氣,
「我上學期數據結構課設都沒想到這個。」
「這字也太好看了吧……」
另一個男生冒出了一句畫風清奇的評價。
瘦高個把那張紙放在桌上,從抽屜里翻出一張空白的社團登記表。
「叫什麼名字?」
「顧嶼。」
「手機號?」
顧嶼報了號碼。
瘦高個一筆一划地幫他填完,然後從桌上摸出一枚社團徽章遞過來。
銀色的小圓牌,上面刻著一個簡化的二進位圖案。
「歡迎入社。」
瘦高個站起來,伸出手,態度跟三分鐘前判若兩人,
「我叫陳恪,大三,計算機系,現任協會技術部部長。以後有什麼活動我在群里通知你。」
顧嶼跟他握了一下手。
「對了,」
陳恪猶豫了一下,
「你考慮過轉專業嗎?以你這個水平,轉到計科或者軟工完全沒問題。」
「暫時沒有。」
顧嶼搖了搖頭,
「就是單純感興趣。」
陳恪的表情明顯寫著「暴殄天物」四個大字。
顧嶼沒有多留。
拿了徽章,加了群,告辭出門。
走出六教地下室的那一刻,十月的晚風迎面撲來,帶著北京深秋特有的干冽氣息。
顧嶼把那枚銀色徽章攥在手心,嘴角微微上揚。
興趣?
當然是興趣。
不過他感興趣的不是社團本身,而是社團里的人。
清華計算機協會,中國最頂尖的程式設計師苗子集散地。
這間不到五十平米的活動室里,未來十年會走出不少網際網路公司的CTO、技術合伙人、獨角獸創始人。
他們現在還只是一群穿著格子衫、喝著可樂、為一個排序算法爭得面紅耳赤的大學生。
養魚先養塘。
現在撒下的餌,三年後收網。
顧嶼把徽章塞進口袋,掏出手機。
飛書上彈出一條新消息。
林溪:
「快錢的人同意下周一在上海見面。關國光本人會到場。」
顧嶼看了一眼,回了兩個字:
「收到。」
口袋裡的手機又震了一下。
他低頭一看,是蘇念發來的引力消息。
「社團報了嗎?」
「報了。」
「他們沒為難你?」
「問了三道題。」
「難嗎?」
顧嶼盯著屏幕想了想,打了四個字:
「還行吧。」
蘇念的回覆很快。
「說人話。」
顧嶼笑了,編輯了一條新消息:
「比追你簡單多了。」
對面沉默了整整十五秒。
然後彈出一條消息:
「油嘴滑舌。晚安。」
顧嶼盯著那兩個字看了一會兒。
晚安。
多好的詞。