본문 바로가기

알고리즘

이진 검색

public static boolean binarySearch(List<Integer> numbers, Integer value) {
if (numbers == null ||numbers.isEmpty()) {
return false;
}

Integer comparison = numbers.get(numbers.size() /2);

if (value.equals(comparison)) {
return true;
}

if (value < comparison) {
return binarySearch(numbers.subList(0, numbers.size() / 2), value);
} else {
return binarySearch(numbers.subList(numbers.size() /2 + 1, numbers.size()), value);
}
}

 

 

 

'알고리즘' 카테고리의 다른 글

병합정렬 알고리즘  (0) 2017.11.15
퀵 정렬 알고리즘  (0) 2017.11.15
퀵 정렬 알고리즘  (0) 2017.11.15
삽입 정렬 알고리즘  (0) 2017.11.15
버블정렬 알고리즘  (0) 2017.11.15