[c++] 선형 검색
이번 글에서는 C++을 사용하여 선형 검색(Linear Search) 알고리즘에 대해 다뤄보겠습니다. 선형 검색은 간단한 검색 알고리즘으로, 순차적으로 요소를 검사하여 원하는 값을 찾는 방법입니다.
선형 검색 알고리즘
선형 검색 알고리즘의 동작 방식은 다음과 같습니다.
- 배열의 첫 번째 요소부터 시작하여 찾고자 하는 값을 찾을 때까지 각 요소를 순차적으로 검색합니다.
- 찾고자 하는 값을 발견하면 해당 요소의 인덱스를 반환하고, 찾지 못할 경우 -1을 반환합니다.
C++ 코드 예제
다음은 C++로 구현한 선형 검색 알고리즘의 간단한 예제 코드입니다.
#include <iostream>
using namespace std;
int linearSearch(int arr[], int n, int x) {
for(int i = 0; i < n; i++) {
if(arr[i] == x) {
return i; // 찾고자 하는 값의 인덱스 반환
}
}
return -1; // 값이 없을 경우 -1 반환
}
int main() {
int arr[] = {5, 7, 2, 8, 4};
int n = sizeof(arr) / sizeof(arr[0]);
int x = 8;
int result = linearSearch(arr, n, x);
if(result == -1) {
cout << "값을 찾을 수 없습니다.";
} else {
cout << "값은 인덱스 " << result << "에 있습니다.";
}
return 0;
}
마치며
이상으로 C++을 사용한 선형 검색 알고리즘에 대해 알아보았습니다. 선형 검색은 단순하지만 효율적인 알고리즘이며, 작은 규모의 배열에서 사용할 때 유용합니다. 복잡도가 O(n)인 알고리즘이기 때문에 큰 규모의 데이터에는 적합하지 않을 수 있습니다. C++을 활용하여 다양한 검색 알고리즘을 구현해보면 도움이 될 것입니다.
참고 자료:
문의사항이 있으시면 언제든지 물어보세요!