🔻Extracurricular Activity/컴프1(Python) 튜터링 자료
[6주차] 스택, 큐, 순열
_니지
2022. 5. 20. 10:54
❗스택
1. 스택(stack)
후입선출(Last In First Out, LIFO) 구조를 가진 자료구조
2. 파이썬에서의 스택
파이썬에서는 내장모듈에 스택 라이브러리가 따로 존재하지 않기 때문에 리스트로 만들어준다.
push(append): 스택의 뒤에 원소를 삽입
pop: 스택의 뒤에서 원소 하나를 삭제해줌
top: 스택의 맨 뒤 원소를 반환해줌
empty: 스택이 비었는지 아닌지 확인해줌
3. 스택 관련 함수
# 스택 초기화
s = []
#스택 push
s.append(1)
s.append(2)
s.append(3)
print(s)
#스택 pop
top = s.pop()
print(top)
#스택 top
top = s[-1]
print(top)
#스택 empty
if not s:
print("stack is empty")
else:
print("stack is not empty")
❗큐
1. 큐(queue)
선입선출(First In First Out, FIFO) 구조를 가진 자료구조
2. 파이썬에서의 큐
파이썬에서는 내장모듈에 큐 라이브러리가 따로 존재하지 않기 때문에 리스트로 만들어준다.
push(append): 큐의 뒤에서 원소를 삽입
pop(0): 큐의 0번째 인덱스에서 원소를 삭제해줌
front: 큐의 맨 앞 원소를 반환해줌
empty: 큐가 비었는지 아닌지 확인해줌
3. 큐 관련 함수
# 큐 초기화
q = []
#큐 push
q.append(1)
q.append(2)
q.append(3)
print(q)
#큐 pop
front = q.pop(0)
print(front)
#큐 top
front = q[0]
print(front)
#큐 empty
if not q:
print("queue is empty")
else:
print("queue is not empty")
❗순열
1. 순열
순서가 있는 n개에 대해서 이를 나열할 수 있는 연산
2. 순열 예
[1, 2, 3]
- 1 2 3
- 1 3 2
- 2 1 3
- 2 3 1
- 3 1 2
- 3 2 1
3. 순열 구현 방법
- 재귀함수
- itertools 모듈의 permutations 함수
728x90
반응형