1. 순차 탐색 (Sequential search)이란?
- 탐색은 여러 데이터 중에서 원하는 데이터를 찾아내는 것을 의미
- 데이터가 담겨있는 리스트를 앞에서부터 하나씩 비교해서 원하는 데이터를 찾는 방법
from random import *
rand_data_list = list()
for num in range(10):
rand_data_list.append(randint(1,100)) # 한번 호출 될때마다 하나의 수 랜덤 추가
rand_data_list
>> [71, 63, 75, 33, 6, 37, 81, 79, 3, 29]
1.1 순차 탐색 알고리즘
def sequenctial(data_list, search_data):
for i in range(len(data_list)):
if data_list[i] == search_data:
return i # 인덱스 번호 호출
return -1 # 데이터가 없다면?
2. 알고리즘 분석
최악의 경우 리스트 길이가 n일 때, n번 비교해야 함
- O(n)
'🕶 Algorithm > 알고리즘' 카테고리의 다른 글
너비 우선 탐색 (BFS, Breadth First Search) (0) | 2021.08.08 |
---|---|
이진 탐색 (Binary search) (0) | 2021.08.06 |
병합 정렬 (Merge sort) (0) | 2021.08.06 |
퀵정렬 (Quick sort) (0) | 2021.07.23 |
동적 계획법 (Dynamic Programming)과 분할 정복 (Divide and Conquer) (0) | 2021.07.23 |