더북(TheBook)

멤버 containerlist 객체를 생성하여 할당하고(#1), 스택의 push를 리스트의 append(#2), 스택의 pop을 리스트의 pop으로 쉽게 구현합니다(#3). 또한 peek() 메서드를 구현할 때는 인덱스 -1로 리스트의 마지막 요소에 접근해 반환합니다(#4).

테스트 코드를 작성하여 잘 작동하는지 확인해 봅시다.

코드 12-13 stack.py ②

if __name__ = = "__main__":
    s = Stack()
    s.push(1)
    s.push(2)
    s.push(3)
    s.push(4)
    s.push(5)

    while not s.empty():
        data = s.pop()
        print(data, end = ' ')

실행결과 5 4 3 2 1


1, 2, 3, 4, 5의 순서로 푸시했으므로 팝할 때는 맨 마지막에 추가한 5부터 차례대로 5, 4, 3, 2, 1을 가져옵니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.