擅长:python、mysql、java
<p>这是一个有点古怪的答案,但我相信问题在于,你不再将每个值与它的原始值相乘</p>
<pre class="lang-py prettyprint-override"><code>def multiplicationRecursively(arr: list, original = None, i = 0):
if not original:
return multiplicationRecursively(arr, arr.copy())
# Here is the base case
if (i == len(arr)):
return arr
newArr = [v * original[i] for v in arr]
return multiplicationRecursively(newArr, original, i + 1)
print( multiplicationRecursively( [2, 3, 7, 8, 10] ))
</code></pre>
<p>使用此方法,您将保留原始的多层,并最终得到相同的结果</p>
<p><em>这显然不是将其作为递归编写的最佳方式</em></p>