250x250
반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- login crawling
- Airflow
- correlation
- BigQuery
- UDF
- spark udf
- flask
- 유튜브 API
- GCP
- top_k
- API
- 상관관계
- grad-cam
- airflow subdag
- session 유지
- API Gateway
- 공분산
- youtube data
- requests
- Counterfactual Explanations
- chatGPT
- integrated gradient
- TensorFlow
- tensorflow text
- gather_nd
- hadoop
- subdag
- XAI
- Retry
- GenericGBQException
Archives
- Today
- Total
데이터과학 삼학년
스택, 큐 본문
반응형
스택
LIFO(Last In First Out)
나중에 들어온 녀석이 먼저 나가는 구조
OS에서 함수내에 잠깐 쓰이는 변수(휘발성)는 스택으로 처리됨
파이썬으로 stack 구현
class Stack:
def __init__(self):
self.stack = []
def pop(self):
pop_value = self.stack[-1]
self.stack = self.stack[:-1]
return pop_value
def push(self,value):
self.stack.append(value)
def is_empty(self):
if len(self.stack) ==0:
return True
else :
return False
def check(self):
return self.stack
큐
FIFO(First In First Out)
먼저 들어간 녀석이 먼저 나오는 것으로 일반적으로 줄을 서는 것과 같다고 생각하면 됨
스택 2개로 큐를 구현하라!!! 예전에 카카오 면접을 보았을때 물어봤던 내용이다...
이건 뭐... 스택을 두번 연속으로 사용하면 큐의 형태가 된다는 것을 기억하면 되겠다.
class Queue:
def __init__(self):
self.s1 = Stack()
self.s2 = Stack()
def pop(self):
if self.s2.is_empty():
while not self.s1.is_empty():
self.s2.push(self.s1.pop())
return self.s2.pop()
def push(self,n):
self.s1.push(n)
728x90
반응형
LIST
'Computer Science > Data Structure & Algorithm' 카테고리의 다른 글
Radix Sort (기수 정렬) (0) | 2020.01.18 |
---|---|
Insertion Sort (삽입 정렬) (0) | 2020.01.18 |
Selection Sort (선택 정렬) (0) | 2020.01.18 |
연결리스트 (0) | 2020.01.18 |
자료구조 (0) | 2020.01.18 |
Comments