Introfor

[Algorithm] sequential Search 본문

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;
}

'Doing > C&C++' 카테고리의 다른 글

Recursion. 미로찾기  (0) 2020.07.28
[data_structure] Linked List  (0) 2020.07.26
[C++] Reference  (0) 2020.06.29
[C++] Pair, Vector STL  (0) 2020.06.29
요셉의 환형 문제  (0) 2017.10.10
Comments