본문 바로가기

알고리즘_개념 및 문제풀이

BinarySearch 의 패턴화

반응형

패턴화? -> 어떤 Template(패턴)을 만들어서 binarySearch 로직이 필요한 모든 문제들에 이 패턴을 적용하자. 아래 1,2,3 부분과 right, left 가 어떻게 할당되는지, while 에 left < right  에서 equal 은 빠지는 포인트 등을 기억해두고, 템플릿화 하자. 

  1. left,  right 의 값은 답이 될 수 있는 범위를 포함한다! 즉, 답이 n 이 될 수 있으면, right = n으로 선언해준다.
  2. isBadVersion 은 조건을 의미한다. 즉, condition이다. 
  3. return 해주는 left 는 2번 조건(condition)을 만족하는 가장 작은 값을 말한다 

문제에서 1~n 의 넘버에서 최초로 불량이 나오는 k 값을 찾는 것인데, 이때 left를 리턴해주면 된다. 

 

 

반응형