[JAVA] 이진 탐색/이분 탐색
·
공부
이진 탐색(Binary Search)정렬된 배열에서 특정 값을 찾는 알고리즘탐색 범위를 절반씩 줄여 나가기 때문에 선형탐색에 비해 빠른 속도 보장시간 복잡도 O(logn) 상대적으로 매우 빠름이때 선형 탐색이란?- 배열(Array)이나 리스트(List)와 같은 데이터 구조에서 처음부터 끝까지 하나씩 값을 비교하면서 찾는 값을 찾을 때까지 탐색- 즉, 정렬되지 않은 상태에서 찾는 것으로 이진탐색과 다른점시간 복잡도 O(n)배열의 ‘중간 값’ 을 선택하여 찾고자 하는 값과 비교만약 중간 값이 찾고자 하는 값보다 크면 ‘배열 왼쪽 부분’에서 탐색을 진행중간 값이 찾고자 하는 값보다 작으면 ‘배열 오른쪽 부분’에서 탐색을 진행이 과정에서 찾고자 하는 값이 나올 때까지 반복이진탐색 과정정렬된 배열 array에서 ..