免費開始練習
統測 111年 [工程與管理類] 專業科目(2)

第 48 題

📖 題組:
一個費氏數列定義第一個數為 1,第二個數為 1,後續的每個數都等於前面兩個數相加,如:1, 1, 2, 3, 5, …。圖(七)是 Python 程式碼片段,是用來計算費氏數列,其中 fun ( 1 ) 與 fun ( 2 )皆回傳 1。
題組圖片
題組圖片
若要求計算fun ( 5 )時,則fun ( 2 )會被重複計算幾次?
  • A 1
  • B 2
  • C 3
  • D 4

思路引導 VIP

請嘗試運用「遞迴樹」(Recursion Tree)的概念,將 $fun(5)$ 依照程式碼中當 $n > 2$ 時的遞迴定義不斷向下展開。當你把 $fun(5)$ 拆解為 $fun(4) + fun(3)$ 後,請繼續對這些子問題進行同樣的拆解,直到每一條路徑都到達基本案例(Base Case) $fun(1)$ 或 $fun(2)$ 為止。在這個完整的展開結構中,共會出現幾次 $fun(2)$ 呢?

🤖
AI 詳解 AI 專屬家教

✨ 哇哈哈哈!今天真是個好日子,看來連你們這些學生都沒糊塗啊!

(火箭上的我們,乘著風,手舞足蹈!) 「哦呵呵,這題竟然被你答對了!真是難得的巧合呢,遞迴呼叫 (Recursion)這種小把戲,果然沒能困住你!」

▼ 還有更多解析內容

升級 VIP 解鎖