탐색
: 많은 양의 데이터 중 원하는 데이터를 찾는 과정.
대표적인 탐색 알고리즘에는 DFS, BFS가 있다.
자료구조 : 데이터를 표현하고 관리하고 처리하기 위한 구조
1. 스택
선입 후출, 후입 선출 First In Last Out
가장 나중에 들어간 것이 가장 먼저 나오는 것.
2. 큐
선입 선출 First In First Out
가장 나중에 들어간 것이 가장 나중에 나오는 것.
공정한 자료구조
자료구조를 사용할 때는 오버플로와 언더플로를 고려해야 한다.
오버플로는 자료구조의 수용 용량을 넘어섰는데 데이터를 삽입할 때 발생하고
언더플로는 자료구조가 비어있는데 데이터를 삭제할 때 발생한다.
#파이썬에서 큐를 사용할 때는 deque 자료구조를 활용하자!!
deque는 스택과 큐의 장점을 모두 갖고 있다.
리스트에 비해 데이터를 넣고 빼는 속도가 빠르고
queue 라이브러리보다 이용이 간단하다.
재귀함수
: 자기자신을 다시 호출하는 함수.
재귀함수를 문제 풀이에 사용할 때는 종료 조건을 꼭! 명시해야 한다.
컴퓨터 내부에서 재귀함수 수행은 스택을 이용한다.
반복문 대신에 재귀함수를 사용했을 때 코드가 간결하다는 장점이 있다.
#보통 파이썬 인터프리터는 호출 횟수 제한이 있기 때문에 무한대로 재귀 호출이 불가능하다.
이것이 취업을 위한 코딩 테스트다 with 파이썬 124p-133p
728x90
'Team' 카테고리의 다른 글
[공주는 코딩하고 싶어] 7회차. 정렬 (0) | 2021.01.27 |
---|---|
[공주는 코딩하고 싶어] 6회차. DFS/BFS (0) | 2021.01.22 |
[공주는 코딩하고 싶어] 4회차. 발표 (0) | 2021.01.17 |
[공주는 코딩하고 싶어] 3회차.구현 유형 알고리즘 (0) | 2021.01.14 |
[공주는 코딩하고 싶어] 2회차. 그리디 알고리즘 (Greedy) (0) | 2021.01.08 |
댓글