分为左右两部分计算,各自递归得到结果后相乘
# -*- coding:utf-8 -*-
class Solution:
def multiply(self, A):
# write code here
left,right=[1,A[0]],[A[-1],1]
for i in range(1,len(A)-1):
left.append(left[-1]*A[i])
right.insert(0,right[0]*A[-i-1])
return [left[i]*right[i] for i in range(len(A))]
京公网安备 11010502036488号