
100
年公務人員升官等考試、
100
年關務人員升官等考試試題
代號:
36150
等 別: 薦任
類 科: 資訊處理
科 目: 程式語言
考試時間: 2小時
座號:
※注意:
禁止使用電子計算器。
不必抄題,作答時請將試題題號及答案依照順序寫在試卷上,於本試題上作答者,不予計分。
全一頁
一、請以最近在 Apple 及Google 平台上之 App 應用程式,說明在嵌入式系統(embedded
systems)中發展程式要較非嵌入式系統在系統面與應用面多考慮那些議題?並舉例
說明之。(20 分)
二、政府部門系統委外開發越來越普遍,試從程式語言觀點說明程式/系統開發委外,
其可能問題(含軟體安全)及解決方式。(20 分)
三、
何謂遞迴演算法(recursive algorithm)?試以 Fibonacci 序列(1,1,2,3,5,8,13,21,…)
說明之。(10 分)
此類演算法應注意邊界條件(boundary condition),亦請以 Fibonacci 序列說明之。
(10 分)
四、軟體系統開發過程通常包含了需求分析、系統分析、程式設計、測試與維護,試舉
例說明各階段之工作內容,並以此例製作一測試規劃報告。(20 分)
五、插入排序法(Insertion Sort)做法是假設前i-1 個已經排序完成,在插入第i個數的時
候,就只需要一個一個比較,找到適合的地方放進去,最後輸入完,也就剛好排序
完了。選擇排序法(Selection Sort)則是每次走過整個陣列,在走的過程中記錄最
小的,最後再將它放到後面去,要重複n次。它們的時間複雜度皆為O(n2)。
請問何時最適合使用選擇排序法?何時最適合使用插入排序法?並舉例說明之。
(10 分)
請分別寫出插入排序法與選擇排序法之演算法(可使用任何程式語言或虛擬碼)。
(10 分)