一个长度为n的数组a[0],a[1],...,a[n-1]。现在更新数组的名个元素,即a[0]变为a[1]到a[n-1]的积
a[1]变为a[0]和a[2]到a[n-1]的积,...,a[n-1]为a[0]到a[n-2]的积。
程序要求:
要求具有线性复杂度。
a[1]变为a[0]和a[2]到a[n-1]的积,...,a[n-1]为a[0]到a[n-2]的积。
程序要求:
要求具有线性复杂度。
不能使用除法运算符。
思路是思想跟这个一样,用两个数组b,c
b[i] = a[0] *... * a[i - 1]
c[i] = a[i + 1] *...*a[n]时间复杂度为O(2n)
最后a[i] = b[i]*c[i],我在这里没用c数组
少用c【i】数组的话,程序写起来就不是太好理解,其实是一个道理