728x90
반응형
이 포스팅은 구름edu 의 파이썬으로 배우는 알고리즘 강의를 기반으로 코드를 작성했음을 밝힙니다.
파이썬 순차탐색 문제
문제 : 어떤 수 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
반응형
'Programming > Python' 카테고리의 다른 글
[ Python ] 파이썬 행렬의 곱셈 코드 | 파이썬 정방행렬 곱셈 (0) | 2021.01.07 |
---|---|
[ Python ] 파이썬 교환정렬 코드 | 파이썬에서 swap 하기 (0) | 2021.01.07 |
[ Python ] 백준 10817번 세 수 풀이 (0) | 2020.12.29 |
[ Python ] 백준 9498번 시험성적 풀이 (0) | 2020.12.29 |
[ Python ] 백준 2935번 소음 풀이 (0) | 2020.12.29 |