JMBook에서 반복문불변식에 대한 질문입니다~ cdragon 안녕하세요~ 알고리즘을 잘해보구 싶어서 종만님의 JMBook을 구독해서 열심히 읽고있는 애독자입니다~ 정말 좋은 책 감사드려요 ^^ 다름이 아니구 반복문불변식 부분을 읽다보니, 궁금한점이 생겨서요.. 이진탐색과 반복문불변식 부분에서, 만약 이진탐색코드가 다음과 같이 되어있다면, 반복문불변식은 어떻게 세워야 할까요? bool bFind = false; while (lo < hi) { int mid = (lo+hi)/2; if (A[mid] == x) { bFind = true; break; } else if (A[mid] < x) { lo = mid; } else { hi = mid; } } if (bFind == true) { return mid; } else { return -1; } 11년 전
1개의 댓글이 있습니다. JongMan A[lo] < x < A[hi] 가 아닐까요? 따라서 반복문 진입 전에 lo나 hi가 x와 같은지 확인하셔야겠죠. 이게 번거로우시면 A[lo] <= x < A[hi] 같은 불변식을 유지하시면 되고요. ^^ 11년 전 link 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
cdragon
안녕하세요~ 알고리즘을 잘해보구 싶어서 종만님의 JMBook을 구독해서 열심히 읽고있는 애독자입니다~ 정말 좋은 책 감사드려요 ^^
다름이 아니구 반복문불변식 부분을 읽다보니, 궁금한점이 생겨서요..
이진탐색과 반복문불변식 부분에서, 만약 이진탐색코드가 다음과 같이 되어있다면,
반복문불변식은 어떻게 세워야 할까요?
11년 전