Python

[Python] 파이썬 스택 구현 예제(queue LifoQueue)

Let it out 2024. 5. 7. 07:48

queue 모듈 LifoQueue 클래스 사용해서 스택 구현 예제

 

queue 모듈에서 LifoQueue 클래스는 스택구조를 제공한다.

 

우선 스택 구현하기 전에 put, get, queue 에 대해 알아보자.

 

put, get, queue

put : 요소 삽입

get : 마지막 요소 삭제

queue : 현재 스택 요소들 출력

import queue #queue 모듈 임포트

stack = queue.LifoQueue(maxsize=100) # 스택 객체 생성, maxsize = 최대 용량

stack.put("1")   # char 문자를 하나씩 스택에 삽입
stack.put("2")   # char 문자를 하나씩 스택에 삽입
stack.put("3")   # char 문자를 하나씩 스택에 삽입

print(stack.get())  # 마지막 요소부터 삭제하면서 출력
print(stack.get())  # 마지막 요소부터 삭제하면서 출력

print(stack.queue)


결과

3 #삭제
2 #삭제
['1'] #남은 스택

 

 

 

LifoQueue 스택 예제

import queue #queue 모듈 임포트

stack = queue.LifoQueue(maxsize=100) # 스택 객체 생성, maxsize = 최대 용량

str = input("문자열 입력: ")
for char in str:
    stack.put(char)	 # char 문자를 하나씩 스택에 삽입

print("문자열 출력: ", end='') #end='' 적어줘서 줄바꿈 없이 출력
while not stack.empty(): # 스택이 공백상태가 아니라면
    print(stack.get(), end='')	# 마지막 요소부터 삭제하면서 출력

 

결과

문자열 입력: 1234
문자열 출력: 4321

 

반응형