ALL
717

[์ด๋ก ] ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ
0. ํ์ต ๋ชฉ์ ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ์ ๋ชฉ์ ๊ณผ ์๋์๋ฆฌ๋ฅผ ์ดํดํ๋ค.์ต์ ์คํจ๋ ํธ๋ฆฌ๊ฐ ๋ฌด์์ธ์ง ์ดํดํ๋ค.ํธ๋ฆฌ์ ๊ทธ๋ํ์ ์ฐจ์ด์ ์ ์ดํดํ๋ค.1. ํฌ๋ฃจ์ค์นผ (Kruskal) ์๊ณ ๋ฆฌ์ฆ์ด๋?์ฃผ์ด์ง ๊ทธ๋ํ ๋ด์์ ์ต์ ์คํจ๋ ํธ๋ฆฌ๋ฅผ ์ฐพ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.๊ทธ๋ฆฌ๋ํ ๋ฐฉ์์ ์งํ๋๋ฉฐ, ๋ด๋ถ์์ ํธ๋ฆฌ ๊ตฌ์ฑ์ ์ฌ๋ถ๋ฅผ ๊ฐ๋ฆฌ๊ธฐ ์ํด ์ ๋์จ ํ์ธ๋๋ฅผ ํ์ฉํ๋ค. (1) ๊ทธ๋ํ์ ํธ๋ฆฌ์ ์ฐจ์ด๋ ๋ค ๊ฐ์ ๊ณผ ์ ์ ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ง๋ง, ๋ค์ ํญ๋ชฉ์์ ์ฐจ์ด๋ฅผ ๋ณด์ธ๋ค. ๊ตฌ๋ถ๊ทธ๋ํํธ๋ฆฌ์ฌ์ดํด์ ์ฌ๋ถ์ฌ์ดํด์ด ์กด์ฌํ ์ ์๋ค.์ฌ์ดํด์ด ์๋ค.๊ฐ์ ์ ๊ฐ์๊ฐ์ ์ ๊ฐ์๋ฅผ ํน์ ํ ์ ์๋ค.์ ์ ์ด N๊ฐ๋ผ๋ฉด ๊ฐ์ ์ ๊ฐ์๋ N-1๊ฐ์ด๋ค.(2) ์ต์ ์คํจ๋ ํธ๋ฆฌ๋?๊ทธ๋ํ ๋ด์ ํธ๋ฆฌ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด์๋ ๊ฐ์ค์น ๋น์ฉ์ด ์ต์ ๋น์ฉ์ธ ๋ถ๋ถ์งํฉ์ ์๋ฏธํ๋ค.์ฌ๊ธฐ์ ํธ๋ฆฌ์ ์กฐ๊ฑด์ ..
2025.08.25
CodingTest/์๊ณ ๋ฆฌ์ฆ-์ด๋ก

[Java] ์ธํฐํ์ด์ค
0. ํ์ต ๋ชฉ์ ์ธํฐํ์ด์ค์ ๊ตฌ์ฑ์์์ ๋ํด ์ดํดํ๋ค.์ธํฐํ์ด์ค๋ ์ธ์ ์ฐ๋์ง ์ดํดํ๋ค.1. ์ธํฐํ์ด์ค๋?์ธํฐํ์ด์ค ๋, '๋ฌด์์ ํ ๊ฒ์ธ๊ฐ' ์ ๋ํ ๋ช
์ธ๋ง ์ ํ์๋ ๊ณ์ฝ ํ ์ถ์ ์๋ฃํ์ด๋ค.(1) ๊ณ์ฝ์ด๋?๊ณ์ฝ์ ์ค์ํ์์ ์ํธ ๊ฐ์ ์ง์ผ์ผ ํ๋ ์ฝ์์ ๋งํ๋ค. ์ธํฐํ์ด์ค๋ ์ฌ์ฉ์์, ๋ ๊ทธ๊ฒ์ ๊ตฌํํ๊ณ ์ ํ๋ class์ ๋ ๋ฒ ๊ณ์ฝ์ ํ๊ฒ ๋๋ค.์ฌ์ฉ์์์ ๊ณ์ฝ: ์ฌ์ฉ์๊ฐ ์ธํฐํ์ด์ค ๋ด ์ํ๋ ๋งค์๋๋ฅผ ๊ท์น์ ๋ง๊ฒ ํธ์ถํ๋ฉด, ์ฌ์ฉ์๊ฐ ์์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ ํด์ค์ผ ํ๋ค.๊ตฌํ์ฒด์์ ๊ณ์ฝ: ๊ตฌํ์ฒด๋ ์ถ์ ๋งค์๋์ ๊ท์น (์ธ์, ๋ฐํ๊ฐ)์ ์ค์ํ์ฌ ๊ตฌํํ์ฌ์ผ ํ๊ณ , ๊ทธ๊ฒ์ ์ฉ๋์ ๋ง๋ ํ๋์ ํด์ผ ํ๋ค.(2) ์ธํฐํ์ด์ค ํ์ฉ์ ํจ๊ณผ๊ตฌํ ๋ถ๋ฆฌ์ ๋์จํ ๊ฒฐํฉA. ๊ตฌํ ๋ถ๋ฆฌ = ๋
ผ๋ฆฌ์ ๊ฒฐํฉ๋ ๋ฎ์ถค์ธํฐํ์ด์ค๊ฐ ์์..
2025.07.26
Language/Java

[DB] ์ธ๋ฑ์ค ๋จธ์ง (Index Merge)
0. ํ์ต ๋ชฉ์ ์ธ๋ฑ์ค ๋จธ์ง๊ฐ ๋ฌด์์ธ์ง ์ดํดํ๋ค.์ธ๋ฑ์ค ๋จธ์ง์ ์ข
๋ฅ์ธ ๊ต์งํฉ, ํฉ์งํฉ, ์ ๋ ฌ ํ ํฉ์งํฉ์ ์ดํดํ๋ค.1. ์ธ๋ฑ์ค ๋จธ์ง๋?Index Merge ๋ ํ๋์ ํ
์ด๋ธ์์ ๋ ๊ฐ ์ด์์ ์ธ๋ฑ์ค๋ฅผ ํ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ๋ณํ๊ณ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ณํฉํ์ฌ ์ฟผ๋ฆฌ๋ฅผ ์ฒ๋ฆฌํ๋ ์ต์ ํ ์ ๋ต์ด๋ค.๋ง์ฝ ํด๋น ์ต์
์ ์ผ๋์ง ์์๋ค๋ฉด, ์ตํฐ๋ง์ด์ ๋ ์ฟผ๋ฆฌ๋ฅผ ์ฒ๋ฆฌํ ๋, ํ๋์ ํ
์ด๋ธ์์๋ ์ค๋ก์ง ํ๋์ ์ธ๋ฑ์ค๋ฅผ ํ์ฉํ๋ค.2. ์ฌ์ฉ๋๋ ์กฐ๊ฑด์ฟผ๋ฆฌ์ ์ฌ์ฉ๋ ๊ฐ๊ฐ์ ์กฐ๊ฑด์ด ํ๋์ ํ
์ด๋ธ ๋ด์ ์๋ก ๋ค๋ฅธ ์ธ๋ฑ์ค๋ฅผ ํ์ฉํ ์ ์๋ค.ํ๋์ ์ธ๋ฑ์ค๋ก๋ง ์ฒ๋ฆฌํ์ ๊ฒฝ์ฐ ๋ฒ์ ํํฐ๋ง ํจ๊ณผ๊ฐ ๋ฏธ๋ฏธํ๋ค.3. ์ข
๋ฅintersection: ๊ฐ๊ธฐ ๋ค๋ฅธ ์ธ๋ฑ์ค๋ก ํํฐ๋งํ ๋ฐ์ดํฐ๋ค ์ฌ์ด์ ๊ต์งํฉ๋ง ๋ฐํunion: ๊ฐ๊ธฐ ๋ค๋ฅธ ์ธ๋ฑ์ค๋ก ํํฐ๋งํ ๋ฐ์ดํฐ๋ค ์ฌ์ด์ ํฉ์ง..
2025.07.24
Computer Science/๋ฐ์ดํฐ๋ฒ ์ด์ค

[DB] ์ธ๋ฑ์ค ํ์ฅ (Index Extension)
0. ํ์ต ๋ชฉ์ ์ธ๋ฑ์ค ํ์ฅ์ด ๋ฌด์์ธ์ง ์ดํดํ๋ค.์ธ๋ฑ์ค ํ์ฅ ์ ๋ต์ ์ฅ์ ์ ์ดํดํ๋ค.1. ์ธ๋ฑ์ค ํ์ฅ ์ด๋?Index Extension์ InnoDB๋ฅผ ์ฌ์ฉํ๋ ํ
์ด๋ธ์์ ๋ณด์กฐ ์ธ๋ฑ์ค๋ฅผ ํ์ฉํ ๋, ๊ทธ ๋ณด์กฐ ์ธ๋ฑ์ค์ ์๋ ์ถ๊ฐ๋ PK๋ ํจ๊ป ํ์ฉํ ์ ์๊ฒ ํ ์ง ๋ง์ง๋ฅผ ์ ํ๋ ์ต์
์ด๋ค. ํด๋น ์ต์
์ ํ์ฑํํ๋ฉด, ๋ณด์กฐ์ธ๋ฑ์ค๋ฅผ (๋ณด์กฐ ์ธ๋ฑ์ค, PK) ๋ก ๋ ๋ณตํฉ ์ธ๋ฑ์ค๋ฅผ ํ์ฉํ๋ ๊ฒ์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ค.๋ค์๊ณผ ๊ฐ์ด ํ
์ด๋ธ์ด ์๋ค๊ณ ํด๋ณด์.-- ํ
์ด๋ธ ์์ฑCREATE TABLE dept_emp ( dept_no INT NOT NULL, emp_no CHAR(4) NOT NULL, salary INT, from_date DATE NOT NULL, PRIMARY KEY (dept_no, ..
2025.07.24
Computer Science/๋ฐ์ดํฐ๋ฒ ์ด์ค

[DB] ์ธ๋ฑ์ค ์ปจ๋์
ํธ์๋ค์ด(Index Condition PushDown)
0. ํ์ต ๋ชฉ์ ์ธ๋ฑ์ค ์ปจ๋์
ํธ์๋ค์ด์ ์ ์๋ฅผ ์ดํดํ๋ค.์ธ๋ฑ์ค ์ปจ๋์
ํธ์๋ค์ด์ด ํ์ฑํ๋์์ ๋์ ๋นํ์ฑํ ๋์์ ๋, ์คํ ๊ณํ์ด ์ด๋ป๊ฒ ๋ฐ๋๋์ง ์ดํดํ๋ค.1. ์ธ๋ฑ์ค ์ปจ๋์
ํธ์ ๋ค์ด์ด๋?Index Condition Pushdwon(์ดํ ICP) ๋ ๋ณด์กฐ ์ธ๋ฑ์ค๋ฅผ ํ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ์ฟผ๋ฆฌ๋ฌธ์์ ์ฌ์ฉํ๋ ์ต์ ํ ์ ๋ต์ด๋ค.๋ค์๊ณผ ๊ฐ์ด ์งํ๋๋ ์ต์ ํ๋ฅผ ICP๋ผ๊ณ ํ๋ค.์ตํฐ๋ง์ด์ ๊ฐ '๋ฒ์๋ฅผ ์ค์ผ ์ ์๋ ์กฐ๊ฑด ์ปฌ๋ผ์ด๋๋ผ๋' ๋ณด์กฐ ์ธ๋ฑ์ค์ ๊ตฌ์ฑ ์์๋ก ์กด์ฌํ๋ ์ปฌ๋ผ์ด๋ฉด, ์คํ ๋ฆฌ์ง ์์ง์๊ฒ ์ ๋ถ ์ ๋ฌํด์ค๋ค.์คํ ๋ฆฌ์ง ์์ง์ ๋ณด์กฐ ์ธ๋ฑ์ค๋ฅผ ํ์ํ ๋, ์ตํฐ๋ง์ด์ ์๊ฒ ๋ฐ์ ์กฐ๊ฑด ์ปฌ๋ผ๋ค๋ก ์ต๋ํ ์ ํจํ์ง ์์ ํํ๋ค์ ๊ฑธ๋ฌ๋ธ๋ค. ์ด๋ฅผ ํตํด ์คํ ๋ฆฌ์ง ์์ง์ด ๋ณธ ํ
์ด๋ธ์ ์ฝ๋ ํ์๋ฅผ ์ค์ธ๋ค. [!info] MyS..
2025.07.24
Develop/BACK-END

[Java] Fail-Fast Iterator vs Fail-Safe Iterator
0. ํ์ต ๋ชฉ์ iterator.next()๋ฅผ ํ์ฉํ์ฌ Collections์ ์๋ฃ๊ตฌ์กฐ๋ค์ ์ํํ๋ฉด์, ์๋ฃ ๊ตฌ์กฐ ๋ด์ ๊ฐ๋ค์ ์์ ํ๋ ค๊ณ ํ๋ฉด ConcurrntModificationException์ด ๋๋ ์ด์ ๋ฅผ ์ดํดํ๋ค. Fail-Fast Interator์ Fail-Safe Iterator์ ์ฐจ์ด๋ฅผ ์ดํดํ๋ค.1. Fail-Fast ์ ๋ต๊ณผ Fail-Safe ์ ๋ตFail-Fast ์ ๋ต ์ ์์คํ
์๋ ์ค ์คํจ ์ง์ ์ด ์๊ธฐ๋ฉด ๊ทธ ์ฆ์ ๋ชจ๋ ์๋์ ๋ฉ์ถ๋ ์ ๋ต์ด๋ค. ์ด๋ ์คํจ ์ง์ ์ ๋ํ ๋ช
ํํ ํ๋จ๊ณผ ์ผ๊ด์ฑ ์ ์ง๋ฅผ ๋ชฉํ๋ก ํ๋ค.Fail-Safe ์ ๋ต ์ ์์คํ
์๋ ์ค ์คํจ๋ฅผ ๋ง๋ฑ๋จ๋ฆฐ ์ํฉ์๋ ์๋์ ์ค๋จํ์ง ์๋๋ค. ๋ค๋ง ์ต๋ํ ์คํจ๊ฐ ์ปค์ง์ง ์๋ ๋ฐฉํฅ์ผ๋ก ๋์๊ฐ๋ ์ ๋ต์ด๋ค.Java๋ Iterator ํจํด..
2025.07.23
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

[๋ฐฑ์ค] 22861 ํด๋ ์ ๋ฆฌ (Large) java ํ์ด
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/22861(1) ์กฐ๊ฑด ๋ถ์ ๐ํด๋ ๊ตฌ์กฐ ํ์ฑ ๋ช
๋ น์ด๋งจ ๋ง์ง๋ง์ 1์ด ์ค๋ฉด ํด๋ ๊ฐ์ ๋ถ๋ชจ-์์ ๊ด๊ณ๋ฅผ ๋ํ๋๋งจ ๋ง์ง๋ง์ 0์ด ์ค๋ฉด ํน์ ํด๋์ ํ์ผ ์ฝ์
๋ช
๋ น์ดํด๋ ์ด๋ ๋ช
๋ น์ดํด๋ A, ํด๋ B ๊ตฌ์กฐ๋ก ์๋ ค์ฃผ๋ฉด ํด๋ A๋ฅผ B๋ก ์ฎ๊ธด๋ค.ํด๋ ํ์ ํ์ผ ์ + ํ์ผ ์ ํ ์ถ๋ ฅ ๋ช
๋ น์ด2. ์ฝ๋๊ฐ ๋์ค๊ธฐ๊น์ง ๐ ๏ธKEY WORD: ์๋ฎฌ๋ ์ด์
, ์๋ฃ๊ตฌ์กฐ ๋จผ์ ๊ฐ๋
์ ๋๋๊ณ ์ ํ๋ค.์ง์ ํ์ผ: ํด๋น ํด๋์ ์กด์ฌํ๋ ํ์ผ์ด๋ค.ํ์ ํ์ผ: ํด๋น ํด๋์ ํ์ ํด๋ ์ค ์ด๋๊ฐ์ ์กด์ฌํ๋ ํ์ผ์ด๋ค.(0) ํด๋์ ์ข
๋ฅ๋ฅผ ๊ตฌ๋ถํ๋ ์ด์ ํด๋ ์ ๋ฆฌ (small)๋ฅผ ํ๋ฉด์ ์ง์ํ์ผ๊ณผ ํ์ํ์ผ์ ๊ตฌ๋ถ์์ด ๋์ ํ์ฌ ํ์๋ ํ์ด์๋ค์ ํด๋น ํ์ด..
2025.07.22
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

[๋ฐฑ์ค] 22860 ํด๋ ์ ๋ฆฌ (small) Java ํ์ด
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/22860(1) ์กฐ๊ฑด ๋ถ์ ๐๋ฌธ์ ์์ ์๊ตฌํ๋ ํด๋์ ํ์ ํ์ผ ์ข
๋ฅ์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ผ.main ํด๋ ์๋ ๊ฐ์ ์ด๋ฆ์ ํด๋๋ 2๊ฐ ์ด์ ์กด์ฌํ ์ ์๋ค.ํ ํด๋๋ ์์ ์ ๋ ๋ฒจ์์ ๊ฐ์ ์ด๋ฆ์ ํ์ผ์ ๋ ๊ฐ ์ด์ ๊ฐ์ง์ง ๋ชปํ๋ค.```bash-- ๋ถ๊ฐ๋ฅ ์์FolderAใดfile1ใดfile1 # 2. ์ฝ๋๊ฐ ๋์ค๊ธฐ๊น์ง ๐ ๏ธ**`KEY WORD`: `์๋ฃ๊ตฌ์กฐ`, `์ ๋์จํ์ธ๋`** ## (0) ์๋ฃ ๊ตฌ์กฐ ์ธํ
ํด๋น ๋ฌธ์ ๋ ๋ค์๊ณผ ๊ฐ์ ์ด์ ๋ก HashMap 3๊ฐ์ ์ ๋์จ ํ์ธ๋์ฉ `parents` ๋ฐฐ์ด์ด ํ์ํ๋ค.1. ํด๋ ์ด๋ฆ๋ง ์ฃผ์ด์ง๋ค. ํด๋ ์ด๋ฆ์ผ๋ก๋ index ํ์ฉ ํ์ด๊ฐ ์ด๋ ต๋ค. - ๊ณ์ธต ๊ตฌ์กฐ ํํ ..
2025.07.22
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

[๋ฐฑ์ค] 22859 HTML ํ์ฑ ํ์ด
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/22859(1) ์กฐ๊ฑด ๋ถ์ ๐/* * 1. main ํ๊ทธ ์ง์ฐ๊ธฐ v* 2. div ๋ณ๋ก ๊ตฌ๋ถ v* 3. div์์ title ์ถ์ถํด์ ์ถ๋ ฅ v* 4. div ๋ด๋ถ์ Pํ๊ทธ ํ๋๋น ๋ค์ ๊ณผ์ ์งํ * (1) P ํ๊ทธ ๋ด๋ถ์ ๋ชจ๋ ํ๊ทธ ์ง์ฐ๊ธฐ * (2) ๋ฌธ์ฅ ์์๊ณผ ๋์ ๊ณต๋ฐฑ ์ง์ฐ๊ธฐ * (3) ๊ณต๋ฐฑ 2๊ฐ์ง๋ฆฌ๋ ํ๋๋ก ๋ฐ๊พผ๋ค. * (4) P ํ๊ทธ ์์ฒด๋ฅผ ์ง์ฐ๊ธฐ * */ 2. ์ฝ๋๊ฐ ๋์ค๊ธฐ๊น์ง ๐ ๏ธKEY WORD: ์ ๊ท ํํ์ ์ ๊ท ํํ์์ผ๋ก div ํ๊ทธ ์ถ์ถ -> title๋ง ๋นผ์ ์ถ๋ ฅ์ ๊ท ํํ์์ผ๋ก p ํ๊ทธ ์ถ์ถ -> ์์ 4๊ฐ์ง ๊ณผ์ ํ๊ณ ๊ธ๋ง ์ถ๋ ฅ(1)..
2025.07.21
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

[Java] Java์์ ์ ๊ท ํํ์ ํ์ฉํ๊ธฐ
0. ํ์ต ๋ชฉ์ ์ ๊ท ํํ์์ ํ์ฉํ ์ ์๋ Java ํด๋์ค๋ค์๋ ๋ฌด์์ด ์๋์ง ํ์
ํ๋ค. ํด๋น ํด๋์ค๋ค์ ๋งค์๋์ ๋ป๊ณผ ์ฌ์ฉ๋ฒ์ ์ตํ๋ค.1. ์ ๊ท ํํ์์ ํ์ฉํ ์ ์๋ Java ํด๋์คjava.util.regex์ ์๋ Pattern ํด๋์ค์ Matcher ํด๋์ค ํ์ฉString ํด๋์ค์ ์ ๊ท ํํ์ ์ฌ์ฉ ๊ฐ๋ฅ ๋งค์๋ ํ์ฉ2. Pattern๊ณผ Matcher ์ดํดํ๊ธฐ(1) Pattern ํด๋์ค์ ๊ท ํํ์์ ์ปดํ์ผํ์ฌ ๊ฐ์ง๊ณ ์๋ ํด๋์ค๋ถ๋ณ ๊ฐ์ฒด (ํ ๋ฒ ์ ๊ท ํํ์ ์
๋ ฅํด์ ์ปดํ์ผํ๋ฉด, ์ดํ ๋์ผ Pattern ๊ฐ์ฒด์ ์ ๊ท ํํ์์ ๋ฐ๊ฟ ์ ์๋ค.)Thread-Safe -> ์ฌ๋ฌ ์ค๋ ๋์์ ๊ฐ์ Pattern ๊ฐ์ฒด ๊ณต์ ๊ฐ๋ฅPattern ํด๋์ค๋ ์ ๊ท ํํ์์ ๋ด๊ณ ์๋ ์ญํ ๋ฐ์ ํ์ง ์๋๋ค. ๋ฌธ์์ด..
2025.07.21
Develop/BACK-END

[๋ฐฑ์ค] 22856 ํธ๋ฆฌ ์ํ java ํ์ด
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/22856(1) ์กฐ๊ฑด ๋ถ์ ๐์ค์ ์ํ๋ก ๋์ค๋ ๋ง์ง๋ง ๋
ธ๋๋ฅผ, ๋ฌธ์ ์์ ์ฃผ์ด์ง ์กฐ๊ฑด์ธ '์ ์ฌ ์ค์ ์ํ' ๋ฐฉ์์ผ๋ก ๋
ธ๋๋ฅผ ์ํ ํ์ ๋, ๋ช ๋ฒ์ ์ด๋๋ง์ ์ค์ ์ํ ์ ๋ง์ง๋ง ๋
ธ๋์ ๋๋ฌํ ์ ์๋์ง ์ด๋ ํ์๋ฅผ ๊ตฌํด๋ผ์ฌ๊ธฐ์ ์ด๋์ด๋ ํ๋์ใ
ข ๋
ธ๋์์ ๋ค๋ฅธ ๋
ธ๋๋ก ํ ๋ฒ ์์ง์ด๋ ํ์์ด๋ค.2. ์ฝ๋๊ฐ ๋์ค๊ธฐ๊น์ง ๐ ๏ธKEY WORD: DFS ์ค์ ์ํ ๋ง์ง๋ง ๋
ธ๋ ๊ตฌํ๊ธฐ์ ์ฌ ์ค์ ์ํ ๊ตฌํํด์ ๋ง์ง๋ง ๋
ธ๋๊น์ง์ ๋ฐฉ๋ฌธ ํ์ ๊ตฌํ๊ธฐ(1) ์๊ฐ๋ณต์ก๋ ๋ถ์ โณ์ต๋ ๋
ธ๋ ๊ฐ์๊ฐ $100,000$ ๊ฐ ์ธ๋ฐ, DFS๋ $O(V + E)$ ์์ผ๋ก, $200,000$ ๊ฐ๋ฅผ ์ ๋๋๋ค.3. ์ฝ๋ ๐import java.i..
2025.07.19
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

String Constant Pool: String ๊ฐ์ฒด๊ฐ ์ ์ฅ๋๋ ๊ณณ
0. ํ์ต ๋ชฉ์ String Constant Pool ์ด๋ผ๋ ๊ฐ๋
์ ๋ํด์ ์ดํดํ๋ค.String์ ์ ๋ถ๋ณ ๊ฐ์ฒด๋ก ๋ง๋ค์๋์ง ์ ์ถํ๋ค.1. String Constant Pool ์ด๋?JVM Heap์ ์กด์ฌํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ผ๋ก ๋ถ๋ณ ๊ฐ์ฒด์ธ String ๋ฆฌํฐ๋ด ์ ์ฉ ์ ์ฅ ๊ณต๊ฐ ์ด๋ค.ํ๋ก๊ทธ๋จ ๋ด๋ถ์์ ์ ์ธ๋ ๋ชจ๋ String ๋ฆฌํฐ๋ด์ String Constant Pool์ ์ ์ฅ๋๋ค.2. ํน์งString Literal ๋ง ์ ์ฅPool์ ์กด์ฌํ๋ ๋ฌธ์์ด์ด ์ฌ ์ ์ธ๋๋ฉด, ์๋ก ํ ๋นํ์ง ์๊ณ ์๋ ๊ฑฐ ์ฌํ์ฉ (1) String Literal ๋ง ์ ์ฅํ๋ค.String ๊ฐ์ฒด ์ ์ธ ๋ฐฉ์์ 2๊ฐ๋ก ๋๋๋ค.// ๋ฆฌํฐ๋ด ๋ฐฉ์ ์ ์ธString str1 = "Hello World";// ๊ฐ์ฒด ๋ฐฉ์ ์ ์ธString str2 = new..
2025.07.18
Develop/BACK-END

Java์ String
0. ํ์ต ๋ชฉ์ String์ ๋ถ๋ณ ๊ฐ์ฒด์์ ์ดํดํ๋ค.์ ์ฉํ String ํด๋์ค ํจ์๋ฅผ ์์๋ฌ์ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ํ ๋ ์ ์ฉํ๋ค.1. String์ ํน์ง : ๋ถ๋ณ์ฑString ๊ฐ์ฒด์ ๊ฐ์ฅ ํฐ ํน์ง์ ๋ถ๋ณ์ฑ์ด ๋ณด์ฅ ๋๋ ๊ฐ์ฒด ๋ผ๋ ๊ฒ์ด๋ค.(1) final ํด๋์ค๋ก ์ ์ธ๋จfinal ํด๋์ค๋ก ์ ์ธ๋์ด ์์ด์ ์์์ด ๋ถ๊ฐ๋ฅํ๋ค.(2) ๊ฐ์ ๋ด๋ ๋ฉค๋ฒ ๋ณ์๋ private final ์String ๋ฌธ์์ด์ ์ค์ง์ ๊ฐ์ ๋ด๋ byte ๋ฐฐ์ด๋ private final๋ก ์ ์ธ๋์ด ์๋ค. ์ด ๋๋ฌธ์, String ๊ฐ์ฒด๊ฐ ํ ๋ฒ ์ ์ธ๋๋ฉด, ์ดํ ์๋ก์ด ๊ฐ์ ์ฌํ ๋น ํ ์ ์๋ค.(3) ๊ทธ๋ ๋ค๋ฉด ๋ฌธ์์ด ๋ณ๊ฒฝ ์ฝ๋๋ ํจ์๋ ์ด๋ป๊ฒ ์๋ํ ๊น?์๋์ String ๊ฐ์ฒด์ ๊ฐ์ด ์ถ๊ฐ๋๋ ๊ฒ์ด ์๋๋ผ, ์๋ก์ด String ๊ฐ์ฒด๊ฐ ๋ง๋ค์ด์ง..
2025.07.18
Develop/BACK-END

[๋ฐ์ดํฐ ๋ฒ ์ด์ค] Multi Range Read
0. ํ์ต ๋ชฉ์ MRR ์ต์
์ด ๋ฌด์์ธ์ง, ์๋ ์๋ฆฌ๊ฐ ์ด๋ป๊ฒ ๋๋์ง ์ดํดํ๋ค.MRR๊ณผ BKA์ ๊ด๊ณ๋ฅผ ์ดํดํ๋ค.BKA์ ์๋ ์๋ฆฌ์ ๋ํด ์ดํดํ๋ค. 1. MRR (Multi-Range-Read) ์ด๋?๋๋ค I/O ์ ๊ทผ์ ์์ฐจ I/O ์ ๊ทผ์ผ๋ก ๋ณํํ์ฌ ์ฝ๊ธฐ ์๋๋ฅผ ์ต์ ํํ๋ ์ ๋ต์ด๋ค. 2. MRR ์๋ ์๋ฆฌ-- ํ
์ด๋ธ ์์ฑCREATE TABLE employees ( emp_no INT PRIMARY KEY, last_name VARCHAR(50), department VARCHAR(50), salary INT, hire_date DATE, INDEX idx_hire_date (hire_date))engine='innodb';-- ์คํํ ์ฟผ๋ฆฌSELECT * FROM employ..
2025.07.17
Computer Science/๋ฐ์ดํฐ๋ฒ ์ด์ค

[๋ฐ์ดํฐ ๋ฒ ์ด์ค] BNL ์กฐ์ธ์ ์ ์์ ์๋ ๋ฐฉ์
0. ํ์ต ๋ชฉ์ BNL ์กฐ์ธ์ ๋์ ๊ณผ์ ์ ๋ํด ์ดํดํ๋ค.BNL ์กฐ์ธ์ด ์ ํด์ ์กฐ์ธ์ด๋ ๋จธ์ง ์ํธ ์กฐ์ธ์ ์ํด ๋ฐ๋ ค๋ฌ๋์ง ์ดํดํ๋ค.BNL ์กฐ์ธ๊ณผ BKA ์กฐ์ธ์ ์ฐจ์ด์ ์ ๋ํด ์ดํดํ๋ค.1. BNL ์กฐ์ธ์ด๋?์กฐ์ธ ๋ฒํผ๋ฅผ ํ์ฉํ์ฌ ๋๋ฆฌ๋ธ ํ
์ด๋ธ ์ค์บ ํ์๋ฅผ ์ค์ด๋ ์กฐ์ธ ๋ฐฉ์.๋๋ผ์ด๋น ํ
์ด๋ธ์ ์ ํจํ ๋ ์ฝ๋ ํ๋ ๋น, ๋๋ฆฌ๋ธ ํ
์ด๋ธ ์ ์ฒด๋ฅผ ์ค์บํด์ผ ํ๋ NL ์กฐ์ธ์ ์ฆ์ ์ค์บ ํ์๋ฅผ ์ค์ด๊ณ ์ ๋์จ ๋ฐฉ์์ด๋ค.2. BNL ์กฐ์ธ์ ๋์ ๊ณผ์ ๋๋ผ์ด๋น ํ
์ด๋ธ์์ ์ ํจํ ๋ ์ฝ๋๋ฅผ ๋ฐ๊ฒฌํ๋ฉด, '์กฐ์ธ์ ํ์ํ ์ปฌ๋ผ๋ง' ์กฐ์ธ ๋ฒํผ์ ์ ์ฅ์กฐ์ธ ๋ฒํผ๊ฐ ๊ฐ๋์ฐจ๊ฑฐ๋, ๋๋ผ์ด๋น ํ
์ด๋ธ ์ฝ๊ธฐ๊ฐ ๋๋๋ฉด ๋ค์ ๊ณผ์ ์ ์งํ๋๋ฆฌ๋ธ ํ
์ด๋ธ์ ๋ ์ฝ๋๋ฅผ ์ํํ๋ฉฐ ์ ํจํ ๋ ์ฝ๋๋ฅผ ๋ง๋ฌ์ ๊ฒฝ์ฐ, ์กฐ์ธ ๋ฒํผ๋ฅผ ์ ์ฒด ์ํํ๋ค.ํ์ฌ์ ๋๋ฆฌ๋ธ ๋ ์ฝ๋์ ๋งค์นญ๋๋..
2025.07.17
Computer Science/๋ฐ์ดํฐ๋ฒ ์ด์ค

[๋ฐ์ดํฐ ๋ฒ ์ด์ค] BKA ์กฐ์ธ์ ์ ์์ ์๋๋ฐฉ์๋ฐ์ดํฐ ๋ฒ ์ด์ค] BKA ์กฐ์ธ์ ์ ์์ ์๋๋ฐฉ์
0. ํ์ต ๋ชฉ์ BKA ์กฐ์ธ์ ์๋ ์๋ฆฌ๋ฅผ ์ดํดํ๋ค. BNL ์กฐ์ธ๊ณผ์ ์ฐจ์ด์ ์ ์ดํดํ๋ค. 1. BKA (Batch-Key-Access) ์กฐ์ธ์ด๋?์กฐ์ธ ๋ฒํผ์ MRR ์ธํฐํ์ด์ค๋ฅผ ํ์ฉํ์ฌ, Nested Loop Join์์ ๋ฌธ์ ๊ฐ ๋๋ ๋๋ฌด ๋ง์ ๋๋ค I/O ์ ๊ทผ์ ํ ๋ฒ์ ์์ฐจ I/O๋ก ์ ํํ์ฌ ์ต์ ํํ๋ ์กฐ์ธ์ ๋ต์ ๋งํ๋ค.2. BKA ์กฐ์ธ์ ๊ณผ์ ๋๋ผ์ด๋น ํ
์ด๋ธ ์ค์บ ํ ์กฐ์ธ ๋ฒํผ ์ ์ฌKey Build (์กฐ์ธ๋ฒํผ ๊ฐ ํ์ (์กฐ์ธ ์ปฌ๋ผ, ์กฐ์ธ ๋ฒํผ ์ ์์น offset) ํํ์ ์ถ์ถํด ๋๋ค ๋ฒํผ์ ์ ์ฌ) MRR ์ธํฐํ์ด์ค ํธ์ถ (๋๋ฆฌ๋ธ ํ
์ด๋ธ์ ์กฐ์ธ ์ปฌ๋ผ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ณด์กฐ ์ธ๋ฑ์ค ํ์ฉํ์ฌ PK ๊ฐ ์ถ์ถ ๋ฐ ์ ๋ ฌ) MRR ์ธํฐํ์ด์ค๊ฐ ๋๋ฆฌ๋ธ ๋ณธ ํ
์ด๋ธ (ํด๋ฌ์คํฐ๋ง ํ
์ด๋ธ)์ 3๋ฒ์์ ์ ๋ ฌํ PK ๊ฐ ์์ผ๋ก ์..
2025.07.17
Computer Science/๋ฐ์ดํฐ๋ฒ ์ด์ค

[๋ฐฑ์ค] 21922 ํ๋ถ ์ฐ๊ตฌ์ ๋ฏผ์ java ํ์ด
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/21922(1) ์กฐ๊ฑด ๋ถ์ ๐๋ฌธ์ ์ ๋์จ ๋ฌผ๊ฑด 4๊ฐ์ง์ ๋ฐ๋ผ ๋ฐ๋์ ๋ฐฉํฅ์ด ๋ฐ๋๋ ๊ฒ์ ๋ํ๋ด๋ ๊ฒ ๊ด๊ฑด์ด๋ค.2. ์ฝ๋๊ฐ ๋์ค๊ธฐ๊น์ง ๐ ๏ธKEY WORD: ์๋ฎฌ๋ ์ด์
, BFS ๋งค๋ฒ ์ฌ๋ฐฉ ํ์ํ๋ ๊ฒ์ด ์๋๊ณ , ์ด๊ธฐ์ ์ ํ ๋ฐฉํฅ์ ๋ฌผ๊ฑด์ ๋ง๋์ง ์๋ ํ ์ ์งํด์ผ ํ๋ค.๋ฌผ๊ฑด์ ๋ง๋๋ฉด, ๊ทธ๊ฒ์ ๋ง๊ฒ ๋ฐฉํฅ์ ๋ฐ๊ฟ์ค์ผ ํ๋ค.๋ฐฉํฅ ๋ฐฐ์ด์ ์ผ๊ณ , ๊ฐ ๋ฌผ๊ฑด๋ง๋ค ํจ์ํํ์ฌ ๊ทธ๊ฒ์ ๋ง๊ฒ ๋ฐฉํฅ์ ๋ฐ๊ฟ์ฃผ๋ ๊ฒ์ผ๋ก ๊ตฌํํ๋ค.(1) ์๊ฐ๋ณต์ก๋ ๋ถ์ โณ์ต์
์ ๊ฒฝ์ฐ 4๋ฐฉ ์์ง์ ๋ชจ๋๊ฐ ์ ์ฒด ์ฐ๊ตฌ์ค์ ๋ ์๋ ์๋ค. ๊ทธ ๊ฒฝ์ฐ๋ฅผ ๊ณ์ฐํด๋ณด๋ฉด,$2,000 \times 2,000 \times 4 = 16,000,000$ ๋ฒ์ ์ฐ์ฐ ํ์๊ฐ ๋๋ค.3..
2025.07.15
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

[๋ฐฑ์ค] 20165 ์ธ๋ด์ ๋๋ฏธ๋
ธ ์ฅ์ธ ํธ์
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/20165(1) ์กฐ๊ฑด ๋ถ์ ๐ํด์ด ์กด์ฌํ๊ณ , ๋งค ํด๋ง๋ค ๊ณต๊ฒฉ์๊ฐ ๊ณต๊ฒฉํ๊ณ , ์๋น์๊ฐ ์๋นํ๋ค.๊ณต๊ฒฉ์์ ํ๋์ ๋ค์๊ณผ ๊ฐ๋ค.ํน์ ๋๋ฏธ๋
ธ๋ฅผ ๋์๋จ๋ถ ์ค ํ ๋ฐฉํฅ์ผ๋ก ๋์ดํธ๋ฆฐ๋ค.ํด๋น ๋๋ฏธ๋
ธ์ ๊ธธ์ด-1๋งํผ ๊ทธ ๋ฐฉํฅ์ ๋๋ฏธ๋
ธ๊ฐ ๋์ด์ง๋ค.์ฐ์์์ฉ์ด ์ผ์ด๋๋ค. (์ฆ ๋์ด์ง ๋๋ฏธ๋
ธ์ ๊ธธ์ด๋งํผ ๊ทธ ์ดํ ๋๋ฏธ๋
ธ๊ฐ ์ถ๊ฐ๋ก ๋ ๋์ด์ง๊ณ , ์ด๊ฒ์ด ๋ ์ด์ ๋์ด์ง ๋๋ฏธ๋
ธ๊ฐ ์์ ๋๊น์ง ๋ฐ๋ณตํ๋ค.) ์๋น์๋ ๋๋ฏธ๋
ธ ํ๋๋ฅผ ์ผ์ผ์ผ ์ธ์ด๋ค.2. ์ฝ๋๊ฐ ๋์ค๊ธฐ๊น์ง ๐ ๏ธKEY WORD: ์๋ฎฌ๋ ์ด์
, BFS ๊ณต๊ฒฉ์ ๊ตฌํํ ์ ์๋๋๊ฐ ๋ฌธ์ ํ์ด์ ๊ด๊ฑด์ด์๋ค.ํ์๋ ์ฌ๊ท๊ฐ ์๊ฐ ์๋ชจ๋ฅผ ๋์ด๊ณ ๊ณ์ฐ์ ๋ณต์กํ๊ฒ ๋ง๋ค ๊ฒ์ด๋ผ ํ๋จ๋์ด BFS๋ก ์ด๋ฅผ ..
2025.07.15
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

[๋ฐฑ์ค] 20164 ํ์ ํ๋ฆญ ํธ์ java ํ์ด
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/20164(1) ์กฐ๊ฑด ๋ถ์ ๐ํ์ฌ ์กฐํ ์ค์ธ ์์ ์๋ฆฟ์ ์ค ํ์ ์ธ ์๋ฆฟ์์ ๊ฐ์ ์ธ๊ธฐ๊ณ์ฐ์ ๋ค์๊ณผ ๊ฐ์ด ์งํํ์ฌ ๋ณด๋ ์์ ์๋ฆฟ์๊ฐ 1์ด๋ฉด ๊ณ์ฐ ์ข
๋ฃ์๋ฆฟ์๊ฐ 2์ด๋ฉด ๋๊ฐ๋ก ์ชผ๊ฐ์ ๋ํ ๋ค์ 1๋ฒ๋ถํฐ ๋ค์ ์์์๋ฆฟ์๊ฐ 3์ด์์ด๋ฉด ์์๋ก 3๋ฉ์ด๋ฆฌ์ ์ซ์๋ก ์ชผ๊ฐ ๋ค ์ ๋ถ ๋ํ๊ธฐ. ์ดํ 1๋ฒ๋ถํฐ ๋ค์ ์์2. ์ฝ๋๊ฐ ๋์ค๊ธฐ๊น์ง ๐ ๏ธKEY WORD: ์๋ฎฌ๋ ์ด์
, ์ํ๋ฌธ์ ์์ ์ ์๋ ์กฐ๊ฑด์ ์ ๋ถ ํํํ๋ฉด ๋๋ค. ์๋ฆฟ์๊ฐ ์ต๋ 9๊ฐ์ด๊ณ , ์ฌ๊ท๋ฅผ ๊ฑฐ๋ญํ ์๋ก ์๋ฆฟ์์ ๊ฐ์๋ ์ค์ด๋ค ๊ฒ์ด๋ฏ๋ก, ์๊ฐ ์ด๊ณผ ๊ฑฑ์ ์ ์๋ค.3. ์ฝ๋ ๐import java.io.*;import java.util.*;public class Mai..
2025.07.15
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

๋ฐฑ์ค 17837 ์๋ก์ด ๊ฒ์ 2 Java ํ์ด
1. ๋ฌธ์ ์ ๋ํ์ฌ ๐ฆ๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/17837(1) ์กฐ๊ฑด ๋ถ์ ๐A. ๋ง์ ๋ํ ๊ท์น๋ง์ ๊ฐ์ ๋์๊ฐ๋ ค๋ ๋ฐฉํฅ์ด ์๋ค.ํ๋์ ์นธ์ ์ฌ๋ฌ ๋ง์ด ์์ ์, ์ท๋์ด์ฒ๋ผ ๊ธฐ์กด์ ์๋ ๋ง์ด ์๋ก ํด๋น ์นธ์ ์จ ๋ง์ ์
๋๋ค. (stack)ํ๋์ ๋ง์ด ์์ ์ ๋ฐฉํฅ์ผ๋ก ์์ง์ผ ๋ ์
ํ ๋ง๋ค๋ ๊ฐ์ด ์์ง์ธ๋ค. (์ด๋ ์์ ์ ๋์๊ฐ๋ ค๋ ๋ฐฉํฅ์ ๋ฐ๋์ง ์๋๋ค.)๋ง๋ค์ ์์ ์ด ๋์๊ฐ ๋ค์ ์นธ์ ์๊น์ ๋ฐ๋ผ ํ๋์ด ๋ฏธ์ธํ๊ฒ ๋ฐ๋๋ค.B. ๋ณด๋ ์นธ ๋ณ ๊ท์นํฐ ์นธ์ ๋ฐ์ ๊ฒฝ์ฐ, ์
์ ๋ง ์ ๋ถ ๊ฐ์ด ์์ง์ด๋ ๊ฑฐ ์ธ์ ํน์ด ์ฌํญ ์์๋นจ๊ฐ ์นธ์ ๋ฐ์ ๊ฒฝ์ฐ, ์์ ์ ํฌํจํ ์
์ ๋ง๋ค์ ์์น๊ฐ ๊ฑฐ๊พธ๋ก ๋์ด์ผ ํ๋ค.(exA->B->C (TOP) ์์ผ๋ก ์
ํ ์์๋ค๋ฉด, C -> B -..
2025.07.15
CodingTest/์๊ณ ๋ฆฌ์ฆ-ํ์ด

[๋ฐฑ์๋] Spring์์์ IoC ๊ตฌํ
0. ํ์ต ๋ชฉ์ Spring์์ ์ ์ด์ ์ญ์ ์ ์ด๋ป๊ฒ ๊ตฌํํ๋์ง ์ดํดํ๋ค.Spring์์ ๊ฐ์ฒด์ ์์ฑ๊ณผ ๊ด๋ฆฌ๋ฅผ ๋ด๋นํ๋ ์ปจํ
์ด๋๋ฅผ ์ด๋ป๊ฒ ์์ฑํ๋์ง ์ดํดํ๋ค.Spring์์ ๊ฐ์ฒด๋ฅผ ์ด๋ป๊ฒ ํด๋น ์ปจํ
์ด๋์ ๋ฑ๋กํ๋์ง ์ดํดํ๋ค.Spring์์ ์ด๋ป๊ฒ ๊ฐ์ฒด๋ฅผ ์ฃผ์
ํ๋์ง ์ดํดํ๋ค.1. Spring์์๋ IoC๋ฅผ ์ด๋ป๊ฒ ๊ตฌํํ๋๊ฐ?Spring์์๋ Spring IoC Container๋ผ๋ ๊ฐ์ฒด ์์ฑ๊ณผ ๊ด๋ฆฌ ์ ์ฉ ์ปจํ
์ด๋๋ฅผ ๋ง๋ค์ด์ IoC๋ฅผ ๊ตฌํํ์๋ค. Spring์์ IoC๊ฐ ์ด๋ฃจ์ด์ง๋ ๊ณผ์ ์ ๊ทธ๋ ค๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.์ถ์ฒ: javaguide.net๊ณผ์ ์ ๋ง๋ก ํ์ด๋ณด๋ฉด,ํ๋ก๊ทธ๋จ ์์ ์, Spring IoC Cotainer๊ฐ ApplicationContext ๊ตฌํ์ฒด๋ก ์์ฑ๋๋ค.์ปจํ
์ด๋๊ฐ ์์ฑํ๊ณ ๊ด๋ฆฌํ ๊ฐ์ฒด๋ฅผ ์ฐพ๋๋ค...
2025.07.14
Develop/BACK-END