雅虎2015校招面試總結

2021-06-26 00:09:35 字數 1447 閱讀 5116

一面:基本上就是跟面試官閒聊,說了一會我的rtb大賽,然後考了一道演算法題。題目是,對乙個0和1組成的字串加密,加密方法是encode[i] = code[i-1]+code[i]+code[i+1]。比如0110111加密後的結果是1222232。寫乙個演算法,輸入為加密後的串,輸出是解密的01串。

自己想了一會,並沒有太好的思路,最後在面試官提示下寫出了**,但還是有錯。回來寫了份**,很輕鬆,面試的時候一直在糾結怎麼判斷解碼是否正確,其實很簡單,既然原始碼是0和1,如果解密的結果為0/1,那就是對的,如果不為0/1,那就是錯了。

然後問了問tcp三次握手,linux建立的子程序與父程序的關係,程序、執行緒如何同步,pv原子操作,如何把linux命令列結果寫入檔案。基本上都能說上來,有些答得不完整。

public static byte decode(byte encode)

if(encode[0]<2)}}

for(int i:code)

system.out.print(i+" ");

system.out.println();

code[0] = 1;

code[1] = (byte) (encode[0]-1);

for(int i=2;i

}for(int i:code)

system.out.print(i+" ");

return code;

}二面:面試官一上來也是問我的rtb大賽。然後就面演算法,第一道題是把字串中連續的數字串加上1,比如"hih#32wih459"的結果是"

hih#33wih460

"。自己先是會錯意了,以為是把連續的數字字串的尾子符的值加1,寫了乙份**,面試官看了後說題意理解錯了,然後又寫了份**,把連續數字串parse成int,加上1後再tostring()替換掉原來的數字串。面試官指出int可能會溢位,自己又說出了一種改進方法。回來寫了一下**,還真不簡單。

public static string stringnumincrease(string s)

}if(s.charat(i)<'0'||s.charat(i)>'9'||i==s.length()-1)

else

} num.delete(0, num.length()); }

if(s.charat(i)<'0'||s.charat(i)>'9')

} }

return str.tostring(); }

接著問了第二道演算法題,題目是:乙個字串,可能由n(n>=2)個重複的子串組成。寫乙個演算法,判斷乙個字串能否被分割成n個相同的子串(最好找出最小的子串)。當時並沒有考慮到子串的長度必須是n的因子,回來後在同學的提示下,得出了下面這個演算法,還不確定是否是最優的。

public static string stringsplit(string s)

if (j>=s.length())}}

return "";

}

雅虎2015校招筆試

雅虎筆試的難度和強度還是挺大的,英文試題,允許中英文作答。選擇題裡面難度最大的是一道是考察貝葉斯公式的題。題目說的是一種疾病,在100000人會中有1個人患這種病,而這種病的診斷正確率為99 乙個人診斷結束後被告知患了該種病,求他真正患該種病的概率多大。b0 患病,b 1 沒有患病,a 診斷出患病 ...

2023年校招總結

自從2015年9月找完工作,我已經半年沒有寫部落格了。現在畢業 已經寫完,我正好總結一下找工作的經歷。我從2015年7月開始找工作,陸續拿到了bat 華為 搜狗 蘑菇街的offer。十一之後我就不找工作了,回實驗室幫導師幹活。看完 演算法導論 以後,我把以前看過的 劍指offer 程式設計之美 程式...

決戰2015校招

主要原因可能 沒寫好,下回一定要形成思路再動筆。然後就是字要寫好一點,不要潦草。9月18日晚 同學接到zx的面試通知,希望也會通知我吧。接到lc通知,明天迎來第一面!9月19日 lc一面 感覺沒答好 資料鏈路層的協議有哪些,b樹的定義,mapreduce的優點在哪?得認真看書了。xw一面 基本沒問我...