「面試」小紅書之旅

一面
一面面試官看著二十七八歲,文質(zhì)彬彬,這哪里是寫代碼的,頭發(fā)都飄起來了好么。上來就干項(xiàng)目,由于大家的項(xiàng)目都不太一樣,所以對于項(xiàng)目部分我就說說我面試的時(shí)候經(jīng)常遇到的問題
描述下項(xiàng)目
一口是吃不了胖子的,描述之前先憋著氣掂量掂量自己所說的東西能不能唬住自己,然后唬住面試官。
項(xiàng)目中擔(dān)任的角色
對于大多數(shù)的我們而言,就是開發(fā)的角色,同樣的道理,角色對應(yīng)相應(yīng)的職務(wù),闡述自己做的內(nèi)容能引面試官上鉤,拉鉤上吊一百年不許變。
在項(xiàng)目遇到什么困難
這三個(gè)問題,是不是可以拎著腳趾拇都可以想出來,除非不是你做的,哈哈哈哈哈。不慌,不是我們做的也不怕,我們必須知道有個(gè)網(wǎng)站叫做Github,大牛這么多,自己不是大牛,難道不會學(xué)學(xué)人家麥。Clone下來,搭建環(huán)境跑起來,開始調(diào)試修改,通過將模塊拆分,進(jìn)一步修改,這不就是你的項(xiàng)目嗎,當(dāng)然我不怎么建議大家這么操作啦。
我看你簡歷中寫著網(wǎng)絡(luò)流量的還原,你應(yīng)該對計(jì)算機(jī)網(wǎng)絡(luò)比較熟悉?(注意哈,簡歷上寫上去的東西,自己心里一定要有點(diǎn)B數(shù)),那我們說說計(jì)算機(jī)網(wǎng)絡(luò)
說說計(jì)算機(jī)網(wǎng)絡(luò)中TCP的三次握手吧
你這樣回答肯定是不會讓面試官滿意的,那就加點(diǎn)配料,不放佐料的菜怎么香?那就詳細(xì)的安排一下
這樣是不是稍微有B格一點(diǎn)呢,而且還比較形象,當(dāng)然為了加深大家對這個(gè)過程的印象,我再舉個(gè)例子
面試官說:“那我問你,如果客戶端發(fā)送的SYN丟失了或者其他原因?qū)е耂erver無法處理,是什么原因?

說說四次揮手吧,哎,卑微的藍(lán)藍(lán)
TIMEWAIT了解哈,過多的TIMEWAIT怎么辦,什么原因造成的?
為什么不直接進(jìn)入CLOSE轉(zhuǎn)態(tài),而是需要先等待2MSL,這段時(shí)間在干啥?

那么TIME_WAIT有哪些危害?
有沒有對TCP進(jìn)行優(yōu)化過 開玩笑,這東西復(fù)習(xí)過,盡管問,錘子不怕。優(yōu)化的點(diǎn)很多,隨便提一點(diǎn),讓后比較深的描述下這個(gè)過程就行比如調(diào)整哪些參數(shù)在某些特定的條件下會最優(yōu)

你以為面試官是傻子?當(dāng)然不是,萬一面試官問你:半連接積壓較多,還有其他的原因?
SYN Flood攻擊是個(gè)啥過程?
那有沒有什么方案解決這個(gè)問題?
那么開啟SYN Cookies的方法?

說下什么是大頁內(nèi)存
我擦,我差點(diǎn)沒反應(yīng)過來,"大爺內(nèi)存",不過確實(shí)牛逼,大頁內(nèi)存,記住了,是大頁內(nèi)存。
行,差不多時(shí)間了,寫個(gè)簡單代碼吧,實(shí)現(xiàn)一個(gè)無重復(fù)字符的最長子串
使用 vector m 來記錄一個(gè)字母如果后面出現(xiàn)重復(fù)時(shí),i 應(yīng)該調(diào)整到的新位置 所以每次更新的時(shí)候都會保存 j + 1 ,即字母后面的位置 j 表示子串的最后一個(gè)字母,計(jì)算子串長度為 j - i + 1

二面
一面感覺還不錯(cuò),果不其然二面來了,HR小姐姐打電話通知周三二面,行,對于從來不遲到的暖藍(lán),肯定守時(shí)。拿著茶,等到2:30,至于為什么拿著茶,這是我的習(xí)慣,面試前喝杯茶等待面試官的捧擊(面試官其實(shí)大部分很溫柔的啦)。
我叫XX,來自XX大學(xué),本科XX,碩士XXX,期間做了XX,謝謝面試官。自我介紹不用那么花里胡哨,挑重點(diǎn)說,不會在意你本科談了幾次戀愛,也不會在意你XXXX,簡單明了完事,開始二面
應(yīng)該學(xué)過C的吧,用C實(shí)現(xiàn)多態(tài)怎么個(gè)思路


感覺沒啥問的,先寫個(gè)代碼,二路歸并

倒排索引了解不?

有沒有什么優(yōu)化的方法?
如何創(chuàng)建倒排索引?
首先給文檔編個(gè)號表示唯一表示,然后排序遍歷文檔 解析每個(gè)文檔的關(guān)鍵字并生成<關(guān)鍵字,文檔ID,關(guān)鍵字位置>。這里的關(guān)鍵字位置主要是為了檢索的時(shí)候顯示關(guān)鍵字前后信息 將關(guān)鍵字key插入哈希表。如果哈希表已存在這個(gè)key,就在對應(yīng)的posting list中追加節(jié)點(diǎn),記錄文檔ID。如果哈希表沒有響應(yīng)的key則插入該key并創(chuàng)建posting list和對應(yīng)的節(jié)點(diǎn) 重復(fù)2 3步處理完所以文檔

如果要查詢同時(shí)包含"暖"“藍(lán)”兩個(gè)key怎么辦?
如何找到AB兩個(gè)鏈表的公共元素?希望小伙伴們思考下,經(jīng)常在手撕算法中被問到
首先使用兩個(gè)指針P1 P2分別指向有序鏈表AB的第一個(gè)元素 然后對比兩個(gè)指針?biāo)腹?jié)點(diǎn)是否相同,這可能出現(xiàn)三種情況 兩者id相同則是公共元素,直接歸并即可,然后P1 P2后移 p1元素小于p2元素,p1后裔,指向A鏈表的下一個(gè)元素 p1元素大于p2元素,p2后裔,指向B鏈表中下一個(gè)元素 重復(fù)第二步 直到p1和p2移動(dòng)到鏈表尾

你說使用過kafka,那么使用消息隊(duì)列的時(shí)候如何保證只消費(fèi)一次?

我看你簡歷上打過acm,說說你的策略或者經(jīng)歷吧
寫個(gè)驗(yàn)證郵箱的正則

了解內(nèi)存映射?說說,盡量說



我自己可能沒有把項(xiàng)目更本質(zhì)的東西理解清楚 從事的不同的方向,有些專業(yè)術(shù)語的理解的不同)
三面
線程的鎖有哪些,我說到了讀寫鎖打斷我了,問我讀寫鎖會有什么些問題,無非就是寫鎖饑餓問題,我說沒看過內(nèi)核源碼,然后如果讓我來實(shí)現(xiàn),我怎么來避免
有了解過RPC?
RPC的通信流程是怎樣的?

總結(jié)
請記下以下幾點(diǎn):
公司招你去是干活了,不會因?yàn)槟阍趺丛趺吹亩档蛯δ愕囊髽?biāo)準(zhǔn)。 工具上面寫代碼和手撕代碼完全不一樣。 珍惜每一次面試機(jī)會并學(xué)會復(fù)盤。 對于應(yīng)屆生主要考察的還是計(jì)算機(jī)基礎(chǔ)知識的掌握,項(xiàng)目要求沒有那么高,是自己做的就使勁摳細(xì)節(jié),做測試,只有這樣,才知道會遇到什么問題,遇到什么難點(diǎn),如何解決的。從而可以侃侃而談了。 非科班也不要怕,怕了你就輸了!一定要多嘗試。

有道無術(shù),術(shù)可成;有術(shù)無道,止于術(shù)
歡迎大家關(guān)注Java之道公眾號
好文章,我在看??
評論
圖片
表情
