1. 이진 탐색이란 정렬된 데이터로부터 효과적으로 타겟을 찾을 수 있는 알고리즘입니다. 탐색할 자료를 둘로 나누어 찾는 데이터가 있는지 없는지 확인하기 때문에, 데이터가 정렬되어 있을 때 순차 탐색 sequential search보다 훨씬 빠르게 찾을 수 있습니다. 특정 범위 내에서 숫자를 추측하는 guessing game등을 할 때 필승할 수 있는 방법입니다. 이진 탐색은 분할 정복 알고리즘의 일종이기도 합니다. 1부터 71까지 랜덤하게 존재하는 숫자 배열로부터 7을 찾는 제일 효율적인 방법으로 시각화하면 아래 그림과 같습니다. 분할 정복 알고리즘 divide and conquer이란, 문제를 하나 또는 둘 이상으로 나누어 문제를 해결하는 알고리즘입니다. 나눠진 문제가 충분히 작은 상태에서 해결이 가능..
[알고리즘] 이진 탐색 Binary search
1. 이진 탐색이란 정렬된 데이터로부터 효과적으로 타겟을 찾을 수 있는 알고리즘입니다. 탐색할 자료를 둘로 나누어 찾는 데이터가 있는지 없는지 확인하기 때문에, 데이터가 정렬되어 있을 때 순차 탐색 sequential search보다 훨씬 빠르게 찾을 수 있습니다. 특정 범위 내에서 숫자를 추측하는 guessing game등을 할 때 필승할 수 있는 방법입니다. 이진 탐색은 분할 정복 알고리즘의 일종이기도 합니다. 1부터 71까지 랜덤하게 존재하는 숫자 배열로부터 7을 찾는 제일 효율적인 방법으로 시각화하면 아래 그림과 같습니다. 분할 정복 알고리즘 divide and conquer이란, 문제를 하나 또는 둘 이상으로 나누어 문제를 해결하는 알고리즘입니다. 나눠진 문제가 충분히 작은 상태에서 해결이 가능..
2022.09.07