12.21 拼多多三面慘敗,java中間件、數據庫與spring框架,答不上...

面試開火箭,工作擰螺絲...月初有個朋友面試拼多多,一面自信滿滿過了,結果三面卻慘敗...昨天朋友約我出來討論問題在哪裡,三面就答不上了(卡殼很嚴重吶)。聽完整個面試經歷之後,我總結了一下,這次拼多多一二三面其實綜合總結起來就問了五個方面的東西,分別是自我介紹+項目、java基礎、中間件、數據庫和spring框架,另外還問了2道算法題。接下來就跟大家一起來看看拼多多的面經,看看你是否能輕鬆應對面試官的炮轟?

拼多多三面慘敗,java中間件、數據庫與spring框架,答不上...

第一部分 項目+自我介紹

  • 首先上來簡單做一下自我介紹?
  • 然後讓介紹簡歷裡的項目,說下項目裡的難點,技術架構。
  • 平時開發過程中都遇到過哪些難題?
  • 平時都這麼和同事溝通?

第二部分 java基礎方面

  • 首先還是老生常談的hashmap。hashmap的set和get的時間複雜度是多少?為什麼是O(1), hashmap 在jdk1.8是線程安全的嗎?
  • 為什麼是線程安全的?concureenthashmap瞭解嗎?他是如何實現線程安全的?
  • 說說java泛型,為什麼稱java泛型為偽泛型?泛型的好處有哪些?int可以作為泛型類型嗎?
  • 說一說靜態***和動態***的區別?動態***的底層是怎麼實現的?
  • 線程run和start的區別?兩次start同一個線程會怎麼樣?
  • 說一下java的線程模型?說一下violate關鍵字?他的原理是什麼?violate是線程安全的嗎?說一下violate和synchronized這兩個關鍵字的區別?
  • 說下線程池的原理?有沒有在項目中用過線程池?怎麼用的?核心線程和非核心線程有什麼區別?你在項目裡怎麼確定核心線程數的。
  • 對concureent包瞭解嗎?什麼是cas?cas怎麼解決ABA問題?講一下CountDownLatch和cyclicBarrier的區別?
  • 說一下java類加載器的工作機制?講一下JVM相關。有沒有做貨GC調優,講一下這麼做的?

第三部分 spring框架方面

  • BeanFactory 和 和 ApplicationContext 有什麼區別?
  • 如何用基於 XML 配置的方式配置 Spring
  • 說一下springboot的啟動過程?平時開發中都用哪些註解?
  • Spring 是如何快速創建產品就緒應用程序的?
  • 如何使用 Spring Boot 部署到不同的服務器?

第四部分 數據庫與java中間件方面

  • redis常用的數據結構有哪幾種,在你的項目中用過哪幾種,以及在業務中使用的場景,?redis cluster有沒有了解過,怎麼做到高可用的?
  • redis集群和哨兵機制有什麼區別?redis的持久化機制瞭解嗎?你們在項目中是怎麼做持久化的?遇到過redis的hotkey嗎?怎麼處理的?redis是單線程的嗎?單線程為什麼還這麼快?redis實現分佈式鎖以及和zk實現的性能和穩定性的對比?
  • kafka的原理?怎麼保證消息不丟失?
  • 索引的常見實現方式有哪些,有哪些區別?MySQL的存儲引擎有哪些,有哪些區別?InnoDB使用的是什麼方式實現索引,怎麼實現的?說下聚簇索引和非聚簇索引的區別?
  • 大量的消息每頁被消費,能否發生 oom 異常?
  • 向不存在的 exchange 發 publish 消息會發生什麼?向不存在的queue 執行 consume 動作會發生什麼?
  • 為什麼不應該對所有的 message 都使用持久化機制?

第五部分 算法方面(總共是問了兩個)

  • 一面手寫的題是leetcode 106. 從中序與後序遍歷序列構造二叉樹,根據一棵樹的中序遍歷與後序遍歷構造二叉樹。(注意:你可以假設樹中沒有重複的元素。)

例如,給出
中序遍歷 inorder = [9,3,15,20,7]
後序遍歷 postorder = [9,15,7,20,3]
返回如下的二叉樹:
3
/ \\
9 20
/ \\
15 7

  • 二面手寫的題是 leetcode 86. 分隔鏈表

給定一個鏈表和一個特定值 x,對鏈表進行分隔,使得所有小於 x 的節點都在大於或等於 x 的節點之前。你應當保留兩個分區中每個節點的初始相對位置。
示例:
輸入: head = 1->4->3->2->5->2, x = 3
輸出: 1->2->2->4->3->5

這兩道算法題的答案解析就在《算法刷題LeetCode中文版.PDF》這份文檔中,有需要的朋友可以

私信 “答案” 免費獲取

拼多多三面慘敗,java中間件、數據庫與spring框架,答不上...

算法刷題LeetCode中文版.PDF

最後總結

總的來說,感覺我這個朋友還是複習的不夠到位,不然也不會面試卡殼慘敗。而且,這些題目的答案大多數都在下面這個文件裡,如果你對這個答案感興趣,需要的話可以轉發+私信關鍵詞“答案”免費來領取喲~

拼多多三面慘敗,java中間件、數據庫與spring框架,答不上...

答案

重要的事情再說一遍喲,轉發+私信“答案” 即可免費領取全部的答案解析以及更多的學習筆記資料!!


分享到:


相關文章: