109 地方特考三等 統計 資料處理 考古題詳解

109 年・地方特考・三等・統計
試題代碼 資料處理

第 一 題25 分

假設有三個行程(Process)在很短的時間內依序先後抵達等待佇列,每個行程所需 CPU 執行的時間如下:

行程抵達次序所需執行時間(毫秒)
P1P166
P2P233
P3P388

試問若作業系統採用以下三種不同的排程演算法,每個行程所需的平均等待時間分別為何?

(1) 先來先做排程(First-Come, First-Served)。

(2) 循環分配排程(Round Robin),並以 33 毫秒為時間切割額度(Time Slice)。

(3) 假設 P1P1、P2P2、P3P3 同時抵達等待佇列,最短工作優先排程(Shortest Job First)。

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

這一題的完整詳解

核心觀念

本題考查排程演算法中的等待時間:行程從抵達等待佇列,到第一次取得 CPU 執行前所等待的時間;若行程中途被暫停,暫停後等待重新取得 CPU 的時間也要計入。

平均等待時間為:

平均等待時間=∑i=1n行程 Pi 的等待時間n\text{平均等待時間} =\frac{\sum_{i=1}^{n}\text{行程 }P_i\text{ 的等待時間}}{n}

三種演算法的規則如下:

  • 先來先做(FCFS):依抵達順序執行,取得 CPU 後持續執行至完成。
  • 循環分配(Round Robin):行程依佇列順序輪流執行,每次最多使用一個時間切割額度;未完成者回到佇列尾端。
  • 最短工作優先(SJF):同時可執行的行程中,先執行所需 CPU 時間最短者。

解題方法

(1) 先來先做排程(FCFS)

依抵達順序 P1→P2→P3P1 \rightarrow P2 \rightarrow P3 執行:

行程執行區間等待時間
P1P100~6600
P2P266~9966
P3P399~171799

因此:

平均等待時間=0+6+93=5 毫秒\text{平均等待時間} =\frac{0+6+9}{3} =\boxed{5\text{ 毫秒}}

(2) 循環分配排程(Round Robin,時間切割額度 33 毫秒)

各行程依佇列順序輪流執行,每次最多執行 33 毫秒:

P1(0~3)→P2(3~6)→P3(6~9)→P1(9~12)→P3(12~15)→P3(15~17)P1(0\text{~}3) \rightarrow P2(3\text{~}6) \rightarrow P3(6\text{~}9) \rightarrow P1(9\text{~}12) \rightarrow P3(12\text{~}15) \rightarrow P3(15\text{~}17)

完成時間分別為:P1P1 在 1212 毫秒完成,P2P2 在 66 毫秒完成,P3P3 在 1717 毫秒完成。

🔒

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

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

免費註冊

第 二 題25 分

關聯代數(Relational Algebra)係用來描述關聯資料庫中資料表之間的操作方式。今有兩個關聯資料表 AuthorAuthor 及 BookBook,試將以下關聯代數運算式轉換成適當之 SQL 語法。

Result=πAuthor.Name, Book.Title(σBook.Category=′科幻′(σAuthor.id=Book.Aid(Author×Book)))Result=\pi_{Author.Name,\ Book.Title}\left(\sigma_{Book.Category='科幻'}\left(\sigma_{Author.id=Book.Aid}(Author\times Book)\right)\right)

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

這一題的完整詳解

核心觀念

本題考查關聯代數轉換為 SQL 的基本對應:

  • 選擇運算 σ\sigma:篩選符合條件的資料列,對應 SQL 的 WHERE。
  • 投影運算 π\pi:選取指定欄位,對應 SQL 的 SELECT 欄位清單。
  • 笛卡兒積 ×\times 搭配連結條件:對應 SQL 的資料表連結(JOIN)及 ON 條件。

題目先以 Author.id = Book.Aid 將作者與書籍配對,再篩選書籍類別為「科幻」,最後只輸出作者姓名與書名。

解題方法

依照由內而外的運算順序轉換:

  1. 最內層 σAuthor.id=Book.Aid(Author×Book)\sigma_{Author.id=Book.Aid}(Author\times Book):先將 Author 與 Book 依作者識別欄位及書籍作者欄位連結。
  2. 外層 σBook.Category=′科幻′\sigma_{Book.Category='科幻'}:保留類別為「科幻」的書籍。
  3. 最外層 πAuthor.Name, Book.Title\pi_{Author.Name,\ Book.Title}:只輸出作者姓名及書名。

因此,適當的 SQL 語法為:

🔒

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

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

免費註冊

第 三 題25 分

請說明以下三種無線通訊技術在傳輸距離、傳送速率、耗電量、成本等面向之差別及使用情境。

(1) ZigBee

(2) Wi-Fi

(3) Bluetooth

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

這一題的完整詳解

核心觀念

本題比較三種短距離無線通訊技術的設計取向:ZigBee 偏向低功耗、低速率與大量感測節點;Wi‑Fi 偏向高速率與區域網路連線;Bluetooth 偏向個人裝置間的短距離連接。比較時應同時考量傳輸距離、速率、耗電、成本與網路用途,不能只看單一規格。

各技術的實際距離與速率會受版本、頻段、天線、發射功率、障礙物及干擾影響。以下採常見應用中的概略值;距離與速率是典型量級,不代表所有設備都能達到。

解題方法

依序從「傳得多遠、傳得多快、耗電多少、建置成本與適用情境」比較,再連結到各技術的設計目的:

比較面向ZigBeeWi‑FiBluetooth
傳輸距離常見室內約數公尺至數十公尺;透過網狀網路可由節點接力擴大涵蓋範圍常見室內約數十公尺,室外或良好環境可更遠;實際範圍受基地台與障礙物影響傳統短距離連線常見約數公尺至數十公尺;不同功率等級與版本範圍有別
傳送速率低速率,常見規格量級為數十至數百 kbps三者中通常最高;實際吞吐量依 Wi‑Fi 世代、頻寬與訊號條件而異一般低於 Wi‑Fi;傳統藍牙常用於語音與周邊資料,低功耗藍牙則適合少量、間歇性資料
耗電量低,適合電池供電且需長時間運作的感測器相對高,尤其在持續高速傳輸或維持連線時一般藍牙耗電中等;低功耗藍牙(BLE)耗電低,適合小型電池裝置
成本通訊模組成本通常低;網狀網路可能需要較多節點與網路規劃設備與網路建置成本通常較高,且基地台需供電;家用及商用設備普及晶片與模組普及、成本通常低;連線設定簡單,適合大量消費性周邊設備
🔒

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

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

免費註冊

第 四 題25 分

請解釋以下資料處理技術的運作原理。

(1) 合併排序法(Merge Sort)

(2) 貪婪演算法(Greedy Algorithm)

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

這一題的完整詳解

核心觀念

合併排序法是一種「分治法」(Divide and Conquer)。它將待排序資料反覆切分成較小的子序列,直到每個子序列只剩一個元素;接著將已排序的子序列兩兩合併,逐步形成較大的排序結果。

單一元素必然已排序,因此排序工作的關鍵在於合併兩個已排序序列。

解題方法

以由小到大排序 [8,3,2,9,7,1,5,4][8,3,2,9,7,1,5,4] 為例:

  1. 分割:持續將序列切成左右兩半,直到每組只剩一個元素。
  2. 合併:每次比較兩個子序列最前面的元素,取較小者放入結果序列;某一側用完後,將另一側剩餘元素依序接上。
  3. 逐層合併:將長度為 1 的序列合併為長度為 2,再合併為長度為 4,最後合併成完整排序序列。

例如,合併 [2,8][2,8] 與 [3,9][3,9] 時,依序比較並取出較小值,得到 [2,3,8,9][2,3,8,9]。

遞迴關係可寫為:

T(n)=2T(n2)+Θ(n)T(n)=2T\left(\frac{n}{2}\right)+\Theta(n)

其中,兩個大小約為 n/2n/2 的子問題需各自排序,而合併全部元素需 Θ(n)\Theta(n) 時間。因此合併排序的時間複雜度為:

T(n)=Θ(nlog⁡n)T(n)=\Theta(n\log n)

最佳、平均與最差情況皆為 Θ(nlog⁡n)\Theta(n\log n)。典型的陣列實作需要 Θ(n)\Theta(n) 額外空間;若合併時遇到相等鍵值,先取左側元素,即可維持穩定性。

解題技巧

答題時應交代「反覆分割至單一元素」與「合併已排序子序列」兩階段,並說明合併時如何比較與排列。常見混淆是把合併排序寫成只會分割:分割是建立子問題,真正產生完整排序結果的是合併。

🔒

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

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

免費註冊

其他考古題