Doing/C&C++
[Algorithm] sequential Search
YongArtist
2020. 7. 1. 16:28
여러 블로그에서 반복문으로 작성된 코드들만 있어서 공부할 겸 직접 코드를 작성해보았다.
순차 탐색은 한 배열이 주어졌을 때, 거기서 원하는 키값이 존재하는지 찾는 알고리즘이다. 단순 알고리즘으로 사용에는 편리하나 효율적이지 못한 알고리즘이다.
5 | 4 | 2 | 7 | 0 | 2 | 3 | 9 |
위에서 이런 식으로 배열이 존재할 때, 이 배열에 key = 2가 존재하는지 확인하기 위해 index = 0인 배열의 값 것부터 순차적으로 key 값과 비교해서 찾는 방식입니다.
#include <iostream>
void sequentialSearch(int arr[], int key, int index, int length){
if(index>=length){
printf("없음");
return;
}
if(arr[index]==key){
printf("key value locate on %d", index+1);
return;
}
else
sequentialSearch(arr,key,index+1, length);
}
int main(){
int key = 0;
int index = 0;
int arr[] = {5, 4, 2, 7, 0, 2, 3, 9};
int length = sizeof(arr)/sizeof(int);
scanf("%d",&key);
sequentialSearch(arr, key, index, length);
return 0;
}