-
[파이썬 기초] 알고리즘의 개념 / 코딩 연습 - 예제2(선형 탐색 알고리즘)프로그래밍 2021. 3. 5. 08:32반응형
# 선형 탐색 알고리즘(linear search algorithm) : 리스트의 처음부터 끝까지 순서대로 하나씩 탐색을 진행하는 알고리즘
코드잇 예제풀이(선형탐색 알고리즘 문제) : 파라미터로 탐색할 값 element와 리스트 some_list를 받는 함수 linear_search를 정의하여 그 위치(인덱스) 혹은 None을 리턴
Hint 1 : For 반복문을 사용 및 반복문 사용할 범위 설정
→ 어느 범위까지 반복문을 돌 것인가 : 리스트 내 원소의 개수만큼 반복 : 리스트 내 원소의 개수 = len(some_list)Hint 2 : For 반복문 내에서 element와 맞는 리스트 내 원소를 발견하면 그 원소를 리턴
→ 리스트 내 원소 = some_list[i] , 리턴할 원소 : i
Hint 3 : For 반복문을 다 돌았는데 일치하는 원소를 발견하지 못한 경우
→ For 반복문 밖에다 리턴
==========================================================
def linear_search(element, some_list):
for i in range(len(some_list)): ----------- Hint 1
if some_list[i] == element: ----------- Hint 2
return i
return None ----------- Hint 3
print(linear_search(2, [2, 3, 5, 7, 11]))
print(linear_search(0, [2, 3, 5, 7, 11]))
print(linear_search(5, [2, 3, 5, 7, 11]))
print(linear_search(3, [2, 3, 5, 7, 11]))
print(linear_search(11, [2, 3, 5, 7, 11]))
0
None
2
1
4
반응형'프로그래밍' 카테고리의 다른 글
[파이썬 기초] 알고리즘의 개념 / 코딩 연습 - 예제5(재귀함수 연습 - 삼각수) (0) 2021.03.23 [파이썬 기초] 알고리즘의 개념 / 코딩 연습 - 예제4(재귀함수 연습 - 피보나치 수열) (0) 2021.03.23 [파이썬 기초] 알고리즘의 개념 / 코딩 연습 - 재귀함수의 개념(카운트다운 함수, 팩토리얼 함수) (0) 2021.03.17 [파이썬 기초] 알고리즘의 개념 / 코딩 연습 - 예제3(이진 탐색 알고리즘) (0) 2021.03.09 [파이썬 기초] 알고리즘의 개념 / 코딩 연습 - 예제 1(팔린드롬) (0) 2021.03.03 댓글