[Java] ์๋ฃ๊ตฌ์กฐ (Data Structures) - Collection 2. Set ๊ณ์ด
๐ Java์ ์๋ฃ๊ตฌ์กฐArray โโ ๊ธฐ๋ณธ ์๋ฃ๊ตฌ์กฐ, ํฌ๊ธฐ ๊ณ ์ , ์ธ๋ฑ์ค ์ ๊ทผ O(1), ์ฝ์
/์ญ์ O(n) โโ ArrayList ๋ด๋ถ ๊ตฌํ์์ ์ฌ์ฉ๋จCollection (java.util.Collection ์ธํฐํ์ด์ค) โโ List โ โโ ArrayList (๋์ ๋ฐฐ์ด, ์ธ๋ฑ์ค ์ ๊ทผ ๋น ๋ฆ, ์ค๊ฐ ์ฝ์
/์ญ์ ๋๋ฆผ) โ โโ LinkedList (์ด์ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ, ์๋ ์ฝ์
/์ญ์ ๋น ๋ฆ, ๋๋ค ์ ๊ทผ ๋๋ฆผ) โ โโ CopyOnWriteArrayList (์ฐ๊ธฐ ์ ์ ์ฒด ๋ณต์ฌ, ์ฝ๊ธฐ ๋น ๋ฆ, ์ฐ๊ธฐ ๋๋, ๋์์ฑ ์์ ) โ โโ Set โ โโ HashSet (ํด์ ๊ธฐ๋ฐ, ์์ ์์, ์ค๋ณต ๋ถ๊ฐ) โ โโ LinkedHas..
2025. 9. 5.
[๊ธฐ์ด ์ํ 1] GCD/LCM (์ต๋๊ณต์ฝ์, ์ต์๊ณต๋ฐฐ์)
๐ ๊ฐ๋
1. ์ต๋๊ณต์ฝ์(GCD)๋ ์๋ฅผ ๋์์ ๋๋ ์ ์๋ ๊ฐ์ฅ ํฐ ์.์) 12์ 18 → ๊ณต์ฝ์๋ {1,2,3,6}, ๊ทธ์ค ์ต๋๊ฐ = 6 2. ์ต์๊ณต๋ฐฐ์(LCM) ๋ ์๊ฐ ๋์์ ๋๋ ๋จ์ด์ง๋ ๊ฐ์ฅ ์์ ์์) 12์ 18 → ๋ฐฐ์ ์งํฉ์ {12,24,36,48,60,...}, {18,36,54,72,...} ๊ณตํต ๋ฐฐ์๋ {36,72,108,...}, ๊ทธ์ค ์ต์๊ฐ = 36 ๐ค ์ ์ฝ๋ฉํ
์คํธ์์ ์ค์ํ ๊น?๋ถ์/๋น์จ ๋จ์ํ์ฃผ๊ธฐ ๋ฌธ์ ๋ฐฐ์ด์ ๊ณตํต ์ฑ์ง์ค๋ณต ์ฒ๋ฆฌ ์ต์ํํนํ LCM์ ์ฌ๋ฌ ์์
์ ๋์ ์์ ๊ณ์ฐ์ ์์ฃผ ๋ฑ์ฅํ๋ค. ๐งฎ ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ (Euclidean Algorithm)1. ์ ์: ๋ ์์ ์ต๋๊ณต์ฝ์(GCD)๋ฅผ ๊ตฌํ๋ ์๊ณ ๋ฆฌ์ฆ 2. ์๋ฆฌ: ํฐ ์๋ฅผ ์์ ์๋ก ๊ณ์ ๋๋๋ค ๋ณด๋ฉด,..
2025. 9. 3.