검색/탐색 알고리즘

1️⃣ 순차 검색(Sequential Search) / 선형 검색(Linear Search)

선형검색.gif

정의

순차 검색(순차 탐색) 또는 선형 검색(선형 탐색)은 배열의 처음부터 끝까지 하나씩 차례대로 원하는 값을 찾는 가장 기본적인 검색 알고리즘이다.

원하는 값을 찾을 때까지 또는 배열의 끝에 도달할 때까지 반복해서 각 요소를 확인한다.

핵심 개념 : 무조건 처음부터 끝까지 확인

특징

  1. 정렬 불필요 - 배열이 정렬되어 있지 않아도 사용 가능
  2. 구현 간단
  3. 무조건적 순회 - 모든 요소를 체계적으로 확인
  4. 작은 데이터셋에 적합 - 배열 크기가 작으면 빠름

시간복잡도

n : 배열의 크기

경우 복잡도 설명
최선(Best) O(1) 찾는 값이 배열의 첫 번째 위치에 있을 때
평균(Average) O(n) 찾는 값이 배열의 중간 어딘가에 있을 때
최악(Worst) O(n) 찾는 값이 배열의 마지막에 있거나 없을 때

장・단점

장점 단점
구현이 매우 간단함 O(n) 시간복잡도로 매우 비효율적
정렬되지 않은 배열에서도 사용 가능 데이터셋이 크면 성능 급격히 저하

활용 사례

  1. 정렬되지 않은 배열 검색 - 정렬이 필요 없으므로 즉시 검색 가능
  2. 작은 크기 배열 - 배열 크기가 10~100개 정도일 때 충분함