問題詳情

41作業系統在執行遞迴(Recursive)時須使用的資料結構為何?
(A)連結串列(linked list)
(B)樹狀結構(tree structure)
(C)佇列(queue)
(D)堆疊(stack)

參考答案

答案:D
難度:適中0.597938
統計:A(8),B(7),C(24),D(58),E(0)

用户評論

曹嘉維】評論

Be a top spot】評論

當程式遇到 recursive call 時,必須保存當時的執行狀態;即 push 需要保存的內容到 stack memory 中由於 Stack 空間有限,若又不斷 push 的話就會爆掉,造成所謂的「Stack Overflow」:Recursive 所需的 Stack 空間= (每次 push 的量) * (recursive call 次數) 。Push/Pop 執行的時間即是一個損耗,所以 Recursive 相當花時間時間複雜度為 nO(2n)經典題型:最大公因數 (GCD)、費波納契數列 (Fibonacci Sequence)、河內塔 (Hanoi Tower)、N 個字元的排列組合...