原題**:
給定乙個整數陣列a。
定義b[i] = a[0] * ... * a[i-1] * a[i+1] * ... * a[n-1], 計算b的時候請不要使用除法。
您在真實的面試中是否遇到過這個題?
yes樣例給出a=[1, 2, 3],返回 b為[6, 3, 2]
標籤
前後遍歷
1 #include 2 #include 3 #include 4using
namespace
std;56
7 vectorlong> productexcludeitself(vector &nums)819
for (int k=i+1;k20
23numb.push_back(temp2*temp1);24}
2526
return numb;
*/27
28 vectorlong> leftnum(size,1
);29
long
long temp=1;30
//leftnum中存放的是nums陣列中0~i-1的乘積;
31for (int i=0;i)
3236
//leftnum中存放的是nums陣列中除i外其餘元素的乘積;
37 temp=1;38
for (int j=size-1;j>=0;j--)
3943
return
leftnum;
44 }
參考:1
LintCode 50 陣列剔除元素後的乘積
給定乙個整數陣列a。定義b i a 0 a i 1 a i 1 a n 1 計算b的時候請不要使用除法。給出a 1,2,3 返回 b為 6,3,2 無記錄每個點的左右二邊的乘積即可。i從左邊往左走,j從右邊往右走,每次都是記錄的都是當前點之前的乘積。這樣就相當於跳過了當前這個點。vector lon...
lintCode 50 陣列踢出元素後的乘積
給定乙個整數陣列a。定義b i a 0 a i 1 a i 1 a n 1 計算b的時候請不要使用除法。樣例 給出a 1,2,3 返回 b為 6,3,2 非常笨拙的思路,兩個for迴圈計算b i public arraylistproductexcludeitself arraylista b.ad...
陣列元素的乘積
matlab prod 陣列元素的乘積 1 syntax a b prod a 返回陣列a的乘積 如果a是向量,prod a 返回a向量的乘積。如果a是非空矩陣,prod a 將a看作列向量,返回每一列元素的乘積並組成乙個行向量b。如果a是空矩陣,prod a 返回1。如果a是多維陣列,prod a...