[스택]

스택은 다음과 같은 2가지 주요연산을 지원하는 요소의 컬렉션으로 사용되는 추상 자료형이다.

push():요소를 컬렉션에 추가한다.

pop():아직 제거되지 않은 가장 최근에 삽입된 요소를 제거한다.

Last in First Out 방식이다.

연결리스트를 이용해서 실제로 스택을 한번 구현해보자.

class Node:
	def __init__(self, item, nex):
		self.item = item
		self.next = next

class Stack:
		def __init__(self):
			self.last = None
		
		def push(self, item):
			self.last = Node(item, self.last)
		
		def pop(self):
			item = self.last.item
			self.last = self.last.next
			return item

1)[유효한 괄호]-하, 스택

괄호로 된 입력값이 올바른지 판별하라.

https://leetcode.com/problems/valid-parentheses/

2)[중복 문자 제거]-상, 스택

중복된 문자를 제외하고 사전식 순서로 나열하라.

https://leetcode.com/problems/remove-duplicate-letters/

3)[일일 온도]-중, 스택

매일의 화씨 온도(하) 리스트 T를 입력 받아서, 더 따뜻한 날씨를 위해서는 며칠을 더 기다려야 하는지를 출력하라.

https://leetcode.com/problems/daily-temperatures/