728x90

ํ”„๋กœ๊ทธ๋ž˜๋ฐ 33

[Java] ์ž๋ฐ”์˜ ์ ‘๊ทผ ์ง€์ •์ž (private, protected, public, default), static ๋ฉค๋ฒ„, final ํด๋ž˜์Šค

์ ‘๊ทผ ์ง€์ •์ž private, protected, public, ๋””ํดํŠธ(์ ‘๊ทผ ์ง€์ •์ž ์ƒ๋žต) ๋ชฉ์  ํด๋ž˜์Šค๋‚˜ ์ผ๋ถ€ ๋ฉค๋ฒ„๋ฅผ ๊ณต๊ฐœํ•˜์—ฌ ๋‹ค๋ฅธ ํด๋ž˜์Šค์—์„œ ์ ‘๊ทผํ•˜๋„๋ก ํ—ˆ์šฉ ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด์˜ ์บก์Šํ™” ์ •์ฑ…์€ ๋ฉค๋ฒ„๋ฅผ ๋ณดํ˜ธํ•˜๋Š” ๊ฒƒ ํด๋ž˜์Šค ์ ‘๊ทผ ์ง€์ • ๋‹ค๋ฅธ ํด๋ž˜์Šค์—์„œ ์‚ฌ์šฉํ•˜๋„๋ก ํ—ˆ์šฉํ•  ์ง€ ์ง€์ • public ํด๋ž˜์Šค -> ๋‹ค๋ฅธ ๋ชจ๋“  ํด๋ž˜์Šค์—๊ฒŒ ์ ‘๊ทผ ํ—ˆ์šฉ ๋””ํดํŠธ ํด๋ž˜์Šค -> ์ ‘๊ทผ ์ง€์ •์ž ์ƒ๋žต, package-private๋ผ๊ณ ๋„ ํ•จ, ๊ฐ™์€ ํŒจํ‚ค์ง€์˜ ํด๋ž˜์Šค์—๋งŒ ์ ‘๊ทผ ํ—ˆ์šฉ ๋งด๋ฒ„ ์ ‘๊ทผ ์ง€์ • public ํŒจํ‚ค์ง€์— ๊ด€๊ณ„ ์—†์ด ๋ชจ๋“  ํด๋ž˜์Šค์—์„ธ ์ ‘๊ทผ ํ—ˆ์šฉ private ๋™์ผ ํด๋ž˜์Šค ๋‚ด์—๋งŒ ์ ‘๊ทผ ํ—ˆ์šฉ ์ƒ์†๋ฐ›์€ ์„œ๋ธŒ ํด๋ž˜์Šค์—์„œ ์ ‘๊ทผ ๋ถˆ๊ฐ€ protected ๊ฐ™์€ ํŒจํ‚ค์ง€ ๋‚ด์˜ ๋‹ค๋ฅธ ๋ชจ๋“  ํด๋ž˜์Šค์—์„ธ ์ ‘๊ทผ ํ—ˆ์šฉ ์ƒ์† ๋ฐ›์€ ์„œ๋ธŒ ํด๋ž˜์Šค๋Š” ๋‹ค๋ฅธ ํŒจํ‚ค์ง€์— ์žˆ์–ด๋„ ..

[Java] ์ž๋ฐ”์˜ ๊ฐ์ฒด ์†Œ๋ฉธ, ๊ฐ€๋น„์ง€, ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜

๊ฐ์ฒด ์†Œ๋ฉธ ๊ฐ์ฒด ์ƒ์„ฑ ์—ฐ์‚ฐ์ž new ๋กœ ํ• ๋‹น ๋ฐ›์€ ๊ฐ์ฒด์™€ ๋ฐฐ์—ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ JVM(์ž๋ฐ” ๊ฐ€์ƒ ๊ธฐ๊ณ„)๋กœ ๋˜๋Œ๋ ค ์ฃผ๋Š” ํ–‰์œ„ ์†Œ๋ฉธ๋œ ๊ฐ์ฒด ๊ณต๊ฐ„์€ ๊ฐ€์šฉ ๋ฉ”๋ชจ๋ฆฌ์— ํฌํ•จ ์ž๋ฐ”๋Š” ์‚ฌ์šฉ์ž ์ž„์˜๋กœ ๊ฐ์ฒด ์†Œ๋ฉธ ์•ˆ๋จ -> ๊ฐ์ฒด ์†Œ๋ฉธ ์—ฐ์‚ฐ์ž ์—†์Œ JVM(์ž๋ฐ” ๊ฐ€์ƒ ๊ธฐ๊ณ„)์˜ ๊ณ ์œ ํ•œ ์—ญํ•  ๊ฐ€๋น„์ง€ ๋ ˆํผ๋Ÿฐ์Šค๊ฐ€ ํ•˜๋‚˜๋„ ์—†๋Š” ๊ฐ์ฒด -> ๋” ์ด์ƒ ์ ‘๊ทผํ•  ์ˆ˜ ์—†์–ด ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜ JVM์˜ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ๊ฐ€๋น„์ง€ ์ˆ˜์ง‘, ๋ฐ˜ํ™˜ ๊ฐ€์šฉ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์ด ์ผ์ • ์ดํ•˜๋กœ ๋ถ€์กฑํ•ด์งˆ ๋•Œ ๊ฐ€๋น„์ง€๋ฅผ ์ˆ˜๊ฑฐํ•ด ๊ฐ€์šฉ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์œผ๋กœ ํ™•๋ณด ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ์— ์˜ํ•ด ์ž๋™ ์ˆ˜ํ–‰ ๊ฐ•์ œ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜ ์ˆ˜ํ–‰ System ๋˜๋Š” Runtime ๊ฐ์ฒด์˜ gc() ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ gc() ๋ฉ”์†Œ๋“œ -> JVM์˜ ๊ฐ•๋ ฅํ•œ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜ ์š”์ฒญ ํ•˜์ง€๋งŒ JVM์ด ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰..

[HackerRank] Java Warmup

https://www.hackerrank.com/domains/algorithms?filters%5Bsubdomains%5D%5B%5D=warmup Solve Algorithms | HackerRank Solve Algorithms | HackerRank We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies. www.hackerrank.com SimpleArraySum ArrayList์˜ ํฌ๊ธฐ๋Š” .size()๋กœ ๊ตฌํ•˜๊ธฐ (.length ๋ชป์”€!!) ArrayList์˜ ์›์†Œ ์ ‘๊ทผ .get(..

[Java] ์ƒ์„ฑ์ž ๊ฐœ๋…๊ณผ ๋ชฉ์ , this ๋ ˆํผ๋Ÿฐ์Šค, this() ํ˜ธ์ถœ

์ƒ์„ฑ์ž ๊ฐœ๋…๊ณผ ๋ชฉ์  ์ƒ์„ฑ์ž ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ์ดˆ๊ธฐํ™” ๋ชฉ์ ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ๋ฉ”์†Œ๋“œ ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋˜๋Š” ์ˆœ๊ฐ„์— ์ž๋™ ํ˜ธ์ถœ โ˜ž ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ˆ˜ํ–‰๋˜์–ด ๊ฐ์ฒด์˜ ์ดˆ๊ธฐํ™”๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ๊ฒƒ ๋‘ ๊ฐœ์˜ ์ƒ์„ฑ์ž๋ฅผ ๊ฐ€์ง„ Circle ํด๋ž˜์Šค ์˜ˆ์ œ (๊ฐ์ฒด์ง€ํ–ฅ์˜ ํŠน์ง•์ธ ๋‹คํ˜•์„ฑ๋„ ์—ฟ๋ณผ ์ˆ˜ ์žˆ์Œ) public class Circle { int radius; String name; public Circle { // ๋งค๊ฐœ ๋ณ€์ˆ˜ ์—†๋Š” ์ƒ์„ฑ์ž // ์ƒ์„ฑ์ž ์ด๋ฆ„์€ ํด๋ž˜์Šค ์ด๋ฆ„๊ณผ ๊ฐ™์Œ radius = 1; name = ""; } public Circle(int r, String t) { // ๋งค๊ฐœ ๋ณ€์ˆ˜ ๊ฐ€์ง„ ์ƒ์„ฑ์ž radius = r; name = t; } public double getArea() { return 3.14 * radiu..

1๋กœ๋งŒ๋“ค๊ธฐ (๋ฐฑ์ค€1463)

https://www.acmicpc.net/problem/1463 1463๋ฒˆ: 1๋กœ ๋งŒ๋“ค๊ธฐ ์ฒซ์งธ ์ค„์— 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 106๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net Dnamic Programming(๋™์ ๊ณ„ํš๋ฒ•)์€ ๋ฉ”๋ชจ์ด์ œ์ด์…˜ ํ†ตํ•ด ์ค‘๋ณต๊ณ„์‚ฐ๊ฐ’์„ ์ €์žฅํ•ด ํšจ์œจ์„ ๋†’์—ฌ์ค€๋‹ค. 1) Python ์ด์šฉ # DP --> ๋ฉ”๋ชจ์ด์ œ์ด์…˜: ์ค‘๋ณต๊ณ„์‚ฐ๊ฐ’์„ ์ค„์—ฌ ํšจ์œจ ๋†’์—ฌ์คŒ n = int(input()) d = [0] * (n + 1) # d์— ๊ณ„์‚ฐ๊ฐ’ ์ €์žฅ # d[0] = 0, d[1] = 0 for i in range(2, n + 1): d[i] = d[i - 1] + 1 if i % 3 == 0: d[i] = min(d[i], d[i // 3] + 1) if i % 2 == 0: d[i] = ..

์—ฐ๊ฒฐ์š”์†Œ์˜๊ฐœ์ˆ˜ (๋ฐฑ์ค€ 11724)

์—ฐ๊ฒฐ ์š”์†Œ์˜ ๊ฐœ์ˆ˜ ๋ฌธ์ œ ๋ฐฉํ–ฅ ์—†๋Š” ๊ทธ๋ž˜ํ”„๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์—ฐ๊ฒฐ ์š”์†Œ (Connected Component)์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ •์ ์˜ ๊ฐœ์ˆ˜ N๊ณผ ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ M์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ M๊ฐœ์˜ ์ค„์— ๊ฐ„์„ ์˜ ์–‘ ๋์  u์™€ v๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ u, v ≤ N, u ≠ v) ๊ฐ™์€ ๊ฐ„์„ ์€ ํ•œ ๋ฒˆ๋งŒ ์ฃผ์–ด์ง„๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ์—ฐ๊ฒฐ ์š”์†Œ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ์˜ˆ์ œ ์ž…๋ ฅ 1 6 5 1 2 2 5 5 1 3 4 4 6 ์˜ˆ์ œ ์ถœ๋ ฅ 1 2 https://www.acmicpc.net/problem/11724 11724๋ฒˆ: ์—ฐ๊ฒฐ ์š”์†Œ์˜ ๊ฐœ์ˆ˜ ์ฒซ์งธ ์ค„์— ์ •์ ์˜ ๊ฐœ์ˆ˜ N๊ณผ ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ M์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 1,000,..

์ด๋ถ„ ๊ทธ๋ž˜ํ”„ (๋ฐฑ์ค€ 1707)

์ด๋ถ„๊ทธ๋ž˜ํ”„ ๋ชจ๋“  ๊ผญ์ง“์ ์„ ๋นจ๊ฐ•๊ณผ ํŒŒ๋ž‘์œผ๋กœ ์ƒ‰์น ํ•˜๋˜, ๋ชจ๋“  ๋ณ€์ด ๋นจ๊ฐ•๊ณผ ํŒŒ๋ž‘ ๊ผญ์ง“์ ์„ ํฌํ•จํ•˜๋„๋ก ์ƒ‰์น ํ•  ์ˆ˜ ์žˆ๋Š” ๊ทธ๋ž˜ํ”„ ์ด๋ถ„ ๊ทธ๋ž˜ํ”„์ธ์ง€ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ• ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS), ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰(DFS)์„ ์ด์šฉ → ์„œ๋กœ ์ธ์ ‘ํ•œ ์ •์ ์ด ๊ฐ™์€ ์ƒ‰์ด๋ฉด ์ด๋ถ„ ๊ทธ๋ž˜ํ”„ X 1. BFS, DFS๋กœ ํƒ์ƒ‰ํ•˜๋ฉด์„œ ์ •์ ์„ ๋ฐฉ๋ฌธํ•  ๋•Œ๋งˆ๋‹ค ๋‘ ๊ฐ€์ง€ ์ƒ‰ ์ค‘ ํ•˜๋‚˜๋ฅผ ์น ํ•œ๋‹ค. 2. ๋‹ค์Œ ์ •์ ์„ ๋ฐฉ๋ฌธํ•˜๋ฉด์„œ ์ž์‹ ๊ณผ ์ธ์ ‘ํ•œ ์ •์ ์€ ์ž์‹ ๊ณผ ๋‹ค๋ฅธ ์ƒ‰์œผ๋กœ ์น ํ•œ๋‹ค. 3. ํƒ์ƒ‰์„ ์ง„ํ–‰ํ•  ๋•Œ ์ž์‹ ๊ณผ ์ธ์ ‘ํ•œ ์ •์ ์˜ ์ƒ‰์ด ์ž์‹ ๊ณผ ๋™์ผํ•˜๋ฉด ์ด๋ถ„ ๊ทธ๋ž˜ํ”„๊ฐ€ ์•„๋‹ˆ๋‹ค. 4. BFS์˜ ๊ฒฝ์šฐ ์ •์ ์„ ๋ฐฉ๋ฌธํ•˜๋‹ค๊ฐ€ ๋งŒ์•ฝ ๊ฐ™์€ ๋ ˆ๋ฒจ์—์„œ ์ •์ ์„ ๋‹ค๋ฅธ ์ƒ‰์œผ๋กœ ์น ํ•ด์•ผ ํ•œ๋‹ค๋ฉด ๋ฌด์กฐ๊ฑด ์ด๋ถ„ ๊ทธ๋ž˜ํ”„๊ฐ€ ์•„๋‹ˆ๋‹ค. ๋ชจ๋“  ์ •์ ์„ ๋‹ค ๋ฐฉ๋ฌธํ–ˆ๋Š”๋ฐ ์œ„์™€ ๊ฐ™์€ ๊ฒฝ์šฐ๊ฐ€ ์—†๋‹ค๋ฉด ์ด๋ถ„ ๊ทธ๋ž˜ํ”„์ด๋‹ค. โ€ป ์ด..

[Java] ์ž๋ฐ” ๋ฐฐ์—ด, length, for-each๋ฌธ, 2์ฐจ์› ๋ฐฐ์—ด, ๋ฉ”์†Œ๋“œ์˜ ๋ฐฐ์—ด ๋ฆฌํ„ด

๋ฐฐ์—ด ์„ ์–ธ๊ณผ ์ƒ์„ฑ ๋ฐ ์ดˆ๊ธฐํ™” ๋ฐฉ๋ฒ• int intArray []; // ๋ฐฐ์—ด์— ๋Œ€ํ•œ ๋ ˆํผ๋Ÿฐ์Šค ๋ณ€์ˆ˜ intArray ์„ ์–ธ ๋ฐฉ๋ฒ• 1 int[] intArray; // ๋ฐฐ์—ด์— ๋Œ€ํ•œ ๋ ˆํผ๋Ÿฐ์Šค ๋ณ€์ˆ˜ intArray ์„ ์–ธ ๋ฐฉ๋ฒ• 2 intArray = new int [5]; // ์›์†Œ ๊ฐœ์ˆ˜๊ฐ€ 5์ธ int ํƒ€์ž…์˜ ๋ฐฐ์—ด ์ƒ์„ฑ ๋ฐฉ๋ฒ• 1 int intArray[] = new int[5]; // ์›์†Œ ๊ฐœ์ˆ˜๊ฐ€ 5์ธ int ํƒ€์ž…์˜ ๋ฐฐ์—ด ์ƒ์„ฑ ๋ฐฉ๋ฒ• 2 int intArray[] = {4, 3, 2, 1, 0}; // 5๊ฐœ์˜ ์ •์ˆ˜ ๋ฐฐ์—ด ์ƒ์„ฑ ๋ฐ ๊ฐ’ ์ดˆ๊ธฐํ™” ๋ ˆํผ๋Ÿฐ์Šค ์น˜ํ™˜๊ณผ ๋ฐฐ์—ด ๊ณต์œ  ๋ ˆํผ๋Ÿฐ์Šค ์น˜ํ™˜์œผ๋กœ ๋‘ ๋ ˆํผ๋Ÿฐ์Šค๊ฐ€ ํ•˜๋‚˜์˜ ๋ฐฐ์—ด ๊ณต์œ  int intArray[] = new int[5]; int myArray[] = intArray; // ..

728x90