(152) 최대 제품 부분 배열 (JS)

(152) 최대 제품 부분 배열

정수 배열 주어  nums, 최대 제품이 (적어도 하나 개의 번호를 포함) 어레이 내의 인접 서브 어레이를 찾는.

예 1 :

입력 : [2,3, -2,4] 
출력 : 6
설명 : [2,3]는 큰 생성물 (6)을 갖는다.

예 2 :

INPUT [-2,0, -1] 
출력 : 0 
설명 :.의 결과 때문에 [-2, -1]하지 않는 서브 어레이 인, 2 할 수없는 

질문의 의미 (숫자 배열 주어진있어서 긍정적 제외하고 영)의 최대 지속적인 제품 부분 배열의 항목을 찾아
다음과 같이 코드는 다음과 같습니다
/ * * 
 파라미터 :이 {번호 []}는 nums는 
 * @return는 {번호} 
 * / 
VAR은 maxProduct = 함수 합니다 (nums) { 
    송출 MX는 = nums [0 ] 
    Mn의 내버려 = nums [0 ] 
    송출 된 RES = nums [0 ] 
    
     (I = 송출 1; I는 nums.length를 <; I는 ++. ) {
 //          최대 : 최대 사전 배열 나는 제품 + 1 
//          분 : 제 i + 1 개 어레이 전에 최소 제품 
//          DP 개념 및 행 * 최대 값까지 최소 전류 상품 배열 항목 현재 항목 배열 현재 아이템을 비교하기 전에 * 항목과 끊임없이 최대를 갱신 
        송출 MX = 최대, 최소값 = ; Mn이 
        MX * = Math.max (Math.max (최소 nums [I] 상기 nums [I]) 최대 * nums [I]) 
        망간= Math.min (Math.min (최대 *의 nums [I] nums [I])의 분 * nums [I]); 
        입술 = Math.max (입술, MX); 
    } 
    반환 입술을; 
};

 

추천

출처www.cnblogs.com/xingguozhiming/p/11227947.html