이진 검색은 O(lg n)시간복잡도를 가진다
int search (int [] nums, int target) {
int left = 0;
int right = nums.length - 1;
//인덱스 설정
while (left <= right) {
//index가 서로 지나가면 찾지 못했다는 뜻
int pivot = (left + right) / 2
//pivot식 설정
if (nums[pivot] == target) {
return pivot;
//찾는 값을 찾았으면 현재 pivot 리턴
} else if (nums[pivot] < target) {
//pivot안의 보다 찾는 값이 크면
left = pivot + 1;
//왼쪽 index를 pivot의 오른쪽으로 변경
} else {
//pivot안의 값보다 찾는 값이 작으면
right = pivot - 1;
//오른쪽 index를 pivot의 왼쪽으로 변경
}
}
}