最大乘積

這是拼多多的一道筆試題 給定一個無序數組,包含正數、負數和0,要求從中找出3個數的乘積,使得乘積最大,要求時間複雜度:O(n),空間複雜度:O(1) 。 我們分析一下:有兩種情況可能是最大結果。 1>兩個負數與與一個正數相乘。 2>3個全爲最大正數。 想法是:我們遍歷一遍數組,每次進行比較把數組中最大的三個數和最小的兩個數取出來,輸出最大乘積。
相關文章
相關標籤/搜索