亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Leetcode 152. Maximum Product Subarray

2019-11-11 04:07:10
字體:
來源:轉載
供稿:網友

Find the contiguous subarray within an array (containing at least one number) which has the largest PRoduct.

For example, given the array [2,3,-2,4], the contiguous subarray [2,3] has the largest product = 6.

s思路: 1. 先假設一些理想情況,當都是正數,最大積就是全部數相乘;如果有偶數個負數,也是全部相乘;如果有奇數個負數,那就要比較大小了,例如:nums=[-5,2,3,2-2,-4,2],就需要比較最左邊的負數與它之前的正數之積,即:-5,和最右邊的負數與它之后的正數之積,即:-4*2=-8,誰絕對值大,就那一邊。這里就是:-5之后的所有數相乘即是最大積。 2. 目前為止,我們只討論了正負數,還沒有討論0的情況。如果含有0,如何處理呢?想了一下,0的作用就是把這個序列分割成左右兩個array。所以,需要分別按照上面的方法求最大值,然后比較選出較大的最大值即可! 3. 也就是說,這個題有o(n)的解法,因為每個數最多訪問一次即可! 4. 上面的方法是可行,但寫起來很復雜,也不好理解。我們換一個角度重新思考。從左往右遍歷,我們計算包含當前正在遍歷的數的最大乘積和最小乘積,為什么要最小值呢?因為最小值,如果是負數,那么乘以一個負數,就是最大值了。但這個最小值和最大值每次和當前的數相乘是注意,如果當前數是正數,就是最大值乘以當前值仍然是最大值,最小值乘以當前值仍是最小值;如果當前值是負數,那么最大值就是之前的最小值乘這個負數,最小值就是之前的最大值乘這個負數;這還沒完,關鍵的一步是:得到最大最小值,還需要檢查是否最大最小,如果當前的遍歷的數比最大值還大或比最小值還小,那么就要更新最大值和最小值了,保證是最大值。 5. 上面的思路就是DP思路,就是一路記錄包含當前遍歷的數的最大乘積和最小乘積,然后取最大乘積的最大值即可!

num -5 2 3 -2 -4 2
curmx -5 2 6 60 48 96
curmn -5 -10 -30 -12 -240 -480

6.問題來了,為什么這個方法比之前枚舉各種可能性的簡潔,而且好理解呢?這個方法是后面想到的,自己也想過要找最大值、最小值,但是沒定義清楚,比如:我們最后需要的最大最小值是包含當前num[i]的最大最小值,而不是從左往右一直乘的最大最小值。這兩者的區別是,前者在每次最大最小值,同時考慮了當前值是否比從左往右迭代過來的值還大或還小,由于每次算最大最小值,都考慮了這個信息,所以可以一直保證得到包含目前num[i]的最大最小值。而這個最大值的最大值即使所求! 7. 之前想的第一種方法,只考慮了現象,試圖用代碼去模擬這個現象,還沒抓住本質,因此深入不夠,沒有一個抽象的點在里面。而后面的方法,就是求包含num[i]的最大最小值,這就是把一個大的目標分割成小的目標,然后我們一直在這個小目標用功,大的目標也就得到了!本質是問題的分割,由于問題可以分割,所以必然是dp.

class Solution {public: int maxProduct(vector<int>& nums) { // int n=nums.size(); int curmx=nums[0]; int curmn=nums[0]; int res=nums[0]; for(int i=1;i<nums.size();i++){ if(nums[i]>0){ curmx*=nums[i]; curmn*=nums[i]; }else{ int tmp=curmx; curmx=curmn*nums[i]; curmn=tmp*nums[i]; } curmx=nums[i]>curmx?nums[i]:curmx; curmn=nums[i]<curmn?nums[i]:curmn; res=max(res,curmx); } return res; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品一区二区久| 久久国产精品99国产精| 亚洲男人天堂网站| 欧美韩国理论所午夜片917电影| 欧美视频免费在线观看| 成人精品一区二区三区电影黑人| 亚洲一区二区久久久久久| 欧美日韩国产丝袜美女| 日韩欧美亚洲范冰冰与中字| 不用播放器成人网| 性欧美暴力猛交69hd| 欧美日韩国产在线播放| 91亚洲午夜在线| 久久久久国产视频| 精品国偷自产在线视频99| 国语自产偷拍精品视频偷| 热re91久久精品国99热蜜臀| 97免费视频在线播放| 亚洲午夜精品久久久久久久久久久久| 在线看福利67194| 中文字幕无线精品亚洲乱码一区| 91av在线视频观看| 欧美乱大交xxxxx另类电影| 91精品国产综合久久久久久久久| 热久久免费视频精品| 亚洲加勒比久久88色综合| 成人福利免费观看| 久久青草精品视频免费观看| 日韩av大片在线| 91豆花精品一区| 亚洲国产中文字幕在线观看| 欧美中文在线免费| 98精品国产高清在线xxxx天堂| 欧美日韩福利在线观看| 91成人福利在线| 狠狠做深爱婷婷久久综合一区| 亚洲欧美日韩国产精品| 国产精品狼人色视频一区| 中国人与牲禽动交精品| 亚洲码在线观看| 91久热免费在线视频| 不卡av日日日| 中文字幕欧美亚洲| 成人免费自拍视频| 久久久国产精品亚洲一区| 国产91色在线|免| 国产精品日本精品| 国自在线精品视频| 一区二区三区高清国产| 亚洲图片在线综合| 久久综合伊人77777尤物| 国产视频久久久| 欧美日韩激情美女| 清纯唯美亚洲综合| 欧美日韩在线一区| 亚洲一区中文字幕在线观看| 国产精品直播网红| 亚洲天堂成人在线| 国产精品福利网| 久久久久久高潮国产精品视| 日韩在线视频导航| 亚洲精品99999| 久久青草福利网站| 中文字幕自拍vr一区二区三区| 国产97色在线|日韩| 欧美性猛交xxxx免费看漫画| 亚洲精品视频中文字幕| 中文字幕在线看视频国产欧美在线看完整| 中文字幕欧美精品在线| 91豆花精品一区| 国产精品扒开腿爽爽爽视频| 视频在线观看99| 97色在线视频| 欧美激情成人在线视频| 国产精品国产亚洲伊人久久| 欧美在线观看网站| 456亚洲影院| 亚洲第一偷拍网| 国产精品一区二区性色av| 久久久噜久噜久久综合| 富二代精品短视频| 国产精品91久久| 国产精品一区二区av影院萌芽| 国外日韩电影在线观看| 九九热最新视频//这里只有精品| 尤物九九久久国产精品的分类| 欧美自拍视频在线| 日韩激情av在线播放| 亚洲国产精品字幕| 777国产偷窥盗摄精品视频| 最新69国产成人精品视频免费| 亚洲精品免费一区二区三区| 亚洲精品视频播放| 亚洲女人天堂成人av在线| 激情懂色av一区av二区av| 午夜精品久久久久久99热| 亚洲天堂日韩电影| 欧美丝袜第一区| 国内精品中文字幕| 性欧美在线看片a免费观看| 国产色综合天天综合网| 成人免费高清完整版在线观看| 久久久女人电视剧免费播放下载| 97精品久久久中文字幕免费| 国产日韩在线亚洲字幕中文| 成人av资源在线播放| 日韩在线一区二区三区免费视频| 欧美日韩另类字幕中文| 国产亚洲精品成人av久久ww| 欧美在线激情网| 黄色一区二区三区| 亚洲精品国精品久久99热| 98精品国产自产在线观看| 亚洲美女福利视频网站| 亚洲乱码一区二区| 三级精品视频久久久久| 国产精品极品美女粉嫩高清在线| 亚洲自拍偷拍色图| 亚洲成色777777在线观看影院| 精品国产精品三级精品av网址| 欧美在线视频一区二区| 欧美午夜无遮挡| 亚洲精品按摩视频| 欧美激情国产日韩精品一区18| 欧美老女人www| 久久精品久久久久电影| 夜夜嗨av色综合久久久综合网| 久久色免费在线视频| 青青在线视频一区二区三区| 成人国产精品免费视频| 国产精品网站入口| 57pao精品| 欧美黄网免费在线观看| 亚洲a成v人在线观看| 欧美日在线观看| 欧美激情视频一区| 亚洲国产精品成人一区二区| 日韩欧美国产高清91| 欧美日韩美女视频| 中文字幕欧美在线| 美女扒开尿口让男人操亚洲视频网站| 亚洲午夜小视频| 亚洲综合最新在线| 久久免费观看视频| 色偷偷偷综合中文字幕;dd| 欧美另类69精品久久久久9999| 亚洲黄色www网站| 日韩av在线免费看| 国产精品视频久久久| 国产亚洲精品日韩| 亚洲第一区第二区| 国产精品偷伦视频免费观看国产| 欧美精品制服第一页| 欧美国产精品日韩| 日韩精品在线视频观看| 国产美女被下药99| 国产自产女人91一区在线观看| 中文字幕免费精品一区| 国产精品高潮呻吟视频| 欧美日韩国产一区二区三区| 国产91精品久久久| 欧洲亚洲在线视频| 欧美小视频在线| 欧美日在线观看|