int add2_recurse(int a, int b) { // recursive
// Rule: Can't use the *, /, +, =, *=, /=, +=, -= operators.
// Can use: ++ and/or --
// No loops allowed; no static local or global variables.
// What I have so far
while(b--) {
a++;
return a; }
int main() {
show_test(4, "add2", recursive);
cout << add2_recurse(4,5); cout<<" "; // correct: 9
cout<<add2_recurse(-5, 15); cout<<" "; // correct: 10
cout<<add2_recurse(20, -9); cout<<" "; // correct: 11
cout<<add2_recurse(-7, -5); cout<<" "; // correct: -12
cout<<endl;
當運行它, 「9 10 11 -12」 正確的輸出顯示,只有11和-12顯示慢得多。關於如何讓它跑得更快的任何想法?如何使這個遞歸函數運行得更快?
我不能在你的例子中發現任何遞歸。 –
「這個遞歸函數」?目前沒有遞歸函數。 – MikeCAT
那麼,你在面試時是怎麼做的,你在哪裏被問到這個問題? –