Q94.
下列程式片段之計算時間,何者是正確﹖
電腦軟體設計共同科目 · 乙級 · Q94
難易度分析
2 / 5
本題考查對程式迴圈結構與時間複雜度之間對應關係的基礎理解,需能區分線性掃描與對數或乘積型複雜度的差異,屬於基本概念的應用。
正確答案:②θ(n)
② θ(n):θ(n) 表示線性時間複雜度,當程式片段包含單一迴圈且迭代次數與輸入規模 n 成正比時,其執行時間即為 θ(n),例如走訪陣列或鏈結串列。
錯誤選項解析
- ① θ(log n):θ(log n) 通常出現在二分搜尋或每次將問題規模減半的演算法中,例如二元樹的遍歷或二分法,而非線性掃描的迴圈結構。
- ③
:圖片顯示的內容若非 θ(n²) 或更高階複雜度,則通常對應巢狀迴圈結構(如氣泡排序、選擇排序),與題目所示的單一迴圈片段不符。 - ④ θ(n log n):θ(n log n) 是高效排序演算法(如合併排序、快速排序、堆積排序)的典型時間複雜度,涉及分治策略或遞迴分割,不適用於簡單的線性迴圈。
Learning Tip
"此類題型常考迴圈結構與時間複雜度的對應關係。關鍵在於判斷迴圈的迭代次數與巢狀層數:單一迴圈為 θ(n)、雙層巢狀為 θ(n²)、每次減半為 θ(log n)。實務上需特別注意迴圈變數的遞增方式(如 i++ 與 i*2 會產生完全不同的複雜度),這是檢定中極易混淆的陷阱。"
學員答題分佈
①θ(log n)0%
②θ(n)0%
③
0%
④θ(n log n)0%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!