이진 탐색 (Binary Search)
정의: 정렬된 배열에서 특정 요소를 찾는 알고리즘으로, 중앙값을 기준으로 배열을 반씩 줄여가며 탐색하는 방식을 채택함.
자바 예제코드:
public class BinarySearch {
public static int binarySearch(int[] arr, int target) {
int left = 0;
int right = arr.length - 1;
while (left <= right) {
int mid = left + (right - left) / 2;
if (arr[mid] == target)
return mid;
if (arr[mid] < target)
left = mid + 1;
else
right = mid - 1;
}
return -1;
}
public static void main(String[] args) {
int[] arr = {2, 3, 4, 10, 40};
int target = 10;
int result = binarySearch(arr, target);
if (result == -1)
System.out.println("Element not present");
else
System.out.println("Element found at index " + result);
}
}'개인 블로그' 카테고리의 다른 글
| [각코 6주차 개인 블로그] 트리, 해싱 (0) | 2024.02.09 |
|---|---|
| [모각코 5주차 개인 블로그] 스택,큐,덱 (0) | 2024.02.09 |
| [모각코 3주차 개인블로그] 정렬 (0) | 2024.02.09 |
| [모각코 2주차 개인 블로그] 배열과 연결리스트 (0) | 2024.02.09 |
| [모각코 1주차 개인 블로그] JAVA 기본 문법 복습 (1) | 2024.01.10 |