LeetCode-152-乘積最大子數(shù)組

題目描述:給你一個整數(shù)數(shù)組
nums
,請你找出數(shù)組中乘積最大的連續(xù)子數(shù)組(該子數(shù)組中至少包含一個數(shù)字),并返回該子數(shù)組所對應(yīng)的乘積。示例說明請見LeetCode官網(wǎng)。
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/maximum-product-subarray/ ??
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
解法一:窮舉法
首先,如果數(shù)組nums只有一個元素,直接返回這個數(shù)。
否則,通過窮舉出所有可能的連續(xù)子數(shù)組的乘積,然后獲取較大者,使用result記錄最大值,初始化為數(shù)組nums的第一個元素值,具體過如下:
從第一個元素開始遍歷,作為連續(xù)子數(shù)組的第一個元素;
然后內(nèi)層循環(huán)是作為連續(xù)子數(shù)組的最后一個數(shù)組,過程中需要判斷當(dāng)前的連續(xù)子數(shù)組的乘積是否大于result,如果是則更新result的值。
最后,返回result即為最大的乘積。
【每日寄語】 不滿是向上的車輪,能夠載著不自滿的人前進(jìn)。