์ฐ๊ฒฐ ๋ฆฌ์คํธ๋? ๋ฐฐ์ด๊ณผ ๋ค๋ฅด๊ฒ ์ฐ์์ ์ธ ๋ฉ๋ชจ๋ฆฌ ์์น์ ์ ์ฅ๋์ง ์๋ ์ ํ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ด๋ฉฐ, ๊ฐ ๋ ธ๋๋ ํฌ์ธํฐ๋ฅผ ์ด์ฉํด ์๋ก๋ฅผ ์ฐ๊ฒฐํ์ฌ ์ ๊ทผํ๋ค. ์ฐ๊ฒฐ๋ฆฌ์คํธ ํน์ง ์ฅ์ ๋ฐฐ์ด๊ณผ ๋ค๋ฅด๊ฒ ์์์ ์๋งํผ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋น๋ฐ์ ํ์๊ฐ ์๋ค. ๋ฐฐ์ด๊ณผ ๋ค๋ฅด๊ฒ ๊ณต๊ฐ์ ์ถ๊ฐ๋ก ํ ๋น๋ฐ๊ฑฐ๋ ๋๋จธ์ง ๋ฐ์ดํฐ๋ค์ ์์น๋ฅผ ์ด๋์ํฌ ํ์๊ฐ ์์ด์ ์ฝ์ ๋ฐ ์ญ์ ๊ฐ ์ฉ์ดํ๋ค. ๋จ์ ๋ฐฐ์ด๊ณผ ๋ค๋ฅด๊ฒ ํน์ ์ธ๋ฑ์ค์ ์์น์ O(1)์ ์ ๊ทผํ์ง ๋ชปํ๊ณ ์์์๋ถํฐ ์์ฐจ์ ์ผ๋ก ์์๋ฅผ ํ์ํด์ผํ๋ค. ๊ฐ ๋ ธ๋๊ฐ ๋ฐ์ดํฐ๋ง ๊ฐ์ง๊ณ ์๋ ๊ฒ์ด ์๋, ํฌ์ธํฐ ๋ณ์์ ๊ณต๊ฐ๋ ์ถ๊ฐ์ ์ผ๋ก ํ์ํ๋ค. ์ฝ๋๋ก ๋ณด๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ๋ ธ๋ ๊ตฌํ class Node { private Node left; private Node right; private final int data; ..
Stack์ด๋? LIFO(Last in First Out, ํ์ ์ ์ถ), ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ด ํ๊ณณ์ผ๋ก ์ ํ๋๋ ์๋ฃ๊ตฌ์กฐ Stack ์์ ์ผ๋ฐ์ ์ธ ํจ์์ ์ฝ์คํ, ์คํ์ด ๋์น๊ฒ ๋๋ฉด StackOverFlow๊ฐ ๋ฐ์ํ๋ค. ๋ฌธ์์ด ์ญ์ ์ถ๋ ฅ, ์ฐ์ฐ์ ํ์ํ๊ธฐ๋ฒ๊ณผ ๊ฐ์ ์ํฉ์์ ์ฌ์ฉํ๋ค. ์ฝ๋๋ก ์ดํดํ๋ Stack class Stack { List list = new ArrayList(); private final int STACK_MAX_SIZE; private int top = 0; public Stack(int STACK_MAX_SIZE) { this.STACK_MAX_SIZE = STACK_MAX_SIZE; } void push(int data) { if(isFull()) return ; list.add(to..
https://programmers.co.kr/learn/courses/30/lessons/67258?language=java ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ณด์ ์ผํ ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr ๋ฌธ์ ์ ๋ฆฌ 1. ์ง์ด๋ ๋ชจ๋ ์ข ๋ฅ์ ๋ณด์์ ์ ์ด๋ 1๊ฐ ์ด์ ํฌํจํ๋ ๊ฐ์ฅ ์งง์ ์ฐ์๋ ๊ตฌ๊ฐ์ ๊ตฌํ์ธ์. 2. ๋ง์ฝ ๊ฐ์ฅ ์งง์ ์ฐ์๋ ๊ตฌ๊ฐ์ด ์ฌ๋ฌ๊ฐ๋ผ๋ฉด, ๊ฐ์ฅ ์ผ์ชฝ์ ์์นํ ๊ตฌ๊ฐ์ ๋ฐํํ์ธ์. 3. ์ง์ด๋ ๋ชจ๋ ์ข ๋ฅ์ ๋ณด์์ ์ ์ด๋ 1๊ฐ ์ด์ ํฌํจํ๋ ๊ตฌ๊ฐ์ ๋ฌด์กฐ๊ฑด 1๊ฐ ์ด์ ์กด์ฌํฉ๋๋ค. ์ ๊ทผ ๋ฐฉ๋ฒ ์์ ํ์ ์ด ๋ฌธ์ ๋ ์ฐ์ ์ ํ๋ ํ๊ฐ์ ํจ์จ์ฑ ํ๊ฐ๊ฐ ์กด์ฌํ๋ค. ํจ์จ์ฑ ํ๊ฐ๊ฐ ์กด์ฌํ๋ค..
ํฌํธ๋? ํธ์คํธ์์ ๋์ํ๋ ์ฌ๋ฌ ํ๋ก์ธ์ค ์ค์ ์ค์ ๋ก ์ด ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ผํ๋ ํ๋ก์ธ์ค๊น์ง ๋ฐ์ดํฐ๋ฅผ ์ ์กํด์ผํจ ์ด๋ ํ๋ก์ธ์ค๋ฅผ ์๋ณํ๊ธฐ ์ํด ํธ์คํธ ๋ด๋ถ์ ์ผ๋ก ํ๋ก์ธ์ค๊ฐ ํ ๋น๋ฐ๋ ๊ฐ์ ํฌํธ๋ผ๊ณ ํจ ์ก์ ํ๋ก์ธ์ค ๋ํ ์๋ต๋ฐ๊ธฐ ์ํด ํฌํธ๋ฒํธ๋ฅผ ํ ๋น ๋ฐ์์ผ ํจ ์์ผ์ด๋? ์์ผ์ ํ๋ก์ธ์ค๊ฐ ๋คํธ์ํฌ๋ฅผ ํตํด์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ผ๋ ค๋ฉด ๋ฐ๋์ ์ด์ด์ผ ํ๋ ์ฐฝ๊ตฌ ๊ฐ์ ๊ฒ ์ปดํจํฐ ๋คํธ์ํฌ๋ฅผ ๊ฒฝ์ ํ๋ ํ๋ก์ธ์ค ๊ฐ ํต์ ์ ์ข ์ฐฉ์ ์์ผ์ ์ด์ฉํ๋ฉด ์์ฉ๊ณ์ธต๋ง ์ ๊ฒฝ์ฐ๊ณ ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ ์ ์์
DNS๋? Domain Name์ ์ธํฐ๋ท ์ฃผ์๋ก์ ์ฌ๋์ด ๊ธฐ์ตํ๊ธฐ๋ ์ฝ์ง๋ง ์ปดํจํฐ๊ฐ ์ฒ๋ฆฌํ๊ธฐ์๋ ์ด๋ ค์ ๋คํธ์ํฌ ์์์ ์ฌ๋์ด ๊ธฐ์ตํ๊ธฐ ์ฝ๊ฒ ๋ฌธ์๋ก ๋ง๋ค์ด์ง Domain Name์ ์ปดํจํฐ๊ฐ ์ฒ๋ฆฌํ ์ ์๋ IP๋ก ๋ฐ๊พธ๋ ์์คํ ํด๋น ์์คํ ์ ์ญํ ์ ํ๋ ์๋ฒ ์ปดํจํฐ๋ฅผ Domain Name Server๋ผ๊ณ ๋งํ๊ธฐ๋ ํจ DNS๊ฐ ์ ํ์ํ๊ฒ ๋์์๊น? ์ด์ ์๋ ๋คํธ์ํฌ๊ฐ ํฌ์ง ์๊ณ ๊ต์ฅํ ์ง์ญ์ ์ด๋ผ IP์ฃผ์๋ฅผ Hostsํ์ผ์ ๊ธฐ๋กํด๋๊ณ ์ฌ์ฉํ์ฌ๋ ์ถฉ๋ถํ์์ ํ์ง๋ง ๋คํธ์ํฌ๊ฐ ์ปค์ง๋ฉด์ ๋ถ๊ฐ๋ฅ์ ๊ฐ๊น์์ก๊ณ ๊ทธ๋์ ๊ณ ์๋ ๊ฒ์ด DNS DNS ๋์ ๊ณผ์ PC ๋ธ๋ผ์ฐ์ ์์ "www.naver.com"์ ์ ๋ ฅํ๊ฒ๋๋ฉด PC๋ ๋ฏธ๋ฆฌ ์ค์ ๋์ด ์๋ Local DNS์๊ฒ IP์ฃผ์๋ฅผ ๋ฌผ์ด๋ด ๋ง์ฝ Local DNS์ IP์ฃผ์๊ฐ ..