728x90
# Stack (FILO)
- push: 끝부분 (stack top)에 원소를 추가
- pop : 끝부분의 원소를 제거 == Stack top의 원소 반환
- 모두 평균 O(1)
stack<int> s;
s.push(2); // 2
s.push(5); // 2 5
cout<<s.top()<<'\n'; // 5
s.pop(); // 2
cout<<s.top() <<'\n'; // 2
# Queue (FIFO)
- push: 끝부분에 원소를 추가
- pop : 앞 부분 부터 차례대로 제거
- front() : Queue의 가장 앞 원소 반환
- back() : Queue의 가장 뒷 원소 반환
- 모두 평균 O(1)
queue<int> q;
q.push(2); // 2
q.push(5); // 2 5
cout<<q.front()<<'\n'; // 2
q.pop(); // 5
cout<< q.back() << '\n'; // 5
#같은 평균 시간이라도 stack, queue는 deque보다 빠르다.
728x90
'🐣 알고리즘 삐약 > ✌️알고리즘 개념 잡기' 카테고리의 다른 글
[Map] Map | C++ (0) | 2022.04.20 |
---|---|
[Set] Set 집합 | C++ (0) | 2022.04.20 |
[Linear Data Structures] Deque (3) | 2022.04.20 |
[Linear Data structures] Vector (0) | 2022.04.20 |
[sorting | practice] Inversion 개수 출력 (0) | 2022.04.19 |