概述#

Part IX — Interview Questions 是本書的核心主體,包含 189 道程式設計面試題目,按照主題與難度分為四大區塊,共 17 個章節(Chapter 1–17)。

本書所有題目均以 Java 作為主要示範語言。讀者可至 CrackingTheCodingInterview.com 下載完整解答、查看其他程式語言版本,並與其他讀者討論。

內容架構#

01 — Data Structures(資料結構)#

包含 Chapters 1–4,針對最常見的基礎資料結構出題:

  • Chapter 1:Arrays & Strings(陣列與字串)
  • Chapter 2:Linked Lists(鏈結串列)
  • Chapter 3:Stacks & Queues(堆疊與佇列)
  • Chapter 4:Trees & Graphs(樹與圖)

02 — Concepts & Algorithms(概念與演算法)#

包含 Chapters 5–11,涵蓋重要的程式設計概念與演算法思維:

  • Chapter 5:Bit Manipulation(位元操作)
  • Chapter 6:Math & Logic Puzzles(數學與邏輯謎題)
  • Chapter 7:Object-Oriented Design(物件導向設計)
  • Chapter 8:Recursion & Dynamic Programming(遞迴與動態規劃)
  • Chapter 9:System Design & Scalability(系統設計與擴充性)
  • Chapter 10:Sorting & Searching(排序與搜尋)
  • Chapter 11:Testing(測試)

03 — Knowledge Based(知識型題目)#

包含 Chapters 12–15,針對特定技術領域的知識性問題:

  • Chapter 12:C & C++
  • Chapter 13:Java
  • Chapter 14:Databases(資料庫)
  • Chapter 15:Threads & Locks(執行緒與鎖定)

04 — Additional Review Problems(額外練習題)#

包含 Chapters 16–17,提供更多綜合性練習:

  • Chapter 16:Moderate(中等難度,26 題)
  • Chapter 17:Hard(困難難度,26 題)

使用建議#

每道題目後面都有 Hints 編號(例如 Hints: #492, #716, #737),對應 Part XIII 的提示清單。建議先嘗試自行解題,遇到困難時再依序查看提示,而非直接翻閱完整解答。

題目的解答收錄在 Part X — Solutions。每個解答都包含問題分析、解題思路說明,以及具有完整可編譯程式碼的實作。