面試複習重點——數據結構、操做系統、計算機網絡、數據庫。

必看書籍:劍指offer程序猿面試寶典java

來自:騰訊、搜狐、網易、烽火、百度、大衆點評、美團、風行
c++


1. 死鎖是什麼?什麼狀況下產生?怎麼解決?面試

2. 設計模式(尤爲是單例模式,要會寫該模式的程序框架,要注意同步問題,怎麼實現在要用時才建立)算法

3. 線程的同步?爲何要同步?線程間通訊方式。數據庫

4. 進程與線程的差異,進程間通訊方式。設計模式

5. 容器類:hashmaphashtable的差異。arraylistlinkedlist的差異數組

6. 爲何要用多線程,實現多線程的兩種方式。有什麼差異?網絡

7. JNI接口,C++extern C的做用數據結構

8. C的內存分配,C中堆的內存分配多線程

9. 指針:int (*s[10])(int)解釋其含義(課本上有)

10. Volatile的做用:保存特殊地址的穩定訪問。直接從內存中讀值(而不是寄存器:編譯器優化後的結果。即訪問頻度高的變量會先存放在寄存器中,以便提升效率)

11. TCPUDP的差異。爲何說TCP能提供可靠傳輸數據?

12. TCP三次握手和四次揮手,爲何要三次和四次?

13. httpsocket差異

14. 內部類,靜態內部類和非靜態內部類的差異

15. 指針和引用的差異

16. 內存優化

17. 數據庫:索引的優缺點。什麼是事務,事務的特性

18. 數據結構:

1) 排序算法(時間複雜度、空間複雜度、穩定性、會講思路、寫代碼)

2) 二叉樹。遍歷方式,經過二叉樹的先序遍歷和中序遍歷,獲得其後序遍歷(思路+程序)

3) 鏈表:單鏈表和雙鏈表,鏈表逆序輸出

19. 對象鎖和類鎖

20. TCP中怎麼保證數據無差錯傳輸的。校驗和是怎麼獲得的?

21. 何時會使用TCP,何時使用UDP?(結合應用層的一些協議)

22. 深拷貝與淺拷貝

23. 異常處理

24. 數組指針與指針數組

25. 什麼是重載,什麼是重寫,兩者差異

26. 哈希表和哈希函數

27. ARP的做用,爲何要用ARP

28. 網絡層ICMP,其應用:tracerouteping

29. TCP的擁塞控制方式、流量控制方式

一、 你經常逛的論壇,國外的站點。開源碼站點


一:操做系統


1. 進程的有哪幾種狀態。狀態轉換圖,及致使轉換的事件。

2. 進程與線程的差異。

3. 進程通訊的幾種方式。

4. 線程同步幾種方式。

(必定要會寫生產者、消費者問題,全然消化理解)

5. 線程的實現方式. (也就是用戶線程與內核線程的差異)

6. 用戶態和核心態的差異。

7. 用戶棧和內核棧的差異。

8. 內存池、進程池、線程池。(c++程序猿必須掌握)

9. 死鎖的概念,致使死鎖的緣由.

10. 致使死鎖的四個必要條件。

11. 處理死鎖的四個方式。

12. 預防死鎖的方法、避免死鎖的方法。

13. 進程調度算法。

14. Windows內存管理的方式(塊式、頁式、段式、段頁式).

15. 內存連續分配方式採用的幾種算法及各自優劣。

16. 動態連接及靜態連接.

17. 基本分頁、請求分頁儲存管理方式。

18. 基本分段、請求分段儲存管理方式。

19. 分段分頁方式的比較各自優缺點。

20. 幾種頁面置換算法。會算所需換頁數。(LRU用程序怎樣實現?)

21. 虛擬內存的定義及實現方式。

22. 操做系統的四個特性。

23. DMA

24. Spooling

25. 外存分配的幾種方式。及各類優劣。


二:計算機網絡


1. 電路交換與分組交換的差異? 優劣對照。

2. OSI有哪幾層,會畫出來。知道主要幾層的各自做用。

3. TCP/IP有哪幾層,會畫出來,知道所有層數的做用。會列舉各層基本的協議名稱。

4. 硬件(MAC)地址的概念及做用。

5. ARP協議的用途 及算法、在哪一層上會使用arp 

6. CRC冗餘校驗算法,反碼和檢驗算法。

7. 怎樣實現透明傳輸。

8. 知道各個層使用的是哪一個數據交換設備。(交換機、路由器、網關)

9. 路由表的內容。

10. 分組轉發算法。

11. IP報文的格式,格式的各個字段的含義要理解。

12. MTU的概念。啥叫路徑MTU? MTU發現機制。TraceRoute(瞭解)

13. RIP協議的概念 及算法。

14. ICMP協議的主要功能。

15. 組播和多播的概念,IGMP的用途。

16. Ping協議的實現原理,ping 命令格式。

17. 子網劃分的概念,子網掩碼。

18. IP地址的分類,怎樣劃分的,及會計算各種地址支持的主機數。

19. DNS的概念。用途。DNS查詢的實現算法。

20. TCPUDP的概念,相互的差異及優劣。

21. UDP報文的格式,字段的意義。

22. TCP 報文的格式,字段的意義。

23. TCP經過哪些措施。保證傳輸可靠?

24. 三次握手。四次斷開過程。

25. TIME_WAIT狀態的概念及意義。

26. 滑動窗體協議 與 中止等待協議的差異。

27. TCP的流量控制和擁塞控制實現原理(會畫擁塞控制的典型圖)

28. TCP的高速重傳與高速恢復算法。

29. TFTP 與 FTP的差異。

30. 堵塞方式和非堵塞方式。堵塞connect與非堵塞connect(比較難。有興趣可以瞭解)

31. HTTP基本格式。(java程序猿必須掌握)


三:設計模式


1. 各類常常使用模式的用途。用法。

2. 單例模式的雙重檢查實現。

3. MVC模式


繼續更新中。。。

相關文章
相關標籤/搜索