搜廣推演算法校招面試:BOSS直聘 推薦搜尋系統工程師

疯狂学习GIS發表於2024-10-08

  本文介紹2024屆秋招中,BOSS直聘推薦/搜尋系統工程師崗位一面的面試基本情況、提問問題等。

  202312月,趕在秋招的末尾,投遞了BOSS直聘推薦/搜尋系統工程師崗位,並不清楚所在的部門。目前完成了一面,在這裡記錄一下一面經歷。

  首先,這一次的投遞就是在BOSS直聘這個APP上直接投遞的,沒有走官網投遞的流程;在這個階段(秋招都要結束了),再去網申的話我感覺意義也不大,所以一般就是看看BOSS直聘上合適公司、崗位的HR發來簡歷邀請(可能是當初找實習的時候使用者活躍度非常高,所以在APP上這大半年都一直會有HR發邀請的),如果有相關邀請並且感覺可以試一試的話,就會申請推進流程。

  這一次面試和秋招的第一次面試(百度搜尋的機器學習、深度學習演算法崗位)一樣,是演算法方向的面試,所以可以明顯感覺到面試官對於實習經歷、專案經歷都不怎麼提問了,而是直接就問演算法方面的內容——當然,這個也和我比較偏向於開發(主要是演算法學不會),所以實習和專案經歷都是開發方向的工作有關。其中,面試官主要提問的演算法內容多數都是和資料結構有關的,主要集中在資料結構元素搜尋的時間、空間效能最佳化方面。雖然感覺演算法方面的面試是真的很難,但是也確實感覺這樣的面試很有意思,自己會絞盡腦汁地回想當初刷題時,那些高贊題解裡都用到了哪些演算法思想或者最佳化技巧——而如果是開發方向的面試,那麼提問往往都是集中在實習和專案經歷方面,感覺自己都快要背下來了,沒有演算法面試有意思哈哈哈哈。一場面試下來,也確實收穫到了很多新的內容與知識。

面試情況

  • 上午10:00開始,持續25分鐘左右。

  • 線上影片面試,1位面試官;面試官很和藹。

  • 首先做自我介紹;提問25分鐘。

提問問題

  • 本科、研究生階段都有哪些專案、實習經歷?
  • 研究生階段和阿里雲合作的專案是什麼樣的?是什麼型別的專案?大致做了些什麼?
  • 陣列連結串列有什麼不同?各自有什麼特點與優勢?各自的應用場景如何?
  • 對於一個有序陣列,在其中查詢某一個值,最低的時間複雜度為多少?此時是用什麼方法來查詢的?對於一個有序連結串列呢?
  • 對於連結串列中資料的查詢,如何最佳化其時間複雜度?對於一個連結串列,將其數值和位置以雜湊表的形式儲存,這個儲存的過程具體如何實現?這個過程的時間複雜度如何?
  • 對於一個有序的連結串列,希望加快其查詢數值的速度,有什麼方法最佳化?
  • 是否瞭解“跳錶”這個概念?
  • 兩個無序陣列,如何找到二者中元素的交集?時間複雜度如何?是否可以最佳化?你提到在雜湊表中加以查詢,此時查詢的時間複雜度一定均是O(1)嗎?如果這兩個陣列的某一個或者每一個陣列中,有重複的資料怎麼辦?
  • 雜湊衝突是如何解決的?時間複雜度如何?
  • JavaC++中,有哪些和雜湊表有關的資料結構?其各自的底層實現是什麼?為什麼紅黑樹可以實現雜湊表?
  • 兩個無序的陣列,如何找到二者中重複(既在陣列A中,又在陣列B中)的元素?
  • 一個有序的單連結串列A,含有100萬個結點;希望構建一個新的連結串列B,分段地儲存A中的部分結點,從而最佳化A中查詢元素的效能;那麼你認為B應該每隔多少個結點儲存一次A中的結點?如果B儲存了10萬個結點,那麼基於B查詢A中任意一個元素,平均查詢的次數為多少?
  • 個人的職業預期與規劃是如何的?

演算法題目

  • 無(這裡是指沒有手撕演算法程式碼的題目)。

面試結束反問

  • 這一崗位對於機器學習、深度學習演算法方面的知識是否有要求?
  • 這一崗位更側重於演算法的研發(數學方面),還是演算法的落地(開發方面)?

反饋情況

  • 面試已經結束1個多月,暫無任何回覆,肯定已經涼了。

  至此,大功告成。

相關文章