알고리즘 - stack/queue
stack / queue
stack - LIFO(Last In First Out)
#include <iostream>
#include <stack>
// 나중에 들어온 값이 제일 먼저 나감
int main() {
stack<int> pages;
// | 1 |
pages.push(1);
// | 1 | 2 |
pages.push(2);
// | 1 | 2 | 3 |
pages.push(3);
pages.pop();
// | 1 | 2 |
pages.pop();
// | 1 |
pages.pop();
// empty
}
queue- FIFO(First In First Out)
#include <iostream>
#include <queue>
// 먼저 들어온 값이 제일 먼저 나감
int main() {
queue<int> buffer;
// | 1 |
buffer.push(1);
// | 1 | 2 |
buffer.push(2);
// | 1 | 2 | 3 |
buffer.push(3);
buffer.pop();
// | 2 | 3 |
buffer.pop();
// | 2 |
buffer.pop();
// empty
}
마치며
코딩테스트를 위해서는 스택과 큐에 대한 개념이 꼭 필요합니다. 스택은 LIFO 큐는 FIFO!✍️
댓글남기기