概述#

Part X — Solutions 包含本書 Part IX 所有 189 道題目的完整解答,對應 Chapters 1–17。

讀者可至 CrackingTheCodingInterview.com 下載完整可編譯的程式碼,並查看其他程式語言版本的解答、向社群提問或回報勘誤。

解答涵蓋章節#

解答依照 Part IX 的章節順序排列:

  • Chapters 1–4:Data Structures(Arrays & Strings、Linked Lists、Stacks & Queues、Trees & Graphs)
  • Chapters 5–11:Concepts & Algorithms(Bit Manipulation、Math & Logic Puzzles、OOD、Recursion & DP、System Design、Sorting & Searching、Testing)
  • Chapters 12–15:Knowledge Based(C & C++、Java、Databases、Threads & Locks)
  • Chapter 16:Moderate(26 道中等難度題目)
  • Chapter 17:Hard(26 道困難難度題目)

解答格式#

每道題目的解答通常包含以下結構:

  1. 問題重述:簡要說明題目要求
  2. 解題思路:從 brute force 出發,逐步最佳化
  3. 複雜度分析:時間複雜度與空間複雜度
  4. 程式碼實作:以 Java 撰寫的完整可運行解答

建議在查看解答前,先嘗試使用 Part XIII 的 Hints 逐步引導自己解題。真正的學習效果來自於思考過程,而非單純閱讀解答。

解答中的程式碼有時為了簡潔而省略部分錯誤處理。在實際面試中,應主動詢問面試官是否需要處理邊界條件與異常情況。