티스토리 뷰

탐색이란?

많은 데이터 중에서 원하는 데이터를 찾는 과정

대표적인 그래프 탐색 알고리즘으로 DFS, BFS가 있는데 코딩테스트에서 자주 등장하는 유형

 

자료구조

스택 자료구조 ( = 선입후출)

stack = []

stack.append(5)
stack.append(2)
stack.append(3)
stack.append(7)
stack.pop()
stack.append(1)
stack.append(4)
stack.pop()

print(stack) # 5 2 3 1

 

 큐 자료구조 ( = 선입선출)

from collections import deque

queue = deque() # 리스트말고 덱 라이브러리 생성하기 위해

queue.append(5)
queue.append(2)
queue.append(3)
queue.append(7)
queue.popleft()
queue.append(1)
queue.append(4)
queue.popleft()

print(queue) # 3 7 1 4 (왼쪽에서 오른쪽으로 추가되므로 오른쪽 부터 읽은 것임)
queue.reverse() # 역순 바꾸기
print(queue) # 4 1 7 3

 

재귀 함수

자기 자신을 호출하는 함수

무한히 출력함 -> 문제풀이에서 사용할 때는 종료 조건을 반드시 명시하기

파이썬에서는 초과 메시지가 출력됨 

모든 재귀함수는 반복문을 이용해 동일한 기능을 구현할 수 있음

def recursive_function():
	print('재귀 함수를 호출합니다')
    recursive_function()
    
recursive_function()

'Python > 이코테' 카테고리의 다른 글

5-3. 음료수 얼려 먹기  (0) 2022.06.26
5-2. 탐색 알고리즘 DFS/BFS  (0) 2022.06.24
4-3. 게임개발  (0) 2022.06.22
4-2. 왕실의 나이트  (0) 2022.06.21
4-1. 아이디어를 코드로 바꾸는 구현  (0) 2022.06.20
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday