題目描述
給你一個整數(shù)數(shù)組nums,請計算數(shù)組的中心位置。數(shù)組的中心位置是數(shù)組的一個下標(biāo), 其左側(cè)所有元素相乘的積等于右側(cè)所有元素相乘的積。數(shù)組第一個元素的左側(cè)積為1,最后一個元素的右側(cè)積為1。 如果數(shù)組有多個中心位置,應(yīng)該返回最靠近左邊的那一個,如果數(shù)組不存在中心位置,返回-1。
輸入
2 5 3 6 5 6
輸出
3
題意解讀
左側(cè)積:該元素左側(cè)所有元素的乘積;
右側(cè)積:該元素右側(cè)所有元素的乘積;
例如元素3,他的左側(cè)積是 2*5 = 10
. 他的右側(cè)積是6*5*6 = 180
數(shù)組的中心位置指的是:該元素的 左側(cè)積 等于 右側(cè)積
解題思路
遍歷整個數(shù)組,在遍歷的過程中,計算當(dāng)前元素左側(cè)所有元素的乘積(leftProduct
)和右側(cè)所有元素乘積(rightProduct
),當(dāng)leftProduct == rightProduct
,表示找到了中心位置。文章來源:http://www.zghlxwxcb.cn/news/detail-634828.html
那么,如何初始化左側(cè)積文章來源地址http://www.zghlxwxcb.cn/news/detail-634828.html
到了這里,關(guān)于2023華為OD機試真題【計算數(shù)組中心位置】【Java Python】的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!