Banner

My Tech Blog (Java)

๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ๋งค๊ฐœ๋ณ€์ˆ˜- ์ˆ˜์—ด์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ ๋ฐฐ์—ด `sequence`- ๋ถ€๋ถ„ ์ˆ˜์—ด์˜ ํ•ฉ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ `k` ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์˜ ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๋ฅผ ๋ฐฐ์—ด๋กœ returnํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฌธ์ œ ํˆฌํฌ์ธํ„ฐ, ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ํ‘ผ๋‹ค.- start: ์œˆ๋„์šฐ์˜ ์‹œ์ž‘ ์ธ๋ฑ์Šค- end: ์œˆ๋„์šฐ์˜ ๋ ์ธ๋ฑ์Šค (or ๋‹ค์Œ ํƒ์ƒ‰ํ•  ์œ„์น˜) `ํˆฌํฌ์ธํ„ฐ`ํ•˜๋‚˜์˜ ํฌ์ธํ„ฐ๋Š” ๋ฐฐ์—ด์˜ ์‹œ์ž‘์„, ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” ๋ฐฐ์—ด์˜ ๋์„ ๊ฐ€๋ฆฌํ‚ค๋ฉฐ ์‹œ์ž‘ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๊ตฌ๊ฐ„์„ ์ฐพ๋Š”๊ฒƒ์ด๋‹ค.  `์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜`๋ถ€๋ถ„ ๋ฐฐ์—ด, ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ๋ฌธ์ œ์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๊ตฌ๊ฐ„์„ ์ฐพ๊ฑฐ๋‚˜, ๊ณ ์ •๋œ ํฌ๊ธฐ ๊ตฌ๊ฐ„์˜ ํ•ฉ๊ณ„, ์ตœ๋Œ€๊ฐ’, ์ตœ์†Œ๊ฐ’ ๋“ฑ์„ ๊ตฌํ•  ๋•Œ ์œ ..
1. ์ดํด๋ฆฝ์Šค์— ๊นƒํ—ˆ๋ธŒ ์—ฐ๋™ํ•˜๊ธฐ ์ƒ๋‹จ๋ฉ”๋‰ด [Window] - [Show View] - [Other] [Git] - [Git Repositories] - ๋งˆ์šฐ์Šค ์šฐํด๋ฆญ [Clone a Git Repository] URI: ๋‚ด ๊นƒํ—ˆ๋ธŒ ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ URI (HTTP)User  & password : ๋‚ด ๊นƒํ—ˆ๋ธŒ ์•„์ด๋””์™€ ๊นƒํ† ํฐ ์ž…๋ ฅํ•˜๊ณ  [Next] - [Finish] ๊นƒํ—ˆ๋ธŒ์™€ ์—ฐ๋™ํ•˜๊ณ ์ž ํ•˜๋Š” ํ”„๋กœ์ ํŠธ ๋งˆ์šฐ์Šค ์šฐํด๋ฆญ [Team] - [Share Project..] ํด๋ฆญ Repository: ์•„๊นŒ Git Repositories์—์„œ ๋งŒ๋“ค์–ด ๋†จ๋˜ ๊ฒฝ๋กœ๋ฅผ ํด๋ฆญ ๊ทธ๋ฆฌ๊ณ  [Finish] ์ปค๋ฐ‹ํ•˜๋ ค๋ฉด ํ”„๋กœ์ ํŠธ ๋งˆ์šฐ์Šค ์šฐํด๋ฆญ [Team] - [Commit]  - [Unstaged Chages] ์— ์žˆ๋Š” ํŒŒ์ผ๋“ค์„ ์ƒ๋‹จ [++] ์„ ..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ๊ฒƒn : ์ „์ฒด ํ•™์ƒ์˜ ์ˆ˜lost : ์ฒด์œก๋ณต ๋„๋‚œ๋‹นํ•œ ํ•™์ƒ๋“ค์˜ ๋ฒˆํ˜ธ๋“ค  (๋ฐฐ์—ด) reserve : ์—ฌ๋ฒŒ ๊ฐ€์ ธ์˜จ ํ•™์ƒ ๋ฒˆํ˜ธ๋“ค (๋ฐฐ์—ด)์ฒด์œก๋ณต์€ ์•ž,๋’ค ๋ฒˆํ˜ธ ํ•™์ƒ ์—๋งŒ ๋นŒ๋ ค์ค„ ์ˆ˜ ์žˆ์Œ.๋„๋‚œ ๋‹นํ•œ ํ•™์ƒ๋“ค์€ ์—ฌ๋ถ„์ด ์—†์–ด์„œ ์ฒด์œก๋ณต ๋นŒ๋ ค์ค„ ์ˆ˜ ์—†์Œ.1. `lost`์™€ `reserve` ๋ฐฐ์—ด ์ •๋ ฌ 2. ์ฒด์œก์ˆ˜์—…์— ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ํ•™์ƒ์˜ ์ˆ˜ = ์ฒด์œก๋ณต์ด ์žˆ๊ฑฐ๋‚˜ ๋นŒ๋ฆด ์ˆ˜ ์žˆ๋Š” ํ•™์ƒ๋“ค์˜ ์ˆ˜ `์ฒด์œก๋ณต์„ ๋„๋‚œ ๋‹นํ•˜์ง€ ์•Š์€ ํ•™์ƒ์˜ ์ˆ˜` + `๋„๋‚œ๋‹นํ–ˆ์ง€๋งŒ ์˜ˆ๋น„๋กœ ๋“ค๊ณ  ์˜จ ํ•™์ƒ์˜ ์ˆ˜` + `๋„๋‚œ๋‹นํ–ˆ์ง€๋งŒ ์ฒด์œก๋ณต์„ ๋นŒ๋ฆด ์ˆ˜ ์žˆ๋Š” ํ•™์ƒ์˜ ์ˆ˜`์ด ๋ชจ๋“  ํ•™์ƒ๋“ค์˜ ์ˆ˜๋ฅผ ๋ˆ„์ ํ•ด์„œ answer ๋ณ€์ˆ˜์— ๋‹ด์•„ ์ค€๋‹ค.  โœ… ์ฒด์œก๋ณต์„ ๋„๋‚œ ๋‹นํ•˜์ง€ ์•Š์€ ํ•™์ƒ์˜ ์ˆ˜= ์ „์ฒด ํ•™์ƒ์˜ ์ˆ˜ - ์ฒด์œก๋ณต์„ ๋„๋‚œ๋‹นํ•œ ํ•™..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹๋งŒ๋“ค์–ด์ค„ ๋ฉ”์„œ๋“œ๋Š” 4๊ฐ€์ง€ - ์˜คํ”„๋‹ ๋ ์œ„์น˜๋กœ ์ด๋™ํ•˜๋Š” `SkipOp()` ๋ฉ”์„œ๋“œ- ๋ช…๋ น์ด "next" ์ด๋ฉด 10์ดˆ ๋’ค๋กœ ์ด๋™ํ•˜๋Š” `moveToNext()`๋ฉ”์„œ๋“œ- ๋ช…๋ น์ด "prev" ์ด๋ฉด  10์ดˆ ์•ž์œผ๋กœ ์ด๋™ํ•˜๋Š” `moveToPrev()` ๋ฉ”์„œ๋“œ- String ํƒ€์ž…์œผ๋กœ ์ž…๋ ฅ ๋ฐ›์€ ์‹œ๊ฐ„์„ LocalTime์œผ๋กœ ํ˜•๋ณ€ํ™˜ ํ•˜๋Š” `getTime()`๋ฉ”์„œ๋“œ "mm:ss" ํ˜•์‹์œผ๋กœ ๋ฐ›์•„์˜จ ์‹œ๊ฐ„์„ ":" ๊ธฐ์ค€์œผ๋กœ ๋ถ„, ์ดˆ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค.LocalTime์ด ๊ฐ€์ง„ ๋ฉ”์„œ๋“œ๋กœ ์‹œ๊ฐ„ ๊ณ„์‚ฐ์„ ํ•˜๊ณ , ๋ฐ˜ํ™˜ํ•  ๋•Œ๋Š” ๋‹ค์‹œ "mm:ss" ํ˜•์‹์œผ๋กœ ํฌ๋งคํŒ… ํ•ด์„œ ๋ฐ˜ํ™˜ํ•ด ์ฃผ์–ด์•ผ ํ•จ.ํ˜„์žฌ ์‹œ๊ฐ„์ด ์˜คํ”„๋‹ ์œ„์น˜ ์•ˆ์— ์žˆ์„ ๋•Œ๋Š” ์ž๋™์œผ๋กœ SkipOp() ๋ฉ”์„œ๋“œ๊ฐ€ ํ˜ธ์ถœ๋œ๋‹ค. โญ 3. ์ •๋‹ต์ฝ”๋“œimp..
๐Ÿค– 1. ๋ฌธ์ œ์„ค๋ช…๋ฌธ์ œ ์„ค๋ช…n๋ช…์ด ์ž…๊ตญ์‹ฌ์‚ฌ๋ฅผ ์œ„ํ•ด ์ค„์„ ์„œ์„œ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์ž…๊ตญ์‹ฌ์‚ฌ๋Œ€์— ์žˆ๋Š” ์‹ฌ์‚ฌ๊ด€๋งˆ๋‹ค ์‹ฌ์‚ฌํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์ฒ˜์Œ์— ๋ชจ๋“  ์‹ฌ์‚ฌ๋Œ€๋Š” ๋น„์–ด์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ ์‹ฌ์‚ฌ๋Œ€์—์„œ๋Š” ๋™์‹œ์— ํ•œ ๋ช…๋งŒ ์‹ฌ์‚ฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์•ž์— ์„œ ์žˆ๋Š” ์‚ฌ๋žŒ์€ ๋น„์–ด ์žˆ๋Š” ์‹ฌ์‚ฌ๋Œ€๋กœ ๊ฐ€์„œ ์‹ฌ์‚ฌ๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋” ๋นจ๋ฆฌ ๋๋‚˜๋Š” ์‹ฌ์‚ฌ๋Œ€๊ฐ€ ์žˆ์œผ๋ฉด ๊ธฐ๋‹ค๋ ธ๋‹ค๊ฐ€ ๊ทธ๊ณณ์œผ๋กœ ๊ฐ€์„œ ์‹ฌ์‚ฌ๋ฅผ ๋ฐ›์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.๋ชจ๋“  ์‚ฌ๋žŒ์ด ์‹ฌ์‚ฌ๋ฅผ ๋ฐ›๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์„ ์ตœ์†Œ๋กœ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ž…๊ตญ์‹ฌ์‚ฌ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์‚ฌ๋žŒ ์ˆ˜ n, ๊ฐ ์‹ฌ์‚ฌ๊ด€์ด ํ•œ ๋ช…์„ ์‹ฌ์‚ฌํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด ๋‹ด๊ธด ๋ฐฐ์—ด times๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ๋ชจ๋“  ์‚ฌ๋žŒ์ด ์‹ฌ์‚ฌ๋ฅผ ๋ฐ›๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์˜ ์ตœ์†Ÿ๊ฐ’์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ œ..
1. ๋ฌธ์ œ์„ค๋ช…๋ฐฐ์—ด arr๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋ฐฐ์—ด arr์˜ ๊ฐ ์›์†Œ๋Š” ์ˆซ์ž 0๋ถ€ํ„ฐ 9๊นŒ์ง€๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ, ๋ฐฐ์—ด arr์—์„œ ์—ฐ์†์ ์œผ๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ์ˆซ์ž๋Š” ํ•˜๋‚˜๋งŒ ๋‚จ๊ธฐ๊ณ  ์ „๋ถ€ ์ œ๊ฑฐํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, ์ œ๊ฑฐ๋œ ํ›„ ๋‚จ์€ ์ˆ˜๋“ค์„ ๋ฐ˜ํ™˜ํ•  ๋•Œ๋Š” ๋ฐฐ์—ด arr์˜ ์›์†Œ๋“ค์˜ ์ˆœ์„œ๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด,arr = [1, 1, 3, 3, 0, 1, 1] ์ด๋ฉด [1, 3, 0, 1] ์„ return ํ•ฉ๋‹ˆ๋‹ค.arr = [4, 4, 4, 3, 3] ์ด๋ฉด [4, 3] ์„ return ํ•ฉ๋‹ˆ๋‹ค.๋ฐฐ์—ด arr์—์„œ ์—ฐ์†์ ์œผ๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ์ˆซ์ž๋Š” ์ œ๊ฑฐํ•˜๊ณ  ๋‚จ์€ ์ˆ˜๋“ค์„ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”.์ œํ•œ์‚ฌํ•ญ๋ฐฐ์—ด arr์˜ ํฌ๊ธฐ : 1,000,000 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜๋ฐฐ์—ด arr์˜ ์›์†Œ์˜ ํฌ๊ธฐ : 0๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ  9๋ณด..
์ž๋ฐ”์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๋Š” ๊ณผ์ •https://happykoo.net/@happykoo/posts/242 ํ•ดํ”ผ์ฟ  ๋ธ”๋กœ๊ทธ - [Java] ์ž๋ฐ”์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๋Š” ๊ณผ์ •์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž๋ˆ„๊ตฌ๋‚˜ ์†์‰ฝ๊ฒŒ ์šด์˜ํ•˜๋Š” ๋ธ”๋กœ๊ทธ!www.happykoo.net ์ž๋ฐ”๊ฐ€์ƒ๋จธ์‹ (JVM), JIT ์ปดํŒŒ์ผ๋Ÿฌhttps://velog.io/@fastdodge7/Java-์ž๋ฐ”์˜-๋ฉ”๋ชจ๋ฆฌ-๊ตฌ์กฐ [Java] ์ž๋ฐ”์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐJava Virtual Machine(JVM) ์ž๋ฐ”์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ธฐ ์ „์—, ์šฐ์„  JVM์— ๋Œ€ํ•ด์„œ ์ด์•ผ๊ธฐ ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ์ž๋ฐ”์˜ ๊ฐ€์žฅ ํฐ ํŠน์ง• ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฐ”๋กœ ํ”Œ๋žซํผ์— ๋…๋ฆฝ์ ์ด๋ผ๋Š” ๊ฒƒ์ธ๋ฐ, ์ด๊ฒƒ์€ ์ž๋ฐ”๋กœ ์ž‘velog.io ์ž๋ฐ” ๋ฉ”๋ชจ๋ฆฌhttps://velog.io/@kay9508/JAVA-๋ฉ”๋ชจ๋ฆฌ-Stack-Heap JAVA..
1. ์ž๋ฐ”์˜ ์ž๋ฃŒํ˜• String Buffer๋ฅผ ์„ค๋ช…ํ•˜๊ธฐ์— ์•ž์„œ ์ž๋ฐ”์˜ ์ž๋ฃŒํ˜•์—๋Š” ๊ธฐ๋ณธํ˜•(Primitive Type)๊ณผ ์ฐธ์กฐํ˜•(Reference Type)์ด ์žˆ๋‹ค. ๊ธฐ๋ณธํ˜•์€ ๊ฐ’ ์ž์ฒด๋ฅผ ์ €์žฅํ•˜๋Š” ํ˜•ํƒœ๋กœ ์ •์ˆ˜ํ˜•, ์‹ค์ˆ˜ํ˜•, ๋ฌธ์žํ˜•(char), ๋…ผ๋ฆฌํ˜•์ด ๊ธฐ๋ณธํ˜•์— ์†ํ•œ๋‹ค. ๋ฐ˜๋ฉด, ์ฐธ์กฐํ˜• ์ฃผ์†Œ๊ฐ’์„ ๋‹ด๊ณ  ์žˆ์œผ๋ฉฐ, ์‹ค์ œ๋กœ๋Š” ์ฃผ์†Œ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฐ์ฒด๋‚˜ ๋ฐฐ์—ด ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ํ˜•ํƒœ์ด๋‹ค.  ๊ธฐ๋ณธ์ ์œผ๋กœ ์ž๋ฐ”์˜ 8๊ฐ€์ง€ ๊ธฐ๋ณธํ˜•(Primitive Type)์ด ์•„๋‹Œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ์ฐธ์กฐํ˜•์— ์†ํ•œ๋‹ค. ๋ฆฌ์ŠคํŠธ๋‚˜ ๋งต, ์ง‘ํ•ฉ์ฒ˜๋Ÿผ ์šฐ๋ฆฌ๊ฐ€ ์•„๋Š” ์ž๋ฐ” ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ž๋ฃŒํ˜•๋“ค์ด ์ฐธ์กฐํ˜•์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ”ํžˆ ๋ฌธ์ž์—ด์ด๋ผ๊ณ  ๋ถ€๋ฅด๋Š” String๋„ ์ฐธ์กฐํ˜•์— ์†ํ•œ๋‹ค. ์ฐธ์กฐํ˜•(Reference Type)- ํด๋ž˜์Šค (Class): ์‚ฌ์šฉ์ž๊ฐ€ ์ •์˜ํ•œ ๊ฐ..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'Java' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ