114 公務人員升官等薦任 統計 資料處理 考古題詳解
第 一 題30 分
假設一關聯資料庫中有一關係(relation),其包含有 、、、、、、、 八個屬性。屬性間之功能相依性(Functional Dependencies)如下:
;;;;。
請試述下列問題:(每小題 10 分,共 30 分)
(一) 請為該關係(relation) 決定出一組最適當的主鍵(primary key)。
(二) 請對關係(relation) 進行分解,使其能符合第二正規化之要求。
(三) 請對前面分解後之所有關係(relation)再進行分解,使其能符合第三正規化之要求。
登入後即可作答並保存紀錄。
核心觀念
本題考查功能相依、屬性閉包、候選鍵,以及第二、第三正規化(2NF、3NF)的分解。
- 若 ,表示在關係中,只要兩筆資料的 值相同,其 值也必須相同。
- 屬性集合 的閉包 ,是由已知功能相依性可推得、由 決定的所有屬性。
- 若 包含關係的全部屬性,則 是超鍵;若 的任何真子集都不是超鍵,則 是候選鍵。
- 部分相依是非主屬性依賴於複合候選鍵的真子集;2NF 要求消除部分相依。
- 傳遞相依是非主屬性依賴於鍵以外的決定因素;3NF 要求每個非平凡功能相依 至少符合下列一項: 是超鍵,或 中每個屬性都是主屬性(屬於某候選鍵)。
本題沒有法條適用。
解題方法
先找出必須進入每個候選鍵的屬性,再計算閉包;接著依候選鍵檢查部分相依,完成 2NF 分解;最後將各關係中的傳遞相依拆開,使每個關係符合 3NF。
(一)決定主鍵
觀察功能相依右側的屬性,可得:
- 沒有出現在任何功能相依右側,因此無法由其他屬性推得,任何候選鍵都必須包含 。
- 也沒有出現在任何功能相依右側,因此任何候選鍵都必須包含 。
計算 的閉包:
由 ,加入 ;再由 ,加入 ;由 ,加入 ;由 ,加入 。因此:
能決定全部屬性,且 、 各自都不能單獨決定全部屬性,因此 是候選鍵。又因任何候選鍵都必須包含 、,而 已是超鍵,所以它是唯一候選鍵。
(二)分解至第二正規化
唯一候選鍵是複合鍵 ,故主屬性為 ,非主屬性為 。
檢查候選鍵的真子集:
- ,而 ,故非主屬性 部分相依於候選鍵。
- 沒有決定其他屬性的功能相依。
將 所涉及的屬性獨立成一個關係,並保留原關係中其餘屬性:
第 二 題28 分
請說明路由器(Router)、IP 分享器、交換器(Switch)、防火牆(Firewall)之主要功能。
登入後即可作答並保存紀錄。
核心觀念
本題考查區域網路中常見設備的功能分工,重點在於辨認各設備主要處理的層次與工作:
- **交換器(Switch)**主要在區域網路內轉送資料,依據目的端的 MAC 位址決定轉送埠。
- **路由器(Router)**連接不同的 IP 網路,依據目的 IP 位址與路由表選擇封包的傳送路徑。
- IP 分享器通常整合路由器、網路位址轉換(NAT)、DHCP 與無線基地台等功能,讓多部裝置共用一個對外網路連線。
- **防火牆(Firewall)**依據安全規則檢查並控制網路流量,以允許合法連線、阻擋未授權或不符合規則的流量。
解題方法
以「主要判斷依據」區分四種設備最清楚:Switch 看 MAC 位址、Router 看 IP 位址與路由表、IP 分享器負責 多裝置共用對外連線、Firewall 負責 依安全規則過濾流量。作答時依序說明每種設備的用途與典型功能,即可完整回答。
各設備主要功能
一、路由器(Router)
路由器連接兩個或多個不同的 IP 網路,收到 IP 封包後,依封包的目的 IP 位址查詢路由表,選擇適當的下一個傳送方向,將封包轉送至目的網路。家用或機關網路中的路由器,通常負責區域網路與外部網路(如網際網路)之間的連接。
二、IP 分享器
IP 分享器常用於家庭或小型辦公室,讓多部電腦、手機等裝置透過同一個對外連線上網。常見功能包括:
- 透過 NAT,將內部網路的私有 IP 位址轉換為對外使用的 IP 位址。
- 透過 DHCP,自動分配內部裝置的 IP 位址及相關網路設定。
第 三 題30 分
試分別以時間複雜度、額外記憶體空間複雜度、相同鍵值(key)排序順序之穩定性、欲被處理之資料量龐大至大於主記憶體空間、儲存資料的資料結構(如 Array、linked list)等不同面向,比較 Merge Sort 與 Quick Sort 之不同特性。
登入後即可作答並保存紀錄。
核心觀念
本題比較兩種常見的比較式排序法:合併排序(Merge Sort)與快速排序(Quick Sort)。比較時要分清楚三件事:
- 時間複雜度:演算法執行所需時間如何隨資料筆數 增長。
- 額外空間複雜度:除原始資料外,排序時另需多少記憶體。
- 排序特性與適用情境:是否穩定、能否處理大於主記憶體的資料,以及資料結構對實作的影響。
解題方法
依題目指定的五個面向逐項比較,並說明常見實作下的複雜度。複雜度分析以陣列為主要例子;Quick Sort 的空間複雜度另計遞迴堆疊,不把原地分割所用的少量變數算入主要額外空間。
| 比較面向 | Merge Sort | Quick Sort |
|---|---|---|
| 時間複雜度 | 最佳、平均、最差皆為 。每次將資料切成兩半,共約 層;每層合併工作量為 ,因此總時間為 。 | 最佳與平均為 ;最差為 。若每次樞紐(pivot)都能將資料大致均分,遞迴深度約為 ,總工作量為 。若每次分割都極不平均,例如一側為 筆、另一側為 筆,則比較次數約為 。 |
| 額外記憶體空間 | 陣列實作通常需要 輔助陣列來合併,遞迴堆疊約為 ;總額外空間由輔助陣列主導,為 。 | 常見原地分割實作不需另建一個 的資料陣列;遞迴堆疊平均為 ,最差為 。若實作另行建立左右子陣列,空間需求則會增加,不能一概視為原地排序。 |
| 相同鍵值的穩定性 | 標準實作可做到穩定排序。合併時遇到相同鍵值,優先取自左側的資料,即可保留它們原來的先後順序。 | 標準原地分割實作通常不穩定;分割時資料可能跨越彼此移動,使相同鍵值的原始順序改變。 |
| 資料量大於主記憶體 | 適合外部排序。可先將資料分批讀入記憶體排序,再將排序後的資料寫回磁碟,最後以多路合併依序合併各批次; |
第 四 題12 分
設 為一含有 個元素的矩陣, 為一含有 個元素的矩陣, 為一含有 個元素的矩陣, 為 之結果矩陣。並以 、、、 分別代表矩陣 、、、 位於 處之元素值。
試以近似程式語言格式,撰寫一計算 之結果矩陣 之演算法。
登入後即可作答並保存紀錄。
核心觀念
矩陣相乘的維度規則是:若 為 矩陣、 為 矩陣,則 有定義,結果為 矩陣,其元素為
題目中 為 、 為 、 為 。先算 ,其維度為 ;但要接著計算 , 的欄數 必須等於 的列數 ,因此須滿足 。若先算 ,則 的欄數 必須等於 的列數 ,同樣須滿足 。
解題方法
本題未明示 ,因此三個矩陣依題示維度一般不能直接相乘。以下以矩陣乘積有定義為前提,即 ,採用由左至右計算的方式:
- 先計算 。 為 矩陣,且
- 再計算 。因 , 的欄數與 的列數相同,結果 為 矩陣,且
近似程式語言如下: