데이터를 처음부터 검색하는 알고리즘입니다.
단순하지만 비효율적이라는 단점이 있습니다.
순차 검색은 단방향으로 검색을 하기 때문에 선형 검색이라고 부르기도 합니다.
1) 데이터 배열을 N을 가리키기 위한 변수 I를 선언하고 0으로 초기화한다.
2) I < N이면 3단계를 수행하고, I == N이면 4단계를 수행한다.
3) N[I] == "5" 👉 4단계로 간다.
N[I] != "5" 👉 I를 하나 증가시키고 다시 비교한다.
5) I < N 👉 I번째 위치에서 원하는 데이터를 발견한다.
I == N 👉 원하는 데이터가 발견되지 않았다.
예시 코드)
public class SequentialSearch {
public static void main(String[] args) {
int[] dataArray = {4, 21, 2, 10, 11, 16, 5};
System.out.println("검색할 데이터를 입력하세요");
Scanner sc = new Scanner(System.in);
int search = Integer.parseInt(sc.nextLine().trim());
int result = sequentialSearch(dataArray, search);
if(result == -1) {
System.out.println("데이터를 찾지 못 했습니다");
} else {
System.out.println("result = " + result + "번째 입니다");
}
}
public static int sequentialSearch(int[] arr, int search) {
for (int i = 0; i < arr.length; i++) { //* 순서대로 비교하기!
if (arr[i] == search) { // * 비교할 데이터가 배열에 있으면 배열의 위치를 return!
return i; // * 없으면 -1을 return!
}
}
return -1;
}
}
결과)
검색할 데이터를 입력하세요
5
result = 6번째 입니다
참고 자료)
그림으로 정리한 자료구조와 알고리즘
https://www.yes24.com/Product/Goods/62600107
그림으로 정리한 알고리즘과 자료구조 - 예스24
그림과 표로 저절로 이해되는 알고리즘!알고리즘과 함께 익히는 IoT, 인공지능, 머신러닝, 딥러닝인공지능과 빅데이터 등 4차 산업혁명의 키워드가 되는 산업 기반이 모두 알고리즘 기반으로 돌
www.yes24.com
https://blog.hexabrain.net/245
알고리즘 2-1강. 탐색 알고리즘 - 순차 탐색(Sequential Search)
[탐색 알고리즘 강좌] 데이터를 찾아보자! 순차 탐색(Sequential Search) 이 강좌에서 알게될 '순차 탐색(Sequential Search)'는 바로 데이터가 모인 데이터 배열이 있으면 이 데이터 배열의 처음부터 끝까
blog.hexabrain.net
'개발자의 공부방 > 알고리즘' 카테고리의 다른 글
자료구조] 스택 Stack (0) | 2023.09.26 |
---|---|
알고리즘] 단어뒤집기 (0) | 2023.08.03 |
알고리즘] 대소문자 변경하기 (0) | 2023.08.03 |
알고리즘] 자료구조, 큐(Queue) (0) | 2021.11.12 |
자바 기초 & 알고리즘] 구구단 (0) | 2019.05.03 |