Deep_Dev
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค][JAVA] Level 1 : ์„ฑ๊ฒฉ ์œ ํ˜• ๊ฒ€์‚ฌํ•˜๊ธฐ

https://school.programmers.co.kr/learn/courses/30/lessons/118666 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ๊ฐ ์œ ํ˜•์„ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฐ์—ด์— ๋„ฃ๊ณ , ๊ฐ ์œ ํ˜•๋ณ„๋กœ ์ ์ˆ˜ํŒ์„ ๊ณ„์‚ฐํ•œ ๋ฐฐ์—ด๋„ ์ƒ์„ฑํ•ด์ฃผ๊ณ  choices์˜ ๊ฐ’๋“ค์€ ๋ฐ”๋กœ index๋กœ ๊ณ„์‚ฐํ•ด์„œ ์ ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค. ( ์ ์ˆ˜ ๋ฐฐ์—ด score๋„ ์ƒ์„ฑ ) 2๊ฐ€์ง€ ์œ ํ˜•๋งˆ๋‹ค ๊ณ„์† ๋น„๊ตํ•˜๋‹ˆ๊นŒ, ์™ผ์ชฝ์˜ ์œ ํ˜•์˜ ์ ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ• ๋–„๋Š” 1~3์ ์ผ๋•Œ๊ณ , ์˜ค๋ฅธ์ชฝ์œ ํ˜•์˜ ์ ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ• ๋–„๋Š” 5~7์ ์ด๋‹ˆ ๊ทธ ๋‘๊ฐ€์ง€ ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋‚˜๋ˆ„์–ด์„œ ํ˜„์žฌ ์ถ”๊ฐ€๋  ์œ ํ˜•์˜ calc์˜ index๋ฅผ ์ฐพ์•„์„œ ca..

[JAVA] String.Format() ์ž๋ฆฟ์ˆ˜ ์ฑ„์šฐ๊ธฐ

โœ… String.Format() String์˜ static ๋ฉ”์„œ๋“œ์ธ format ๋ฉ”์„œ๋“œ๋Š” ๋ฌธ์ž์—ด์˜ ํ˜•์‹์„ ์„ค์ •ํ•˜๋Š” ๋ฉ”์„œ๋“œ์ด๋‹ค. โœ… ์ข…๋ฅ˜ %d : 10์ง„์ˆ˜ %s : ๋ฌธ์ž์—ด %f : ์‹ค์ˆ˜ํ˜• %t : ๋‚ ์งœ ์‹œ๊ฐ„ %c : ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž %o, %x ( 8์ง„์ˆ˜, 16์ง„์ˆ˜ ) โœ… ์˜ˆ์‹œ int num = 5; String str = String.format("%05d", num); System.out.println(str); // input : 45 // output : 00045 * 10์ง„์ˆ˜๋ฅผ 2์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•ด์„œ ์‚ฌ์šฉํ•ด์•ผํ•˜๋Š”๋ฐ ํŠน์ •ํ•œ ์ž๋ฆฟ์ˆ˜(n)๋ฅผ ๋งž์ถฐ์•ผ ํ•  ๋•Œ int n = 5; String binaryArr = String.format("%" + n + "s", Integer.toBinaryString(arr1[..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค][JAVA]Level 1 : ๋Œ€์ถฉ ๋งŒ๋“  ์žํŒ

https://school.programmers.co.kr/learn/courses/30/lessons/160586 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ๋จผ์ € ์‹ ๊ฒฝ์“ด ๋ถ€๋ถ„์€ ์ฐพ์„ target๋ฌธ์ž์—ด์ค‘ ๋ฌธ์ž๊ฐ€ ๋งŒ์•ฝ์— ์—†๋‹ค๋ฉด -1 ๋กœ ๋๋‚˜๋Š”๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ keymap์˜ ๋ฌธ์ž์—ด์„ ๋ชจ๋‘ ๋”ํ•ด์„œ, ์ฐพ์„ ์ˆ˜ ์žˆ๋Š”์ง€ ์—†๋Š”์ง€ ๋จผ์ € ํŒ๋ณ„ํ–ˆ๋‹ค. ๊ทผ๋ฐ ๊ณ„์† ์˜ค๋‹ต์ด ๋‚˜์™”๋˜๊ฒŒ .. ! keymap ์ „์ฒด ๋ฐฐ์—ด์ค‘ ์ฐพ์„์ˆ˜๋Š” ์žˆ์–ด์„œ indexOf๋กœ ์ˆœ์ฐจ์ ์œผ๋กœ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜์˜ index๋ฅผ ๊ตฌํ•˜๋Š”๋ฐ keymap[0] ์—์„œ๋Š” ํ•ด๋‹น ๋ฌธ์ž๊ฐ€ ์žˆ๊ณ  keymap[1] ์—๋Š” ์—†์„๊ฒฝ์šฐ 0์ด๋ผ๋Š”..

article thumbnail
[JAVA] DFS & BFS ์ •๋ฆฌ

๐Ÿ“š DFS & BFS ์ตœ์ข…์ •๋ฆฌ DFS : Depth First Search ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰ BFS : Breadth First Search ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰ ๊ทธ๋ž˜ํ”„๋ฅผ ํƒ์ƒ‰ํ•˜๊ธฐ ์œ„ํ•œ ๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ DFS, BFS๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์Šคํƒ, ํ, ์žฌ๊ท€๋ฅผ ๋จผ์ € ์•Œ์•„์•ผํ•œ๋‹ค. ํ(Queue) ์Šคํƒ๊ณผ ๋ฐ˜๋Œ€๋กœ FIFO ๊ฐœ๋…์œผ๋กœ ๋จผ์ € ๋“ค์–ด๊ฐ„ ๊ฒƒ์ด ๋จผ์ € ๋‚˜๊ฐ€๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. public class Main{ public static void main(String[] args) { Queue Q = new LinkedList(); Q.offer(1); Q.offer(2); Q.offer(3); Q.poll(); // 1 ์ถœ๋ ฅ Q.offer(4); Q.poll(); // 2 ์ถœ๋ ฅ } } ์ „์—ญ ํด๋ž˜์Šค Node DFS์™€ BF..

[JAVA] ์Šคํƒํ”„๋ ˆ์ž„ & ์žฌ๊ท€ํ•จ์ˆ˜

๐Ÿ“š ์Šคํƒํ”„๋ ˆ์ž„ & ์žฌ๊ท€ํ•จ์ˆ˜ ์Šคํƒ ํ”„๋ ˆ์ž„ ์Šคํƒ ํ”„๋ ˆ์ž„์€ ๋ฉ”๋ชจ๋ฆฌ์˜ ์Šคํƒ์˜์—ญ์€ ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ๊ณผ ๊ด€๊ณ„๋˜๋Š” ์ง€์—ญ๋ณ€์ˆ˜์™€ ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€ ์ €์žฅ๋˜๋Š” ์˜์—ญ์ด๋‹ค. ์Šคํƒ ์˜์—ญ์€ ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ๊ณผ ํ•จ๊ป˜ ํ• ๋‹น๋˜๋ฉฐ, ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ์ด ์™„๋ฃŒ๋˜๋ฉด ์†Œ๋ฉธํ•œ๋‹ค. ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜๋ฉด ์Šคํƒ์—๋Š” ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜, ํ˜ธ์ถœ์ด ๋๋‚ ๋’ค ๋Œ์•„๊ฐ€๋Š” ๋ฐ˜ํ™˜ ์ฃผ์†Œ ๊ฐ’, ํ•จ์ˆ˜์—์„œ ์„ ์–ธ๋œ ์ง€์—ญ๋ณ€์ˆ˜ ๋“ฑ์ด ์ €์žฅ๋œ๋‹ค. ์ด๋ ‡๊ฒŒ ์Šคํƒ ์˜์—ญ์— ์ฐจ๋ก€๋Œ€๋กœ ์ €์žฅ๋˜๋Š” ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ ์ •๋ณด๋ฅผ ์Šคํƒ ํ”„๋ ˆ์ž„ ์ด๋ผ๊ณ  ํ•œ๋‹ค. ์Šคํƒ ํ”„๋ ˆ์ž„์„ ํ™œ์šฉํ•˜๋ฉด ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ์ด ๋ชจ๋‘ ๋๋‚œ ๋’ค์— ํ•ด๋‹น ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜๊ธฐ ์ด์ „ ์ƒํƒœ๋กœ ๋˜๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๋‹ค. ์žฌ๊ท€ํ•จ์ˆ˜ public class Recursive { public static void main(String[] args){ Recursive T = new Recursive(); ..

[JAVA] Comparable & Comparator

๐Ÿ“š Comparable & Comparator - Comparable๊ณผ Comparator๋Š” ๋ชจ๋‘ ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. - ์ฆ‰, ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•œ๋‹ค๋ฉด ์ธํ„ฐํŽ˜์ด์Šค ๋‚ด์— ์„ ์–ธ๋œ ๋ฉ”์†Œ๋“œ๋ฅผ ๋ฐ˜๋“œ์‹œ ๊ตฌํ˜„ ํ•ด์•ผํ•œ๋‹ค. ๋ณดํ†ต Comparable ์ธํ„ฐํŽ˜์ด์Šค์—๋Š” compareTo(T o) ๋ฉ”์†Œ๋“œ ํ•˜๋‚˜๊ฐ€ ์„ ์–ธ๋˜์–ด์žˆ๋‹ค. ์ด๊ฒƒ์€ compareTo ๋ฉ”์†Œ๋“œ๋ฅผ ์žฌ์ •์˜(Override)ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. Comparator์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด compare ๋ฉ”์†Œ๋“œ๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๊ณ , Comparable ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด compareTo ๋ฉ”์†Œ๋“œ๋ฅผ ๊ตฌํ˜„ํ•ด์•ผํ•œ๋‹ค. โœ… Comparable & Comparator " ๊ฐ์ฒด๋ฅผ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ ๋‹ค " Why ? ์›๋ž˜๋Š” byte, int, double ๋“ฑ ๋ถ€๋“ฑํ˜ธ๋ฅผ ํ†ตํ•ด ์‰ฝ๊ฒŒ ๋‘ ๋ณ€์ˆ˜๋ฅผ ๋น„๊ตํ•  ..

article thumbnail
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค][JAVA]Level 1 : ๋ฌธ์ž์—ด ๋‚ด ๋งˆ์Œ๋Œ€๋กœ ์ •๋ ฌํ•˜๊ธฐ

https://school.programmers.co.kr/learn/courses/30/lessons/12915 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr 1๋ฒˆ ํ’€์ด import java.util.*; class Solution { public String[] solution(String[] strings, int n) { String[] answer = new String[strings.length]; List list = new ArrayList(); for(int i=0; i

article thumbnail
[JAVA][์ž๋ฃŒ๊ตฌ์กฐ] ํŠธ๋ฆฌ์…‹ ( TreeSet )

๐Ÿ“š TreeSet TreeSet TreeSet์€ Set ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค๋กœ์จ ๊ฐ์ฒด๋ฅผ ์ค‘๋ณตํ•ด์„œ ์ €์žฅํ•  ์ˆ˜ ์—†๊ณ  ์ €์žฅ ์ˆœ์„œ๊ฐ€ ์œ ์ง€๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” Set์˜ ์„ฑ์งˆ์„ ๊ทธ๋Œ€๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ์˜ ๊ตฌ์กฐ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ์ถ”๊ฐ€์™€ ์‚ญ์ œ์—๋Š” ์‹œ๊ฐ„์ด ์กฐ๊ธˆ ๋” ๊ฑธ๋ฆฌ์ง€๋งŒ, ์ •๋ ฌ๊ณผ ๊ฒ€์ƒ‰์— ๋†’์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. ์ด์ง„ํƒ์ƒ‰ํŠธ๋ฆฌ์˜ ํ˜•ํƒœ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ์— ๊ธฐ๋ณธ์ ์œผ๋กœ Nature Ordering์„ ์ง€์›ํ•˜๋ฉฐ ์ƒ์„ฑ์ž์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ Comparator ๊ฐ์ฒด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ •๋ ฌ ๋ฐฉ๋ฒ•์„ ์ž„์˜๋กœ ์ง€์ •ํ•ด์ค„ ์ˆ˜๋„ ์žˆ๋‹ค. ๋ ˆ๋“œ ๋ธ”๋ž™ ํŠธ๋ฆฌ : ๋ถ€๋ชจ๋…ธ๋“œ๋ณด๋‹ค ์ž‘์€ ๊ฐ’์„ ๊ฐ€์ง€๋Š” ๋…ธ๋“œ๋Š” ์™ผ์ชฝ ์ž์‹์œผ๋กœ, ํฐ ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋…ธ๋“œ๋Š” ์˜ค๋ฅธ์ชฝ ์ž์‹์œผ๋กœ ๋ฐฐ์น˜ํ•˜์—ฌ ๋ฐ์ดํ„ฐ์˜ ์ถ”๊ฐ€๋‚˜ ์‚ญ์ œ ์‹œ ํŠธ๋ฆฌ๊ฐ€ ํ•œ์ชฝ์œผ๋กœ ์น˜์šฐ์ณ์ ธ์žˆ์ง€ ์•Š๋„๋ก ๊ท ํ˜•์„ ๋งž์ถ”์–ด์ค€๋‹ค...