본문 바로가기
Programming/Python

[ Python ] 파이썬 순차 탐색 문제 코드 | 순차 탐색 알고리즘 | 파이썬 알고리즘

by 코뮤(commu) 2021. 1. 7.
728x90
반응형

 

이 포스팅은 구름edu 의 파이썬으로 배우는 알고리즘 강의를 기반으로 코드를 작성했음을 밝힙니다.

edu.goorm.io/learn/lecture/22654/%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9C%BC%EB%A1%9C-%EB%B0%B0%EC%9A%B0%EB%8A%94-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EA%B8%B0%EC%B4%88

 

파이썬으로 배우는 알고리즘 기초 - 구름EDU

실행 가능한 파이썬 소스 코드로 실용적으로 배우는 알고리즘

edu.goorm.io

 

 

 

 

 

파이썬 순차탐색 문제

 

 

 

문제 : 어떤 수 x 가 n 개의 수로 구성된 리스트 S에 존재합니까?

 

해답 : x 가 존재하면 x의 인덱스가 출력되고, 존재하지 않으면 0이 출력된다.

 

파라미터 : 0보다 큰 정수 n , 리스트 S, 원소 x

 

입력 예시 : S = [0,8,12,5,36,9], n = 6(첫번째 인덱스 제외하면 5), x = 12

 

입력 사례에 대한 해답 : 위치 = 2

 

알고리즘 : 모든 S 에 대해 x의 인덱스를 찾아주는 단계별 절차

 

  - S 의 첫번째 원소(1번째 인덱스) 부터 시작하여 x를 찾을 때 까지 반복

 

  - 각 원소를 차례로 x와 비교

 

  - 만약 x를 찾으면 x의 인덱스를 리턴

 

  - x를 찾지 못하면 0 리턴

 

 

 

 

[ Code ]

 

def seq_search(n,S,x):
    location=0
    while(location <=n and S[location] !=x):
        location += 1
    if (location >n):
        location=0
    return location

S = [0,8,12,5,36,9]
x = 12

location=seq_search(len(S)-1,S,x)
print('위치 = ', location)

x=20
location = seq_search(len(S)-1, S, x)
print('위치 = ', location)

 

 

 

 

728x90
반응형