๐ Deque
Deque๋ Double Ended Queue์ ์๋ฐฉํฅ ๋๊ธฐ์ด์ด๋ผ๊ณ ๋ ๋ถ๋ฆฌ๋ ์๋ฃ๊ตฌ์กฐ์ด๋ค.
์๋ฐฉํฅ์ผ๋ก ์ด๋ ค์๋ ๊ตฌ์กฐ๋ก Queue์ ์ธํ์ ์ผ๋ก ๋น์ทํ์ง๋ง Deque๋ Stack๊ณผ Queue์ ๋ฌ๋ฆฌ LIFO, FIFO์ ๊ฐ์ ์์์ ๊ตฌ์๋์ง ์๋๋ค.
Deque์ ํน์ง
- Stack ๋ฐ Queue๋ฅผ ๋ชจ๋ ์ฌ์ฉํ ์ ์๋ค.
- Deque๋ ์์ชฝ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํ๊ณ ์ญ์ ํ ์ ์์ด์ Stack๊ณผ Queue๋ฅผ ๊ตฌํํ ์ ์๋ค.
- ์ถ๊ฐ์ ์ญ์ ๋ฅผ ์์ชฝ์์ ์ ์ดํ ์ ์์ด์ ์ฌ๋ฌ ํํ๋ก ์ฌ์ฉํ ์ ์๋ค.
Deque์ ์ ์ธ
Deque<Integer> deque = new LinkedList<>();
Deque<Integer> deque = new ArrayDeque<>();
LinkedList์ ArrayDeque ์ธํฐํ์ด์ค๋ฅผ ํ์ฉํด ๊ตฌํํ deque
๐ Deque์ ๊ฐ ์ฝ์
add() | ๋ง์ง๋ง์ ์์๋ฅผ ์ฝ์ ํ๋ค. ์ฉ๋ ์ด๊ณผ ์ ์์ธ(Exception)๊ฐ ๋ฐ์ |
addFirst() | ๋งจ ์์ ์์๋ฅผ ์ฝ์ ํ๋ค. ์ฉ๋ ์ด๊ณผ ์ ์์ธ(Exception)๊ฐ ๋ฐ์ |
addLast() | ๋ง์ง๋ง์ ์์๋ฅผ ์ฝ์ ํ๋ค. ์ฉ๋ ์ด๊ณผ ์ ์์ธ(Exception)๊ฐ ๋ฐ์ |
offer() | ๋ง์ง๋ง์ ์์๋ฅผ ์ฝ์ ํ๋ค. ์ฝ์ ์ฑ๊ณต ์ true, ์ฉ๋ ์ ํ์ ๊ฑธ๋ฆฌ๋ ๊ฒฝ์ฐ false๋ฅผ ๋ฆฌํด |
offerFirst() | ๋งจ ์์ ์์๋ฅผ ์ฝ์ ํ๋ค. ์ฝ์ ์ฑ๊ณต ์ true, ์ฉ๋ ์ ํ์ ๊ฑธ๋ฆฌ๋ ๊ฒฝ์ฐ false๋ฅผ ๋ฆฌํด |
offerLast() | ๋ง์ง๋ง์ ์์๋ฅผ ์ฝ์ ํ๋ค. ์ฝ์ ์ฑ๊ณต ์ true, ์ฉ๋ ์ ํ์ ๊ฑธ๋ฆฌ๋ ๊ฒฝ์ฐ false๋ฅผ ๋ฆฌํด |
๐ Deque์ ๊ฐ ์ญ์
remove() | ๋งจ ์์ ์์ ์ ๊ฑฐ ํ ํด๋น ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ ์์ธ(Exception)๊ฐ ๋ฐ์ |
removeFirst() | ๋งจ ์์ ์์ ์ ๊ฑฐ ํ ํด๋น ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ ์์ธ(Exception)๊ฐ ๋ฐ์ |
removeLast () | ๋ง์ง๋ง ์์ ์ ๊ฑฐ ํ ํด๋น ์์๋ฅผ ๋ฆฌํดํ๋ค.๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ ์์ธ(Exception)๊ฐ ๋ฐ์ |
poll () | ๋งจ ์์ ์์ ์ ๊ฑฐ ํ ํด๋น ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ null ๋ฆฌํด |
pollFirst () | ๋งจ ์์ ์์ ์ ๊ฑฐ ํ ํด๋น ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ null ๋ฆฌํด |
pollLast () | ๋ง์ง๋ง ์์ ์ ๊ฑฐ ํ ํด๋น ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ null ๋ฆฌํด |
๐ Deque์ ๊ฐ ์กฐํ
getFirst() | ๋งจ ์์ ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ ์์ธ(Exception)๊ฐ ๋ฐ์ |
getLast() | ๋ง์ง๋ง ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ ์์ธ(Exception)๊ฐ ๋ฐ์ |
peek () | ๋งจ ์์ ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ null ๋ฆฌํด |
peekFirst () | ๋งจ ์์ ์์๋ฅผ ๋ฆฌํดํ๋ค. ๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ null ๋ฆฌํด |
peekLast () | ๋ง์ง๋ง ์์๋ฅผ ๋ฆฌํดํ๋ค .๋ฑ์ด ๋น์ด์๋ ๊ฒฝ์ฐ null ๋ฆฌํด |
'JAVA > Theory' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring] Spring Security (0) | 2024.05.13 |
---|---|
[Java] HashMap๊ณผ HashSet (1) | 2024.04.25 |
[Java] Stack๊ณผ Queue ๊ทธ๋ฆฌ๊ณ Deque (0) | 2024.04.25 |
[MAVEN] SpringMVC ๋ฒ์ 2 (0) | 2024.03.05 |
[MAVEN] SpringMVC ๋ฒ์ 1 (0) | 2024.03.05 |
๋๊ธ