문제

enter image description here

에서의 강조 표시된 부분은 아래 방법은 와이즈 결론에서 시작하는 배열 임의의 색인"p"에서 끝나는"j"수는 없보다 큰 배열의 시작에서"내가"그리고 끝에"p-1"?

enter image description here

자신의 예에 의해(내부 루프의 알고리즘 2 은 아래와 같이)이것은 명백히 거짓입니다.

Algorithm 2

Let i=0,j=3.

자[0]=-14,a[1]=-4a[2]=-2a[3]=-1.

는 경우 p=2,시퀀스에서 합계"p"to"j"가 명확하게 보다 더 큰"i"to"p-1"입니다.

더 많은 관 씨Weiss 인을 끌어당기는 가정은 허공("j 인덱스의 첫 번째 원인이 되는 시퀸스 인덱스가 부정적인")아무것도 위에서 가능성을 의미!실제로,Weiss 만을 언급"검색"의 서브 합는 부정적인 사이 지수는"i"와"j",그러나 결코 원본의 이름이 발생합니다.이것은 어디에서?

어떤 도움을 주셔서 감사합니다!

도움이 되었습니까?

해결책

나는 당신이에 대해 혼동하는 알고리즘은 그는 것을 설명하고 있습니다.그의 설명을 위해 하지 않는 알고리즘 2 지만 알고리즘 4,는 상상 속의 인덱스 i 에 reintroduced.

게 이것을 쓰는 알고리즘으로 이 지수는 그것을 명확하게 당신이:

maxSubSum(array a):
  maxSum = 0, thisSum = 0;
  i = 0;
  for j going from 0 to length(a)-1:
    thisSum += a[j];
    if thisSum > maxSum:
      maxSum = thisSum;
    else if thisSum < 0:
      i = j+1;
      thisSum = 0;
   return maxSum;

지금 당신은 당신이 볼 수있는에서 이 알고리즘,언제 thisSum < 0,다음 j 실제로"인덱스의 첫 번째 원인이 되는 시퀸스 인덱스 i 가 부정적인",그리고 나머지는 주장을 다음과 같습니다.고지에서는 특정한 예게 발생할 수 없습니다 이 알고리즘은(당신은 없을 것입니다 i=0j=3 이 경우).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 cs.stackexchange
scroll top