給定長度為 n 的整數陣列 nums,其中 n > 1,返回輸出陣列 output ,其中 output[i] 等於 nums 中除 nums[i] 之外其餘各元素的乘積。
第一種解法。需要額外的空間複雜度。輸入:說明: 請不要使用除法,且在 o(n) 時間複雜度內完成此題。[1,2,3,4]
輸出:[24,12,8,6]
高階:你可以在常數空間複雜度內完成這個題目嗎?( 出於對空間複雜度分析的目的,輸出陣列不被視為額外空間。)
b[i] = a[0] * a[1] * a[2] * …… * a[i-1] * a[i+1] * a[i+2] * …… * a[n-1]
將上述式子分成前後兩部分:b[i] = left[i] * right[i]
left[i] = a[0] * a[1] * a[2] * …… * a[i-1] = left[i-1] * a[i-1]
right[i] = a[i+1] * a[i+2] * …… * a[n-1] = right[i+1] * a[i+1]
class solution
};
參考:leetcode中文社群
思路tql。
class solution
return res;
}};
238 除自身以外陣列的乘積
題目描述 給定長度為 n 的整數陣列 nums,其中 n 1,返回輸出陣列 output 其中 output i 等於 nums 中除 nums i 之外其餘各元素的乘積。示例 輸入 1,2,3,4 輸出 24,12,8,6 說明 請不要使用除法,且在 o n 時間複雜度內完成此題。解題思路 拿到題...
238 除自身以外陣列的乘積
給定長度為 n 的整數陣列 nums,其中 n 1,返回輸出陣列 output 其中 output i 等於 nums 中除 nums i 之外其餘各元素的乘積。示例 輸入 1,2,3,4 輸出 24,12,8,6 高階 你可以在常數空間複雜度內完成這個題目嗎?出於對空間複雜度分析的目的,輸出陣列不...
238 除自身以外陣列的乘積
給定長度為 n 的整數陣列 nums,其中 n 1,返回輸出陣列 output 其中 output i 等於 nums 中除 nums i 之外其餘各元素的乘積。示例 輸入 1,2,3,4 輸出 24,12,8,6 說明 請不要使用除法,且在 o n 時間複雜度內完成此題。分析 如果引入乙個o n ...