即時學習從我的期末考試從教科書。我無法解決這個問題,所以我需要回答這個問題。遞歸定義解決方案
1)寫一個函數multiply(int a,int b)的遞歸定義,該函數採用兩個整數並返回乘法結果。
我回答:
Multiply(a, b) :
0 - if a or b is equal to zero. (I got -1 here. Reason written: only 1)
a * b - (I didn't know what to write here)
2) 編寫採用整數鏈表,然後返回它的總和的元素遞歸方法。
我的解決辦法是:
int sumList(Node<Integer> list) {
int temp = list.getInfo();
if(temp == null) {
return 0;
} else {
return temp + sumList(temp.getNext);
}
}
我固定它,我想:
public int sumList(Node<Integer> list) {
Node<Integer> temp = list;
if(temp == null) {
return 0;
} else {
return temp.getInfo() + sumList(temp.getNext());
}
}
是對問題2右側的解決方案?
沒有,這是不對的。它甚至沒有編譯。爲什麼不編譯和運行你的代碼,並看看它是否產生正確的結果? –
@ user2272227谷歌它充足的遞歸方法樣本在那裏! – MaheshVarma
@JBNizet這就是原因,bcz爲我的考試我無法測試,這是一個筆試。我需要幫助找到正確的代碼,並查看它爲什麼是錯誤的。 – user2272227