π Dequeλ
- 맨 μ, 맨 λ€μ μμλ₯Ό μΆκ°ν μ μλ μλ£κ΅¬μ‘°
- λμ λ°°μ΄ νν
- μμμ μμΉ μμ μ κ·Ό, μλ€ μμ μ½μ
μ O(1) 보μ₯
π Deque ν¨μ
- dq.begin(): 첫λ²μ§Έ μμλ₯Ό κ°λ¦¬ν€λ iterator
- dq.end(): λ§μ§λ§ μμ λ€μμ κ°λ¦¬ν€λ iterator
- dq.assign(n): μμ nκ°λ‘ μ΄κΈ°ν
- dq.assign(n, m): μμ nκ°λ₯Ό mμΌλ‘ μ΄κΈ°ν
- dq.front(): 첫 λ²μ§Έ μμ
- dq.back(): λ§μ§λ§ μμ
- dq.at(i): iλ²μ§Έ μμ
- dq.push_front(n): κ°μ₯ μμ n μΆκ°
- dq.push_back(n): κ°μ₯ λ§μ§λ§μ n μΆκ°
- dq.pop_front(): κ°μ₯ μ μμ κΊΌλ΄κΈ°
- dq.pop_back(): κ°μ₯ λ§μ§λ§ μμ κΊΌλ΄κΈ°
- dq.insert(v.begin(), n): iteratorκ° κ°λ¦¬ν€λ μμΉμ n μμ μΆκ°
- dq.size(): λ± μ¬μ΄μ¦ λ°ν
- dq.resize(n): nμΌλ‘ μ¬μ΄μ¦ λ³κ²½
- dq.clear(): μ 체 μμ μμ
- dq.erase(v.begin()): iteratorκ° κ°λ¦¬ν€λ μμ μμ . size λ³ν¨.
π Deque μ¬μ©λ²
#include <deque>
deque<int> dq;
dq.push_back(n); // 맨 λ€ n μ½μ
dq.push_front(n); // 맨 μ n μ½μ
dq.pop_back(); // 맨 λ€ μμ μμ
dq.pop_front(); // 맨 μ μμ μμ