题解 | #构建乘积数组#
构建乘积数组
http://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975db46
# -*- coding:utf-8 -*-
class Solution:
def multiply(self, A):
# write code here
arrayA = []
arrayB = []
arrayR = []
v = 1
for idx, item in enumerate(A):
v *= item
arrayA.append(v)
v = 1
for idx, item in enumerate(A[::-1]):
v *= item
arrayB.insert(0, v)
for idx,item in enumerate(A):
if idx == 0:
v = arrayB[idx+1]
elif idx == len(A)-1:
v = arrayA[idx-1]
else:
v = arrayA[idx-1]*arrayB[idx+1]
arrayR.append(v)
return arrayR
class Solution:
def multiply(self, A):
# write code here
arrayA = []
arrayB = []
arrayR = []
v = 1
for idx, item in enumerate(A):
v *= item
arrayA.append(v)
v = 1
for idx, item in enumerate(A[::-1]):
v *= item
arrayB.insert(0, v)
for idx,item in enumerate(A):
if idx == 0:
v = arrayB[idx+1]
elif idx == len(A)-1:
v = arrayA[idx-1]
else:
v = arrayA[idx-1]*arrayB[idx+1]
arrayR.append(v)
return arrayR
