春招沖沖衝(釘釘+騰訊)

春招已經開始了。 你是否是已經開始準備了呢?爲了幫助你們得到更好的 offer,lucifer 開闢了春招沖沖衝欄目。git

今天咱們的獵物是釘釘和騰訊。來看看這兩家的算法題難度幾何吧!github

​<!-- more -->面試

視頻地址:https://www.bilibili.com/vide...算法

釘釘

  1. 比較版本號(力扣題號 165.比較版本號)

一次遍歷便可,惟一須要注意的是補全再比較(邏輯補全便可,並不必定須要物理上真的去補全),時間複雜度 $O(m + n)$,其中 m 和 n 分別爲兩個版本號的長度數組

  1. 隨機字符串生成(隨機生成一個長度爲 8 的字符串,要求只能是小寫字母和數字,字母和數字可重複,可是生成的隨機字符串不能重複)

隨機生成一個長度爲 8 的字符並將其存到哈希表中,下次生成後判斷是否已經在哈希表中了。若是存在,說明以前生成過了,繼續生成。注意這種算法存在一直拒絕的可能,代碼會無限循環。緩存

  1. 日誌上報(實現效果:沒有數據不上報,有數據每 100ms 批量上報一次)

維護一個窗口,當窗口內有數據才觸發請求批量上傳,一個窗口的長度爲 100m(可能大於) 內的全部請求微信

騰訊

  1. 字符串反轉

頭尾雙指針,不斷交換兩個指針的字符便可。ide

  1. 鏈表的倒數第 k 個數

快慢雙指針典型題目。優化

  1. 設計求一個數的 n 次開方

典型的二分題目,不會的建議看下個人二分講義。個人刷題倉庫或者公衆號搜 二分 就行。設計

  1. LRU 算法

稍微有點難度了,這個題很常見,難度不小,建議刷。我以前寫過題解了,直接甩給你們吧 146. LRU 緩存機制

我給了 JS, Go, PHP, Python3 四種語言,有你的菜麼?
  1. 手撕一下,就是一個小車給定座標位置,和當前面朝方向(NSWE),再輸入前進轉向狀況和前進步數,輸出小車的座標位置和麪朝方向。

沒啥難度,直接模擬。

  1. 鏈表相加

鏈表和數組本質沒有不一樣,只是具體操做不同。所以掌握鏈表基本操做就好了。鏈表基本操做有哪些?須要注意什麼?個人鏈表專題都給你們總結好了,建議閱讀。

  1. leetcode 1567 乘積爲正數的最長子數組長度。

題目是:給你一個整數數組 nums ,請你求出乘積爲正數的最長子數組的長度。一個數組的子數組是由原數組中零個或者更多個連續數字組成的數組。請你返回乘積爲正數的最長子數組長度。

這道題是求連續的乘積爲正數的最長子數組長度。這裏須要一個小學知識,兩個符號相同的相乘爲正數,兩個符號不一樣的數相乘爲負數(先不考慮 0)。 因而直接使用一維 DP + 一層循環便可。

定義狀態 positive[i] 爲 nums[i] 結尾的乘積爲正數的最長子數組長度,negative[i] 爲 nums[i] 結尾的乘積爲負數的最長子數組長度,因而答案就是 max(positive)。

接下來,遍歷 nums,對 nums[i] 的不一樣取值分類討論便可:

  • nums[i] > 0

$$ positive[i]=positive[i−1]+1 $$

$$ negative[i]=\left\{ \begin{aligned} negative[i-1] + 1 & & negative[i-1] > 0 \\ 0 & & negative[i-1] = 0 \\ \end{aligned} \right. $$

  • nums[i] < 0

$$ negative[i]=positive[i−1]+1 $$

$$ positive[i]=\left\{ \begin{aligned} negative[i-1] + 1 & & negative[i-1] > 0 \\ 0 & & negative[i-1] = 0 \\ \end{aligned} \right. $$

  • nums[i] == 0

$$ negative[i]=positive[i] = 0 $$

狀態定義通常兩種套路:

  • 使用一個二維數組,定義 dpi 和 定義 dpi
  • 使用兩個一維數組,定義 dp1[i] 和 dp2[i]

兩種方式思路同樣,只是實操不同而已。我我的傾向於第二種。好比股票題,我就喜歡定義一個 buy 和 一個 sell 數組。再好比擺動數組,我就喜歡定義一個 up 和 一個 down 數組。

另外若是題目沒有限定連續,則須要兩層循環和一維 DP(滾動數組優化)。

總結

我我的以爲算法題難度是中等,都很是常規,沒有什麼難以讀懂的題目或者冷門知識。

另外我組建了春招羣,你們面試遇到不會的題均可以問哦。想進羣的可在公衆號力扣加加後臺回覆春招獲取小祕書的微信,經過以後再次回覆春招入羣。

最後祝你們 offer 多多。

相關文章
相關標籤/搜索