๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

IT Blog404

Java ๊ด€๋ จ ๋ฉด์ ‘ ์ค€๋น„ 2 ์ž๋ฐ” ํŠน์ง• - JVM(Java Virtual Machine) JVM - ์‹œ์Šคํ…œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ด€๋ฆฌํ•˜๋ฉด์„œ ์ž๋ฐ” ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•ด ์ด์‹ ๊ฐ€๋Šฅํ•œ ์‹คํ–‰ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•œ๋‹ค. โ— ์–ด๋Š ์šด์˜์ฒด์ œ ์ƒ์—์„œ๋„ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. ์šด์˜์ฒด์ œ์— ๋…๋ฆฝ์ ์ด๋‹ค. ์ด์‹์„ฑ์ด ๋†’๋‹ค. โ— GC(Garbage Collection)์„ ํ†ตํ•ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ž๋™์œผ๋กœ ๊ด€๋ฆฌํ•œ๋‹ค. โ— JVM์€ ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. OOP(Object-Oriented Programming) - ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ์ฒด๋กœ ์ทจ๊ธ‰ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์— ๋ฐ˜์˜ํ•œ ๊ฒƒ, ์ธ๊ฐ„์˜ ์‚ฌ๊ณ ์™€ ๋น„์Šทํ•œ ์ ‘๊ทผ. ๊ฐ์ฒด์™€ ๊ฐ์ฒด์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ํ†ตํ•ด ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. โ— ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ์ด ๋†’๋‹ค. โ— ์ง๊ด€์ ์ธ ์ฝ”๋“œ ๋ถ„์„์ด ๊ฐ€๋Šฅํ•˜๋‹ค. โ— ๊ฐœ๋ฐœ ์†๋„๊ฐ€ ํ–ฅ์ƒ๋œ๋‹ค. ๋‹คํ˜•์„ฑ ํ•˜๋‚˜์˜ ์ง€.. 2020. 3. 26.
Java ๊ด€๋ จ ๋ฉด์ ‘ ์ค€๋น„ 1 DataSource ์ˆœ์ˆ˜ jdbc๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผ์„ ํ•˜๋ฉด, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•  ๋•Œ๋งˆ๋‹ค connection์„ ๋งบ๊ณ  ๋Š๋Š” ์ž‘์—…์„ ํ•œ๋‹ค. ์ด connection์„ ๋งบ๊ณ  ๋Š๋Š” ์ž‘์—…์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋ฏธ๋ฆฌ connection์„ ์ƒ์„ฑํ•ด ๋‘๊ณ , ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•˜๊ณ ์ž ํ•˜๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฏธ๋ฆฌ ์ƒ์„ฑ๋œ connection์„ ์ œ๊ณตํ•˜๊ณ  ๋Œ๋ ค๋ฐ›๋Š”๋‹ค. ์ด connection๋“ค์„ ๋ชจ์•„๋‘๋Š” ์žฅ์†Œ๋ฅผ connection pool์ด๋ผ ํ•˜๋ฉฐ, โ€‹Datasource๋Š” java ์—์„œ connection pool์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. โ€‹ โ€‹ โ€‹ JPA(Java Persistence API) ์ž๋ฐ” ํ”Œ๋žซํผ SE์™€ ์ž๋ฐ” ํ”Œ๋žซํผ EE๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‘์šฉํ”„๋กœ๊ทธ๋žจ์—์„œ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ด€๋ฆฌ๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ์ž๋ฐ” API์ด๋‹ค. JPA๋ž€ DB ํ…Œ์ด๋ธ”๊ณผ.. 2020. 3. 26.
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[Java] - (Level2)์‡ ๋ง‰๋Œ€๊ธฐ(์Šคํƒ/ํ) https://programmers.co.kr/learn/courses/30/lessons/42585 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ์ฝ”๋“œ import java.util.*; class Solution { public int solution(String arr) { int answer = 0; Stack s = new Stack(); for(int i=0; i ์Šคํƒ์— ์Œ“๊ธฐ if(arr.charAt(i) == '(') s.push('('); // ํ˜„์žฌ ๊ฐ’์ด ')' ์ธ ๊ฒฝ์šฐ -> ์ด์ „๊ฐ’์ด '('์ธ์ง€ ')'์ธ์ง€ ํŒ๋‹จ. else{ s.pop(); .. 2020. 3. 25.
[๋ฐฑ์ค€] 1966๋ฒˆ: ํ”„๋ฆฐํ„ฐ ํ(๊ตฌํ˜„, ํ) https://www.acmicpc.net/problem/1966 1966๋ฒˆ: ํ”„๋ฆฐํ„ฐ ํ ๋ฌธ์ œ ์—ฌ๋Ÿฌ๋ถ„๋„ ์•Œ๋‹ค์‹œํ”ผ ์—ฌ๋Ÿฌ๋ถ„์˜ ํ”„๋ฆฐํ„ฐ ๊ธฐ๊ธฐ๋Š” ์—ฌ๋Ÿฌ๋ถ„์ด ์ธ์‡„ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฌธ์„œ๋ฅผ ์ธ์‡„ ๋ช…๋ น์„ ๋ฐ›์€ ‘์ˆœ์„œ๋Œ€๋กœ’, ์ฆ‰ ๋จผ์ € ์š”์ฒญ๋œ ๊ฒƒ์„ ๋จผ์ € ์ธ์‡„ํ•œ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฌธ์„œ๊ฐ€ ์Œ“์ธ๋‹ค๋ฉด Queue ์ž๋ฃŒ๊ตฌ์กฐ์— ์Œ“์—ฌ์„œ FIFO - First In First Out - ์— ๋”ฐ๋ผ ์ธ์‡„๊ฐ€ ๋˜๊ฒŒ ๋œ๋‹ค. ํ•˜์ง€๋งŒ ์ƒ๊ทผ์ด๋Š” ์ƒˆ๋กœ์šด ํ”„๋ฆฐํ„ฐ๊ธฐ ๋‚ด๋ถ€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜์˜€๋Š”๋ฐ, ์ด ํ”„๋ฆฐํ„ฐ๊ธฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ธ์‡„๋ฅผ ํ•˜๊ฒŒ ๋œ๋‹ค. ํ˜„์žฌ Queue์˜ ๊ฐ€์žฅ ์•ž์— ์žˆ๋Š” ๋ฌธ์„œ์˜ ‘์ค‘์š”๋„’๋ฅผ www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.i.. 2020. 3. 24.
[Codeforces] 1191A: Tokitsukaze and Enhancement https://codeforces.com/problemset/problem/1191/A Problem - 1191A - Codeforces codeforces.com ์ฝ”๋“œ import java.util.Scanner; public class A1191 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int x = scan.nextInt(); if(x%4 == 0) System.out.println("1 A"); else if(x%4 == 1) System.out.println("0 A"); else if(x%4 == 2) System.out.println("1 B"); else System.out.print.. 2020. 3. 24.
[๋ฐฑ์ค€] 13904๋ฒˆ: ๊ณผ์ œ(๊ทธ๋ฆฌ๋””) https://www.acmicpc.net/problem/13904 13904๋ฒˆ: ๊ณผ์ œ ์˜ˆ์ œ์—์„œ ๋‹ค์„ฏ ๋ฒˆ์งธ, ๋„ค ๋ฒˆ์งธ, ๋‘ ๋ฒˆ์งธ, ์ฒซ ๋ฒˆ์งธ, ์ผ๊ณฑ ๋ฒˆ์งธ ๊ณผ์ œ ์ˆœ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๊ณ , ์„ธ ๋ฒˆ์งธ, ์—ฌ์„ฏ ๋ฒˆ์งธ ๊ณผ์ œ๋ฅผ ํฌ๊ธฐํ•˜๋ฉด 185์ ์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int N = scan.nextInt(); int[][] work = new int[N][2]; int maxScor.. 2020. 3. 22.
[Codeforces] 1300A: Non-zero https://codeforces.com/problemset/problem/1300/A Problem - 1300A - Codeforces codeforces.com ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int t = Integer.parse.. 2020. 3. 21.
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[Java] - (Level2)๋” ๋งต๊ฒŒ(Heap) https://programmers.co.kr/learn/courses/30/lessons/42626 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ์ฝ”๋“œ import java.util.*; class Solution { public int solution(int[] scoville, int K) { int answer = 0; Queue pq = new PriorityQueue(); // ์šฐ์„ ์ˆœ์œ„ ํ์— ๋ฐฐ์—ด๊ฐ’ ์ €์žฅ for(int i : scoville) pq.offer(i); // ์šฐ์„ ์ˆœ์œ„ ํ์— ์Šค์ฝ”๋นŒ์ง€์ˆ˜ K๋ณด๋‹ค ๊ฐ’์ด ์ž‘์„๋•Œ ๋ฐ˜๋ณต while(pq.peek.. 2020. 3. 20.
[๋ฐฑ์ค€] 3085๋ฒˆ: ์‚ฌํƒ• ๊ฒŒ์ž„(์™„์ „ ํƒ์ƒ‰) https://www.acmicpc.net/problem/3085 3085๋ฒˆ: ์‚ฌํƒ• ๊ฒŒ์ž„ ๋ฌธ์ œ ์ƒ๊ทผ์ด๋Š” ์–ด๋ ธ์„ ์ ์— "๋ด„๋ณด๋‹ˆ (Bomboni)" ๊ฒŒ์ž„์„ ์ฆ๊ฒจํ–ˆ๋‹ค. ๊ฐ€์žฅ ์ฒ˜์Œ์— N×Nํฌ๊ธฐ์— ์‚ฌํƒ•์„ ์ฑ„์›Œ ๋†“๋Š”๋‹ค. ์‚ฌํƒ•์˜ ์ƒ‰์€ ๋ชจ๋‘ ๊ฐ™์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ๋‹ค. ์ƒ๊ทผ์ด๋Š” ์‚ฌํƒ•์˜ ์ƒ‰์ด ๋‹ค๋ฅธ ์ธ์ ‘ํ•œ ๋‘ ์นธ์„ ๊ณ ๋ฅธ๋‹ค. ๊ทธ ๋‹ค์Œ ๊ณ ๋ฅธ ์นธ์— ๋“ค์–ด์žˆ๋Š” ์‚ฌํƒ•์„ ์„œ๋กœ ๊ตํ™˜ํ•œ๋‹ค. ์ด์ œ, ๋ชจ๋‘ ๊ฐ™์€ ์ƒ‰์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š” ๊ฐ€์žฅ ๊ธด ์—ฐ์† ๋ถ€๋ถ„(ํ–‰ ๋˜๋Š” ์—ด)์„ ๊ณ ๋ฅธ ๋‹ค์Œ ๊ทธ ์‚ฌํƒ•์„ ๋ชจ๋‘ ๋จน๋Š”๋‹ค. ์‚ฌํƒ•์ด ์ฑ„์›Œ์ง„ ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ƒ๊ทผ์ด๊ฐ€ ๋จน์„ ์ˆ˜ ์žˆ๋Š” ์‚ฌํƒ•์˜ ์ตœ๋Œ€ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜ www.acmicpc.net ์ฝ”๋“œ import java.util.Arrays; import java.util.Scanner; public class Main { p.. 2020. 3. 19.
[๋ฐฑ์ค€] 1417๋ฒˆ: ๊ตญํšŒ์˜์› ์„ ๊ฑฐ(์™„์ „ ํƒ์ƒ‰) https://www.acmicpc.net/problem/1417 1417๋ฒˆ: ๊ตญํšŒ์˜์› ์„ ๊ฑฐ ์ฒซ์งธ ์ค„์— ํ›„๋ณด์˜ ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ๊ธฐํ˜ธ 1๋ฒˆ์„ ์ฐ์œผ๋ ค๊ณ  ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ์ˆ˜, ๊ธฐํ˜ธ 2๋ฒˆ์„ ์ฐ์œผ๋ ค๊ณ  ํ•˜๋Š” ์ˆ˜, ์ด๋ ‡๊ฒŒ ์ด N๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ์ž…๋ ฅ์ด ๋“ค์–ด์˜จ๋‹ค. N์€ 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๊ณ , ๋“ํ‘œ์ˆ˜๋Š” 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class Main { public static void main(String[] args).. 2020. 3. 19.
๋ฐ˜์‘ํ˜•