새소식

💻 Computer/🐘 Algorithm

[Data Structure] Stack

  • -
Stack이란 무엇인가

Stack 자료 구조란 LIFO(Last Input First Out) 마지막으로 들어온 데이터가 가장 먼저 나간다

 

들어올 때는 가장 위에 들어오고 나갈 때는 가장 위에 저장된 것이 나간다 

 

Python을 사용해 구현해보도록 하자

 

class Stack:
    def __init__(self) -> None:
        self.items = []
    
    def push(self, val):
        self.items.append(val)

    def pop(self):
        try:
            return self.items.pop()
        except IndexError:
            print("Stack empty")
    
    def top(self):
        try:
            return self.items[-1]
        except IndexError:
            print("Stack Empty")

    def __len__(self):
        return len(self.items)

 

값을 넣을때는 push() , Python의 append()를 사용한다

뺄 때는 pop() 끝에서 빼면 되므로 python의 pop()을 사용한다

top()은 가장 위에 있는 요소 출력

len()은 Stack의 길이를 알려준다

 

 

'💻 Computer > 🐘 Algorithm' 카테고리의 다른 글

13335 - c++  (2) 2023.05.29
백준 18080 - c++  (0) 2023.05.28
[Algorithm] MergeSort Algorithm  (1) 2022.09.25
[Algorithm] 백준 1929  (0) 2022.08.13
[Algorithm] 백준 2581 소수  (0) 2022.08.12
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.