考點分析 / 中正 / 112

112 中正資工所軟體考點分析

C++ 部分改為「全對才給分」的複選題(this 指標、const、建構子),資料結構部分則是標準的 DFS/heapify/AVL/紅黑樹四連發。

題型與配分

系所組別「資訊工程學系-甲組」,科目名稱:軟體設計,全卷 5 頁、12 題、100 分。

題號主題配分
1–5C++ 基礎約 32%
6this 指標與 const(全對才給分)12%
7建構子(全對才給分)6%
8資料結構是非題(5 題)10%
9資料結構單選(5 題)15%
10排序性質是非題8%
11負權圖的 yes/no 論證11%
12Ford-Fulkerson6%

第 6、7 題明訂「Check all that apply. NO partial credit is given.」 —— 複選題全對才給分,共 18 分。

逐題考點

C++ 部分(1–7)

  • 第 5 題|哪些是合法的宣告(int i;、int i=1;、int foo(int);、int foo(int i);、typedef string my_string;)
  • 第 6 題(12%,4 小題各 3%,全對才給分)
  • 甲|關於 this 指標:是否為 reference、能否在方法內改變它指向的對象、是否指向呼叫該方法的實例
  • 乙|對類別 Thing,隱含的 this 的型別是什麼(答案取決於成員函式是否為 const)
  • 丙|關於 const 變數:能否透過關聯的參考賦值、是否必須在宣告時初始化、能否對非 const 變數的參考加上 const
  • 丁|哪些寫法會真的複製字串(const string &x = y 不複製、string *x = &y 不複製 …)
  • 第 7 題(6%,2 小題各 3%,全對才給分)|建構子的性質(何時被呼叫、能否多載、是否只在 new 時呼叫)、建構子的回傳型別(沒有回傳值)

資料結構與演算法部分(8–12)

  • 第 8 題(10%,5 小題各 2%)|是非題:
  • (1) 九層二元樹的最大節點數是否為 511(真,29−1)
  • (2) f1 = O(g) 且 f2 = O(g) 是否推出 f1 = f2(假)
  • (3) 比較式排序的最壞下界是否為 Ω(n log n)(真)
  • (4) bi-connected graph 是否為「有兩個關節點的連通圖」(假 —— 是沒有關節點)
  • (5) 每棵二元樹是否都能由 pre-order 與 post-order 唯一決定(假)
  • 第 9 題(15%,5 小題各 3%)|
  • (1) 從節點 1 開始的 DFS 走訪序列(小 ID 優先)
  • (2) {19, 5, 27, 3, 16, 11, 69, 18} 用 bottom-up O(n) heapify 成 max heap 的結果
  • (3) 依序插入 12 個整數到 AVL 樹的結果
  • (4) 8 個節點的相異二元樹個數(Catalan C8 = 1430)
  • (5) 依序插入 50, 10, 80, 90, 70, 60, 65, 62 到紅黑樹的結果(與 109 年第 10 題同一組數字)
  • 第 10 題(8%,4 小題各 2%)|排序性質是非題:quicksort 是否漸進最佳、最不平衡分割時的決策樹是否為 full binary tree、insertion sort 是否 in-place 但不穩定(假 —— 它是穩定的)、counting sort 是否同時穩定且 in-place(假 —— 穩定但不 in-place)
  • 第 11 題(11%)|含負權邊的圖,yes/no 並寫出理由(「單純答 yes/no 不給分」):
  • (a) 2%|能否用 Dijkstra 求 a 到 d 的最短路徑
  • (b) 2%|若所有邊權為 1,能否用 BFS
  • (c) 2%|若所有邊權為 1,能否做拓撲排序
  • (d) 5%|重新配權使所有邊非負
  • 第 12 題(6%)|對給定的圖套用 Ford-Fulkerson,寫出輸出與推導

這份考卷的難點

  1. 第 6、7 題合計 18 分全對才給分,而且考的是 C++ 最細的角落:this 的型別(Thing* const 或 const Thing* const,取決於成員函式是否為 const)、哪些寫法會複製字串。
  2. 第 10(c)(d) 的排序性質是常見誤解:insertion sort 是穩定的、counting sort 穩定但不是 in-place。
  3. 第 8(4) 的 bi-connected graph 定義寫反了 —— 雙連通圖是沒有關節點的圖。
  4. 第 11 題明訂「單純答 yes/no 不給分」,11 分全靠論證。

準備建議

  • C++ 的 this 指標型別與 const 成員函式的關係要弄清楚:非 const 成員函式的 this 是 Thing* const,const 成員函式是 const Thing* const
  • 排序演算法的四個性質表(時間複雜度/穩定性/in-place/漸進最佳)建議整理成一張表,中正 108、109、110、111、112 每年都考
  • 紅黑樹插入同一組數字(50, 10, 80, 90, 70, 60, 65, 62)在 109、112 考了兩次 —— 中正也有重複出題的習慣
  • 負權圖的處理(Dijkstra 失效、重新配權)是中正 110、111、112 連三年的共同主題

想看完整逐題詳解?

國立中正大學 108–115 全年度完整詳解共 222 頁,逐題推導。

購買 · NT$ 850 先看試閱

其他年度與考科