109 年 國立政治大學圖書資訊與檔案學研究所圖書資訊學組《計算機概論》

📄 試題原卷 免費註冊後即可對照原始考卷 PDF免費註冊

第 1 題

  1. 名詞解釋:
    (1) 卷積神經網路(Convolutional Neural Network) (5%)
    (2) 後門程式(Back Door) (5%)
    (3) 數位人文研究平台(Digital Humanities Research Platform) (5%)
    (4) 資訊視覺化(Information Visualization) (5%)
    (5) 網際協定第6版(Internet Protocol version 6, IPv6) (5%)

登入後即可作答並保存紀錄。

這一題的完整詳解

本題為名詞解釋題,主要測試考生對計算機科學領域基本概念的理解。

(1) 卷積神經網路 (Convolutional Neural Network, CNN):
CNN 是一種深度學習模型,特別擅長處理具有網格狀拓撲結構的資料,例如圖像。其核心特徵是使用卷積層 (convolutional layer) 來自動且自適應地學習空間層次的特徵。卷積層通過應用濾波器 (filter) 或卷積核 (kernel) 到輸入資料上,提取局部特徵。CNN 通常還包含池化層 (pooling layer) 用來降低維度、以及全連接層 (fully connected layer) 用來進行分類或回歸。
【答案】CNN 是一種深度學習模型,主要用於圖像識別、物件偵測等任務,其特點是通過卷積層、池化層等結構自動提取空間層次的特徵。

(2) 後門程式 (Back Door):
後門程式是一種惡意軟體或程式碼,它繞過了正常的安全認證機制,允許未經授權的使用者遠端存取、控制或傳輸資料。後門可以是在軟體開發過程中故意植入的,也可以是透過其他惡意軟體(如病毒、木馬)植入的。其目的是提供一種隱藏的、可隨時訪問的通道。
【答案】後門程式是一種繞過正常安全驗證機制的程式,允許未經授權者進行遠端存取、控制或傳輸資料。

(3) 數位人文研究平台 (Digital Humanities Research Platform):

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 2 題

  1. 有關於資料庫設計,試回答以下問題:
    (1) 試說明組成資料庫中的資料表為何需要正規化?(5%)
    (2) 資料表正規化的關鍵為解決欄位之間的功能相依性,請說明何謂直接相依與傳遞相依?(5%)
    (3) 第二正規化(2NF)定義為一個資料表,除了符合第一正規化(1NF)特性外,所有主鍵以外的欄位都必須與主鍵功能相依,則稱該資料表滿足 2NF。試說明以下以{學號、課程名稱}為主鍵的資料表,那些欄位不符合2NF? (5%)
    學號 | 姓名 | 地址 | 課程名稱 | 學分數 | 成績 | 必選修
    ---|---|---|---|---|---|---
    40011223 | 張有明 | 高雄市### | 資料庫管理系統 | 3 | 80 | 必
    40011224 | 劉志明 | 彰化市### | 資料庫管理系統 | 3 | 90 | 必
    40011234 | 陳美麗 | 台南市### | 計算機概論 | 2 | 85 | 選
    (4) 承題(3),應該如何改善使其符合2NF? (10%)

登入後即可作答並保存紀錄。

這一題的完整詳解

本題主要考察資料庫正規化的基本概念與應用。

(1) 資料庫正規化 (Database Normalization) 的目的:
正規化是資料庫設計中的一個重要過程,旨在減少資料冗餘 (data redundancy) 和提高資料的獨立性 (data independence)。透過正規化,可以避免資料的插入、更新和刪除異常 (anomalies)。具體來說,正規化有助於:

  • 消除資料冗餘: 避免重複儲存相同資訊,節省儲存空間。
  • 避免資料異常:
    • 插入異常 (Insertion Anomaly): 當我們想新增一筆資料時,卻因為某些欄位尚未產生值而無法新增。例如,若課程資訊與學生成績綁在一起,想新增一門新課程但還沒有學生選修時,就無法將課程資訊加入。
    • 更新異常 (Update Anomaly): 當需要更新某筆資料時,必須在多個地方進行更新,如果遺漏了其中一個,就會導致資料不一致。例如,若同一門課的學分數在多個學生的紀錄中出現,更新學分數時必須修改所有相關紀錄。
    • 刪除異常 (Deletion Anomaly): 當刪除一筆資料時,可能意外地刪除了其他有用的資訊。例如,若一個學生的所有課程紀錄都被刪除,而課程資訊只儲存在與學生成績相關的欄位中,那麼這門課程的資訊也可能隨之消失。
  • 使資料結構更清晰、易於維護。
  • 提高資料的一致性 (Consistency)。

【答案】資料庫正規化是為了減少資料冗餘、避免資料異常(插入、更新、刪除異常),並提高資料的一致性與結構清晰度。

(2) 功能相依性 (Functional Dependency, FD) 的種類:
正規化的核心是分析欄位之間的函數依賴關係。

  • 直接相依 (Direct Dependency / Full Functional Dependency): 設有一個關係模式 R,其屬性集合為 U。若 X ⊆ U, Y ⊆ U 且 X ∩ Y = ∅,則稱 Y 對 X 直接相依 (或稱 完全函數相依 Full Functional Dependency),記為 X→YX \rightarrow Y,表示 X 的每一個值唯一確定 Y 的一個值,且 X 是 Y 的一個超鍵 (Super Key) 的最小鍵。在正規化中,我們特別關注非主屬性 (non-prime attributes) 對候選鍵 (candidate key) 的完全函數相依。
  • 傳遞相依 (Transitive Dependency): 設有一個關係模式 R,其屬性集合為 U。若有三個屬性集合 X, Y, Z ⊆ U,且 X, Y, Z 兩兩不相交,則稱 Z 對 X 存在傳遞相依,如果滿足以下兩個條件:
    1. X→YX \rightarrow Y (Y 函數相依於 X)
    2. Y→ZY \rightarrow Z (Z 函數相依於 Y)
    3. Y 不是 X 的超鍵 (Y is not a superkey of X),且 Y 不是 Z 的超集 (Y is not a superset of Z)。
      簡單來說,如果一個非主屬性 Z 不僅依賴於主鍵 X,還依賴於另一個非主屬性 Y,而 Y 又依賴於主鍵 X,那麼 Z 就傳遞相依於 X。傳遞相依是造成 3NF 違反的關鍵。

【答案】直接相依是指一個屬性集合 Y 完全依賴於另一個屬性集合 X,且 X 是 Y 的最小超鍵。傳遞相依是指一個非主屬性 Z 依賴於主鍵 X,但 Z 也依賴於另一個非主屬性 Y,而 Y 又依賴於 X。

(3) 不符合 2NF 的欄位:
給定的資料表結構如下,主鍵為 {學號, 課程名稱}。

學號姓名地址課程名稱學分數成績必選修
40011223張有明高雄市###資料庫管理系統380必
40011224劉志明彰化市###資料庫管理系統390必
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 3 題25 分

  1. 請用任何一種妳/你所熟悉的電腦程式語言撰寫一支程式,可以輸入如下圖 Parent 1 及 Parent 2 兩個由 0 與 1 所組成的五個字元字串,然後利用亂數產生器產生一個介於 1 到 5 之間的整數,並將所得整數以後的 Parent 1 及 Parent 2 兩個字串的所有字元對調後,得到 Child 1 及 Child 2 兩個新字串,再將其輸出。例如下圖為亂數產生器產生的整數為 2 的情形下,Parent 1 及 Parent 2 彼此對調 3 到 5 之間所有字元後,得到 Child 1 及 Child 2 兩個新字串的例子。(25%)

🖼️【此處有附圖,請對照原卷】
Parent 1:1 0 1 1 0
Parent 2:1 1 0 1 1
Child 1:1 0 0 1 1
Child 2:1 1 1 1 0

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考「單點交配」(one-point crossover)的字串操作:先隨機選出切點,再交換兩個字串切點之後的部分。

題目中的亂數 kk 介於 11 到 55。以五個字元字串為例,交換位置 k+1k+1 至第 55 個字元;位置 11 至 kk 則保留原樣。當 k=5k=5 時,切點之後沒有字元,因此兩個子代與原親代相同。

解題方法

設親代字串為 P1P_1、P2P_2,子代為 C1C_1、C2C_2。切點為 kk 時,子代前 kk 個字元分別取自原親代,剩餘字元則互相交換:

C1=P1[1:k]+P2[k+1:5]C_1=P_1[1:k]+P_2[k+1:5] C2=P2[1:k]+P1[k+1:5]C_2=P_2[1:k]+P_1[k+1:5]

以下用 Python 的切片實作。Python 索引從 00 開始,[:k] 取前 kk 個字元,[k:] 取從第 k+1k+1 個字元起的部分。

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 4 題

  1. 有關於資料結構中的二元搜尋樹(binary search tree),試回答以下問題:
    (1) 請說明二元搜尋樹的特性為何?(5%)
    (2) 承題(1),基於資料序列{5,4,6,2,1,3,8,7,9}所建立的二元搜尋樹為何?(5%)
    (3) 承題(2),請說明如何利用一維陣列來儲存此一二元搜尋樹? (5%)
    (4) 承題(2),分別列出所建立二元樹的中序走訪、前序走訪及後序走訪的結果分別為何?(10%)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考查二元搜尋樹(binary search tree, BST)的定義、建立方式、陣列表示法,以及三種樹走訪順序。

二元搜尋樹的基本特性如下:

  1. 每個節點最多有兩個子節點,分別稱為左子樹與右子樹。
  2. 對任一節點而言,左子樹中所有節點的鍵值均小於該節點鍵值。
  3. 右子樹中所有節點的鍵值均大於該節點鍵值。
  4. 左、右子樹本身也必須分別是二元搜尋樹。
  5. 若鍵值不重複,則對任一節點 xx:
左子樹所有鍵值<x<右子樹所有鍵值\text{左子樹所有鍵值}<x<\text{右子樹所有鍵值}

二元搜尋樹的搜尋、插入與刪除,在樹高為 hh 時,其時間複雜度通常為 O(h)O(h)。若樹接近平衡,h≈log⁡2nh\approx \log_2 n;若樹退化成鏈狀,則 h=nh=n。


解題方法

建立二元搜尋樹時,依照題目給出的資料序列逐一插入:

{5,4,6,2,1,3,8,7,9}\{5,4,6,2,1,3,8,7,9\}

插入規則如下:

  • 新值小於目前節點:往左子樹尋找。
  • 新值大於目前節點:往右子樹尋找。
  • 找到空位置時,將新值放入該位置。

逐一插入

  1. 插入 55:55 成為根節點。
  2. 插入 44:4<54<5,放在 55 的左子節點。
  3. 插入 66:6>56>5,放在 55 的右子節點。
  4. 插入 22:2<52<5,再比較 2<42<4,放在 44 的左子節點。
  5. 插入 11:1<51<5、1<41<4、1<21<2,放在 22 的左子節點。
  6. 插入 33:3<53<5、3<43<4,但 3>23>2,放在 22 的右子節點。
  7. 插入 88:8>58>5、8>68>6,放在 66 的右子節點。
  8. 插入 77:7>57>5、7>67>6,但 7<87<8,放在 88 的左子節點。
  9. 插入 99:9>59>5、9>69>6、9>89>8,放在 88 的右子節點。

因此所建立的二元搜尋樹為:

          5
        /   \
       4     6
      /       \
     2         8
    / \       / \
   1   3     7   9

一維陣列儲存方式

可使用「完全二元樹索引法」將二元樹儲存在一維陣列中。採用陣列索引從 11 開始時:

  • 根節點儲存於 A[1]A[1]
  • 若節點位於 A[i]A[i]:
    • 左子節點位於 A[2i]A[2i]
    • 右子節點位於 A[2i+1]A[2i+1]
  • 父節點位於:
A[⌊i2⌋]A\left[\left\lfloor \frac{i}{2}\right\rfloor\right]

依照上述規則配置:

陣列位置儲存內容
A[1]A[1]55
A[2]A[2]44
A[3]A[3]66
A[4]A[4]22
A[5]A[5]空
A[6]A[6]空
A[7]A[7]88
A[8]A[8]11
A[9]A[9]空
A[14]A[14]77
A[15]A[15]99

因此可表示為:

A[1..15]=[5,4,6,2,∅,∅,8,1,∅,∅,∅,∅,∅,7,9]A[1..15] = [5,4,6,2,\varnothing,\varnothing,8,1,\varnothing,\varnothing,\varnothing,\varnothing,\varnothing,7,9]

其中 ∅\varnothing 表示該位置沒有節點。

位置推導如下:

  • 55 在 A[1]A[1]
  • 44 是 55 的左子節點,在 A[2]A[2]
  • 66 是 55 的右子節點,在 A[3]A[3]
  • 22 是 44 的左子節點,在 A[4]A[4]
  • 88 是 66 的右子節點,在 A[7]A[7]
  • 11 是 22 的左子節點,在 A[8]A[8]
  • 77 是 88 的左子節點,在 A[14]A[14]
  • 99 是 88 的右子節點,在 A[15]A[15]

儲存方式的特性

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

其他考古題

109 年政治大學的其他科目

政治大學《計算機概論》其他年度