deque은 vector와 다르게 삽입, 제거 과정을 o(1)에 할 수 있다.
이게 가능한 이유는 deque는 벡터를 여러 공간에 저장하기 때문이다.
하지만 메모리 관점상 좋지 않다. (코딩테스트 할 때는 도움이 될지 모르겠다)
굳이 필요한 경우가 아니라면 vector를 사용하도록 하자.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#include <iostream>
#include <deque>
int main()
{
std::deque<int> d = { 7,5,16,8 };
//o1 time complexity
d.push_front(13);
d.emplace_back(15);
d.push_back(25);
d.emplace_back(16);
for (int n : d)
{
std::cout << n << "\n";
}
}
|
'C' 카테고리의 다른 글
c++ map 사용 방법 (0) | 2021.06.27 |
---|---|
c++ set, multiset, 커스텀 비교 함수, 커스텀 클래스 (0) | 2021.06.27 |
c++ vector, array 다차원 배열, 2d array를 1d처럼, 성능 주의점 (0) | 2021.06.27 |
c++ vector sort, stable_sort, partial_sort, nth_element, minmax, find, accumulate 코드 (0) | 2021.06.27 |
c++ vector와 array의 차이 (0) | 2021.06.26 |