108 年 國立臺灣大學資訊管理學系碩士班《資訊科技概論》
第 1 題2 分
Which of the following is not an image file format?
(A) JPEG
(B) MPEG
(C) GIF
(D) BMP
(E) all of the above are image file formats.
登入後即可作答並保存紀錄。
本題考驗對常見影像檔案格式的認知。
影像檔案格式主要用於儲存靜態圖片,例如 JPEG、GIF、BMP 等。
第 2 題2 分
Which of the following refers to a small piece of data sent from a website and stored on the user's computer by the user's web browser while the user is browsing so as to remember stateful information?
(A) proxy
(B) cookie
(C) etag
(D) http hash
(E) cache
登入後即可作答並保存紀錄。
本題考驗對網頁瀏覽中儲存資訊技術的理解。
Cookie 是一種小型的文字檔案,由網站伺服器發送,並儲存在使用者的瀏覽器中。它用於記錄使用者的瀏覽習慣、登入狀態、購物車內容等「狀態資訊」(stateful information),以便在使用者下次造訪時能提供個人化的體驗或維持登入狀態。
第 3 題2 分
How many distinct Internet addresses can IPv6 facilitate?
(A)
(B)
(C)
(D)
(E)
登入後即可作答並保存紀錄。
本題考驗對 IPv6 位址空間的知識。
IPv6 (Internet Protocol version 6) 是下一代網際網路協定,其位址長度為 128 位元。
第 4 題2 分
Which of the following (suite of) communication protocols are the foundation protocols used to interconnect network devices on the Internet?
(A) TCP/IP
(B) UDP/TCP
(C) HTTP
(D) HTTP/HTTPS
(E) DNS
登入後即可作答並保存紀錄。
本題考驗對網際網路基礎通訊協定的了解。
TCP/IP (Transmission Control Protocol/Internet Protocol) 是一個協定套件,它定義了網際網路資料傳輸的規則和架構。IP (網際網路協定) 負責位址分配和封包路由,而 TCP (傳輸控制協定) 則提供可靠的、面向連接的資料傳輸服務。這個協定套件是現代網際網路運作的基石。
第 5 題2 分
Which of the following is typically not a task of an operating system?
(A) CPU scheduling
(B) storage management
(C) memory allocation
(D) I/O management
(E) all of the above are common tasks of an operating system.
登入後即可作答並保存紀錄。
本題考驗對作業系統核心功能的認知。
作業系統 (Operating System, OS) 的主要職責包括管理系統資源,並為使用者和應用程式提供一個操作介面。
(A) CPU Scheduling (CPU 排程):作業系統負責分配 CPU 時間給不同的行程,使其能夠有效率地運行。
第 6 題2 分
Which of the following is wrong?
(A) Linux is open source
(B) Linux is Unix-like
(C) Android is based on Linux
(D) Android is open source
(E) all of the above are correct (choose this one only if none of the above can be chosen).
登入後即可作答並保存紀錄。
本題考驗對 Linux 和 Android 相關知識的判斷。
(A) Linux 是開源軟體 (Open Source),使用者可以自由取得、修改和散佈原始碼。此敘述正確。
(B) Linux 是一個類 Unix (Unix-like) 的作業系統,其設計理念和許多指令與 Unix 系統相似。此敘述正確。
(C) Android 作業系統的核心是基於 Linux 核心。此敘述正確。
第 7 題2 分
Which of the following technologies is best used for tracking objects?
(A) smart card
(B) beacon
(C) RFID
(D) NFC
(E) IoT
登入後即可作答並保存紀錄。
本題考驗對物體追蹤技術的理解。
物體追蹤 (tracking objects) 通常涉及識別和定位特定物品或生物。
(A) Smart card (智慧卡):通常用於身分驗證或支付,本身不具備主動追蹤能力。
(B) Beacon (信標):是小型無線發射器,可以廣播識別訊號,常被用於室內定位和追蹤。
(C) RFID (Radio-Frequency Identification, 無線射頻辨識):透過無線電波辨識和追蹤附有 RFID 標籤的物體。它廣泛用於物品追蹤、存貨管理等。
第 8 題2 分
Which of the following technologies is seldom used in autonomous cars to perceive their surroundings?
(A) Lidar
(B) radar
(C) computer vision
(D) GPS
(E) all of the above are commonly used technologies.
登入後即可作答並保存紀錄。
核心觀念
本題考查自駕車的感知技術與定位技術之區別:
- 感知(Perception):偵測車輛周遭的物體、距離、速度、道路標線、交通號誌與行人等。
- 定位(Localization):判斷車輛目前所在的位置,常結合 GPS、慣性測量單元與高精度地圖。
- 導航(Navigation):根據目前位置與目的地規劃行駛路徑。
題目問的是「用來感知周遭環境」的技術,因此應選擇主要負責定位,而非直接偵測周遭物體的技術。
解題方法
逐一判斷各技術是否能直接取得周遭環境資訊:
- Lidar 可取得周遭物體的距離與空間形狀。
- Radar 可偵測物體距離、方位與相對速度。
- Computer vision 可透過攝影機辨識車道、號誌、行人與車輛。
- GPS 主要提供車輛的地理位置座標,並不直接感知周遭障礙物。
因此,GPS 雖然常整合於自駕車系統中,但它主要支援定位與導航,不是周遭環境感知的主要工具。
選項分析
(A) Lidar
Lidar(Light Detection and Ranging)利用雷射脈衝測量物體距離,依據光脈衝發射與反射返回的時間估算距離:
其中 為物體距離、 為光速、 為雷射往返時間,除以 是因為光線經過「去程」與「回程」。
Lidar 能建立周遭環境的三維點雲,用於辨識車輛、行人、路緣與障礙物,屬於常見的環境感知技術。本選項錯誤。
(B) Radar
Radar(Radio Detection and Ranging)利用無線電波偵測物體。除了估計距離與方向,還能利用都卜勒效應測量物體相對速度。
第 9 題2 分
Which of the following is an EU regulation on data protection and privacy for all individuals within the EU that replaces the 1995 EU Data Protection Directive and goes into force in May 2018?
(A) International Safe Harbor Privacy Principles
(B) Digital Millennium Copyright Act (DMCA)
(C) Digital Transition Content Security Act
(D) General Data Protection Regulation
(E) none of the above.
登入後即可作答並保存紀錄。
本題考驗對歐盟數據保護法規的認知。
歐盟於 2018 年 5 月 25 日生效的《通用資料保護條例》(General Data Protection Regulation, GDPR) 是針對所有歐盟公民的個人資料保護和隱私的一項重要法規,它取代了 1995 年的《歐盟資料保護指令》。
第 10 題2 分
Which of the following is not considered as a specific attribute that defines big data?
(A) volume
(B) velocity
(C) variety
(D) veracity
(E) all of the above are specific attributes that define big data.
登入後即可作答並保存紀錄。
本題考驗對大數據 (Big Data) 特徵的理解。
大數據通常以「V」開頭的幾個屬性來定義,最經典的是 3V:
- Volume (資料量):指資料的規模巨大。
- Velocity (資料速度):指資料產生和處理的速度非常快。
第 11 題2 分
Which of the following is not an application of big data?
(A) Decision making
(B) Forecast and Prediction
(C) Vulnerability Assessment
(D) Government Governance
(E) all of the above can be applications of big data.
登入後即可作答並保存紀錄。
本題考驗對大數據應用領域的認知。
大數據分析能夠從海量、多樣、高速的資料中提取有價值的洞見,應用範圍極為廣泛。
(A) Decision making (決策制定):透過大數據分析,企業和組織可以做出更明智、基於數據的決策。
(B) Forecast and Prediction (預測與預報):大數據模型常用於預測市場趨勢、天氣、疾病傳播等。
第 12 題2 分
The use of CAPTCHA (which requires user to type the letters of a distorted image, sometimes with the addition of an obscured sequence of letters or digits that appears on the screen) is an example of ____ that is meant to determine whether or not the user is human.
(A) Turing Test
(B) Alan Test
(C) Interactive Test
(D) AI Test
(E) Awareness Test
登入後即可作答並保存紀錄。
本題考驗對 CAPTCHA 技術及其背後概念的理解。
CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) 的全稱就已經說明了它的目的:一個自動化的公開圖靈測試,用來區分電腦和人類。
圖靈測試 (Turing Test) 是由艾倫·圖靈提出的,旨在測試機器是否能展現出與人類無法區分的智能行為。
第 13 題2 分
Which of the following protocols, as part of X.500, is designed for enabling anyone to locate organizations, individuals, and other resources such as files and devices in a network, whether on the public Internet or on a corporate intranet?
(A) Free Directory Access Protocol (FDAP)
(B) Internet Directory Access Protocol (IDAP)
(C) Lightweight Directory Access Protocol (LDAP)
(D) Root Directory Access Protocol (RDAP)
(E) none of the above.
登入後即可作答並保存紀錄。
本題考驗對目錄服務協定的了解,特別是與 X.500 標準相關的協定。
X.500 是一系列國際標準,定義了目錄服務的結構和協定。
第 14 題2 分
Which of the following protocols provides a secure channel over an unsecured network in a client-server architecture, and was designed as a replacement for Telnet and for unsecured remote shell protocols such as the Berkeley rlogin and rsh?
(A) Secure Shell (SSH)
(B) Transport Layer Security (TLS)
(C) Secure Sockets Layer (SSL)
(D) Session Initiation Protocol (SIP)
(E) none of the above.
登入後即可作答並保存紀錄。
本題考驗對安全通訊協定的了解,特別是取代 Telnet 和 rsh 的協定。
SSH (Secure Shell) 是一種網路協定,用於在不安全的網路上提供安全的遠端登入和檔案傳輸。它加密了通訊內容,防止竊聽和篡 পরিবর্তিত,因此常被用來取代不安全的 Telnet 和 rlogin/rsh。
第 15 題2 分
Roughly speaking, the "deep" in "deep learning" neural networks refers to ____.
(A) the amount of data being trained
(B) the number of tags in input data
(C) the fan-in of a node
(D) the fan-out of a node
(E) none of the above.
登入後即可作答並保存紀錄。
本題考驗對深度學習 (Deep Learning) 名稱由來的理解。
「深度學習」之所以稱為「深度」,是因為其神經網路模型具有多層結構 (multiple layers)。這些層級結構使得模型能夠學習到資料中不同層次的抽象特徵,從而處理複雜的模式。
- (A) 資料量 (amount of data) 是影響模型訓練效果的因素,但不是「深度」的定義。
第 16 題2 分
Which of the following is wrong about deep learning in AI?
(A) deep learning requires training data to teach the model how to derive output from input
(B) why an output is derived from the input may not be explained from the model
(C) for decision making, a biased input may yield a bias output
(D) training data usually have human marked information to teach the model what the input are
(E) all of the above are correct (choose this one only if none of the above can be chosen).
登入後即可作答並保存紀錄。
本題考驗對深度學習特性的理解,找出錯誤的敘述。
(A) 深度學習是監督式學習的一種,確實需要大量的標記訓練資料來學習輸入與輸出之間的映射關係。此敘述正確。
(B) 深度學習模型(特別是複雜的深度神經網路)常被視為「黑盒子」,其內部決策過程難以解釋,即所謂的「可解釋性」(explainability) 問題。此敘述正確。
第 17 題2 分
Which of the following is wrong about information security?
(A) Spyware is a type of malware designed to steal user data and sensitive information.
(B) A Trojan horse is a type of malware that is often disguised as legitimate software so as to mislead users of its true intent.
(C) A virus usually refers to a type of malicious programs that are able to actively replicate themselves and spread to other computers.
(D) A botnet refers to a network of hijacked zombie computers that are remotely controlled by a hacker.
(E) all of the above are correct (choose this one only if none of the above can be chosen).
登入後即可作答並保存紀錄。
本題考驗對資訊安全中常見惡意軟體和網路威脅的定義。
(A) Spyware (間諜軟體):確實是用來竊取使用者個人資訊、瀏覽習慣等敏感資料的惡意軟體。此敘述正確。
(B) Trojan horse (木馬程式):其特點是偽裝成合法軟體,誘騙使用者執行,從而達成其隱藏的惡意目的,如竊取資料、建立後門等。此敘述正確。
第 18 題2 分
In information security, which of the following terms more commonly refers to psychological manipulation of people into performing actions or divulging confidential information?
(A) Phishing
(B) Honeypot
(C) Spoofing
(D) Social Engineering
(E) Psychology Engineering.
登入後即可作答並保存紀錄。
本題考驗對資訊安全中「社會工程學」概念的理解。
社會工程學 (Social Engineering) 是指利用人性的弱點,透過心理操縱、欺騙、誘騙等手段,使人們自願或不自願地執行某些動作(如點擊惡意連結、洩漏密碼、提供敏感資訊)或洩漏機密資訊。
(A) Phishing (網路釣魚):是一種常見的社會工程學攻擊手法,透過偽裝成合法機構,誘騙使用者提供帳號密碼等敏感資訊。
第 19 題2 分
Which of the following helps protect computers by monitoring and controlling incoming and outgoing network traffic based on predetermined security rules?
(A) vulnerability scanner
(B) authentication scanner
(C) anti-virus software
(D) firewall
(E) eavesdropping software.
登入後即可作答並保存紀錄。
本題考驗對網路安全設備/軟體的了解。
防火牆 (Firewall) 的主要功能是在網路邊界設定安全策略,監控和控制進出網路的資料流量,只允許符合預設規則的流量通過,從而保護內部網路免受未經授權的存取或惡意攻擊。
(A) Vulnerability scanner (漏洞掃描器):用於掃描系統或網路,找出存在的安全漏洞。
第 20 題2 分
Which of the following applications/protocols is typically not based on client-server architecture?
(A) network printing
(B) remote procedure call
(C) emails
(D) HTTP
(E) all of the above are based on client-server architecture.
登入後即可作答並保存紀錄。
本題考驗對不同應用程式/協定架構的判斷,找出非 Client-Server 架構的例子。
Client-Server 架構是指由一個或多個伺服器 (Server) 提供服務,而由多個客戶端 (Client) 向伺服器請求服務的架構模式。
(A) Network printing (網路列印):通常是 Client (使用者電腦) 發送列印請求給 Server (列印伺服器或印表機本身),伺服器負責處理列印任務。這是 Client-Server 架構。
(B) Remote Procedure Call (RPC, 遠端程序呼叫):RPC 允許一個程式在另一個地址空間(通常在另一台機器上)執行一個程序,而程序設計者對 RPC 的細節一無所知。這通常涉及 Client 發起 RPC 請求給 Server,Server 執行程序後回傳結果。這是 Client-Server 架構。
第 1 題15 分
HEAP is a complete binary tree that provides an efficient implementation of priority queues. Suppose we use a heap to manage a list of positive integers that large values mean high priority. The following C++ code fragment shows the class definition of the heap.
class HEAP
{
public:
int delete();
// return and delete the integer in the root of the heap
// return -1 if there is nothing to delete
bool insert(int newValue);
// insert newValue into the heap
// return false if the insertion is not successful
private:
int itemCount;
// number of heap items
int items [100]; // array of heap items
};
(a) Write the member function delete() that removes the integer in the root of the heap.
(b) Write the member function insert() that inserts a new integer into the heap.
登入後即可作答並保存紀錄。
本題考驗對二元堆積 (Binary Heap) 資料結構的實作能力,特別是最大堆積 (Max Heap) 的 delete 和 insert 操作。堆積是一種完全二元樹,常用於實作優先佇列。在此題目中,大值代表高優先權,故為最大堆積。
核心觀念:
最大堆積的性質:
- 堆積是一個完全二元樹。
- 任何節點的值都大於或等於其子節點的值(最大堆積性質)。
演算法步驟:
1. delete() 函數 (移除根節點,即最大值)
- 處理空堆積: 若
itemCount為 0,表示堆積為空,無法刪除,應返回 -1。 - 儲存根節點值: 根節點 (索引 0) 的值是我們要返回的最大值。
- 替換根節點: 將堆積的最後一個元素(即
items[itemCount - 1])移動到根節點的位置 (items[0])。 - 減少計數:
itemCount減 1。 - 堆積化 (Heapify Down / Sink): 新的根節點可能破壞了最大堆積的性質。需要從根節點開始,向下調整堆積,使其恢復堆積性質。這個過程稱為「堆積化下沉」(sink)。
- 從根節點 (索引
current = 0) 開始。 - 比較
current節點與其左右子節點(左子節索引2*current + 1,右子節索引2*current + 2)。 - 找出三個節點中值最大的節點(
current、左子節、右子節)。 - 如果最大的節點不是
current節點,則交換current節點與最大子節點的值。 - 更新
current為被交換的子節點索引,重複此過程,直到current節點大於其子節點,或current節點沒有子節點(即達到葉節點)。
- 從根節點 (索引
第 2 題10 分
Double hashing is a popular collision resolution scheme that employs two hash functions to determine the location of an item in a hash table. One hash function computes the starting location of an item and the other one specifies the size of probe step.
(a) Explain the benefit of double hashing when resolving collisions.
(b) What is the problem if the hash table size and the probe step size are not relatively prime?
(c) Suggest a solution to the problem.
登入後即可作答並保存紀錄。
本題考驗對雜湊表 (Hash Table) 中衝突解決方法,特別是雙重雜湊 (Double Hashing) 的理解。
核心觀念:
雜湊表透過雜湊函數將鍵 (key) 映射到表格中的索引 (index)。然而,不同的鍵可能會被映射到相同的索引,這就是「衝突」(collision)。衝突解決方法是處理這些衝突的技術,以確保所有鍵都能被儲存和檢索。
雙重雜湊 (Double Hashing):
雙重雜湊使用兩個雜湊函數:
h1(key):計算初始的雜湊值(起始位置)。h2(key):計算探針步長 (probe step size)。
探針序列為:
index = (h1(key) + i * h2(key)) % table_size,其中i = 0, 1, 2, ...
a) 雙重雜湊的好處 (Benefit of Double Hashing)
雙重雜湊的主要好處是能夠減少聚集 (clustering) 現象,特別是二次聚集 (secondary clustering)。
- 聚集 (Clustering): 在線性探測 (linear probing) 中,如果一個位置發生衝突,探測序列會連續檢查下一個位置。這會導致連續的已佔用槽位形成「聚集」,進而增加後續衝突的機率和探測長度。二次探測 (quadratic probing) 雖然能緩解線性聚集,但會產生二次聚集,即所有發生衝突且使用相同
h1(key)的鍵,都會沿著相同的探針序列探測。 - 雙重雜湊的優勢: 由於第二個雜湊函數
h2(key)的值取決於鍵本身,因此對於不同的鍵,即使它們的h1(key)相同,它們的h2(key)也很可能不同。這意味著它們的探針序列也會不同。因此,雙重雜湊能產生更隨機、分散的探針序列,極大地減少了聚集現象,從而提高了雜湊表的效能,尤其是在負載因子 (load factor) 較高時。
b) 問題:雜湊表大小與探針步長不互質 (Problem if table size and probe step size are not relatively prime)
如果雜湊表的大小 M (table size) 和探針步長 S (probe step size, 即 h2(key)) 不是互質 (not relatively prime),即它們的最大公因數 (GCD) 大於 1 (gcd(M, S) > 1),那麼問題在於:
- 探針序列無法遍歷整個表格: 探針序列的公式是
(h1(key) + i * S) % M。如果gcd(M, S) = d > 1,那麼探針序列(h1(key) + i * S)對M取模後,其結果只能是h1(key)加上M的倍數與S的倍數的組合。