๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โœจ Algorithm/๐Ÿ•‍๐Ÿฆบ ๋ฐ”ํ‚น๋… ๊ฐœ๋…

[0x06] ํ

by nitronium102 2023. 6. 20.

์ •์˜์™€ ์„ฑ์งˆ

์ •์˜

ํ•œ์ชฝ ๋์—์„œ ์›์†Œ๋ฅผ ๋„ฃ๊ณ  ๋บ„ ์ˆ˜ ์žˆ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ

์„ฑ์งˆ

  • ์›์†Œ์˜ ์ถ”๊ฐ€์™€ ์ œ๊ฑฐ : O(1)
  • ์ œ์ผ ์•ž/๋’ค์˜ ์›์†Œ ํ™•์ธ : O(1)
  • ์ œ์ผ ์•ž/๋’ค์ด ์•„๋‹Œ ๋‚˜๋จธ์ง€ ์›์†Œ๋“ค์˜ ํ™•์ธ/๋ณ€๊ฒฝ์ด ์›์น™์ ์œผ๋กœ ๋ถˆ๊ฐ€๋Šฅ

๊ธฐ๋Šฅ๊ณผ ๊ตฌํ˜„

const int MAX = 1e7;
int data[MAX];
int head = 0, tail = 0;

void push(int x) data[tail++] = x;
void pop() head++;
int front() return data[head];
int back() return data[tail--];

STL queue

#include <queue>

๋Œ“๊ธ€