Try   HackMD

2020q3 Homework7 (quiz7)

contributed by < Holycung >
2020q3 Homework7 (quiz7) 題目

目錄

測驗 1

題目

給定兩個函式實作:

int funcA(int i) { if (i == 0) return 0; return 5 * funcA(i - 1); } int funcB(int i) { if (i == 0) return 0; return funcB(i - 1); }

tail recursion 的觀點,請從下列選項挑出正確的陳述。

作答

根據 Tail call 當中的 Syntactic form 範例有提到如下。

control must return to the caller to allow it to inspect or modify the return value before returning it.

所以在最後 return 時還有做運算或是 if else 都算是在 tail position,所以這邊只有 funcB 是 Tail recursion。

延伸問題

測驗 2

題目

作答

延伸問題

測驗 3

題目

作答

延伸問題

測驗 4

題目

作答

延伸問題

測驗 5

題目

作答

延伸問題

參考資料