스택(Stack)
큐(Queue)
🔎 참고자료
잔재미코딩 대표적인 자료구조: 스택
wikipedia 스택
스택은 데이터를 임시 저장할 때 사용하는 자료구조이며 데이터 입/출력 순서는 가장 나중에 넣은 데이터를 가장 먼저 꺼내는 LIFO(Last In First Out)구조이다.
📒 주요 기능
📒 용어 : 위치
📒 입력 및 출력 순서
📑 장점과 단점
장점 | 단점 |
---|---|
1. 구조 단순 & 구현 쉬움 | 1. 데이터 최대 갯수(스택의 크기)를 정해야함 |
2. 데이터 저장 및 읽기 속도 빠름 | 2. 저장 공간의 낭비 발생 |
🔎 참고자료
위드코딩 파이썬 예외처리 사용법 정리(Python Exception)
wikidocs 05-4 예외처리
python 3.10.1 문서 내장 예외
아무튼 워라밸 파이썬 예외처리 쉽게 이해하기
파이썬에서 프로그램을 실행하다 보면 오류가 발생하게 된다. 이러한 경우 예외 처리(Exception Handling)을 하게 되면 오류를 복구하여 프로그램이 실행되다가 중단되는 것을 피할 수 있게 도와준다.
즉, 예상치 못한 오류를 잡기 좋다.
# 예외 처리문
try:
원래처리 ▶ 오류가 발생할 것 같은 코드
except:
예외 포착과 처리 ▶ 오류가 발생하면 실행
else:
예외 포착 없음 ▶ 예외 발생 없음
finally:
마무리 ▶ 예외 상관없이 무조건 실행
🔎 참고자료
위드코딩 파이썬 예외처리 사용법 정리(Python Exception)
wikidocs 05-4 예외처리 오류 일부러 발생시키기
raise문(raise statement)은 프로그램의 예외 처리를 강제로 발생시킨다.
🔎 참고자료
정보통신기술용어해설 Queue
정보통신기술용허해성 FIFO
잔재미코딩 대표적인 자료구조: 큐
wikipedia 큐
스택과 같이 데이터를 임시 저장하는 구조이지만 가장 먼저 넣은 데이터를 가장 먼저 꺼내는 FIFO(Firtst In Firtst Out)구조를 가진다.
📒 주요 기능
📒 용어 : 위치
📒 입력 및 출력 순서
인큐할 때는 데이터에 우선순위를 부여하여 추가하고, 디큐할 때 우선순위가 가장 높은 데이터를 꺼내는 방식이다.
디큐를 할 때 배열 안의 원소가 이동하지 안게 구현하는 것을 링 버퍼라고 한다.
원소 이동 없이 front와 rear의 값을 업데이트 하는 것만으로 인규와 디큐를 수행할 수 있다.
🔎 참고자료
Leon Pyton-데크(deque) 언제, 왜 사용해야 하는가?
[Python]파이썬, 왜 리스트대신 큐/ 데크 deque 를 쓸까?
덱(deque: double-ended queue)은 맨 앞과 맨 끝 양쪽에서 데이터를 모두 삽입 또는 삭제할 수 있는 자료구조이다. 큐와 스택을 합친 형태라고 생각하면 된다.