๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์ „์ฒด ๊ธ€ (69)

๋‚˜์˜ ๋ชจ์–‘

026 | Time Complexity

๐Ÿ’™ ์‹œ๊ฐ„ ๋ณต์žก๋„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ๋Š” ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ•ด๋‹ต์„ ์ฐพ๋Š” ๊ฒƒ๊ณผ ํ•จ๊ป˜ ์–ผ๋งˆ๋‚˜ ํšจ์œจ์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋Š”์ง€๋„ ์ค‘์š”ํ•˜๋‹ค. ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๊ฐ€ ๋” ํšจ์œจ์ ์ธ ๋ฐฉ๋ฒ•์€ ๋ญ๊ฐ€ ์žˆ์„์ง€, ์ด๊ฒŒ ์ œ์ผ ์ข‹์€ ๋ฐฉ๋ฒ•์ด ๋งž์„์ง€ ๊ณ ๋ฏผํ•˜๋Š” ๊ฒƒ์€ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ณ ๋ฏผํ•œ๋‹ค๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค. ๐Ÿค ๊ฐœ๋… ์ž…๋ ฅ๊ฐ’์˜ ๋ณ€ํ™”์— ๋”ฐ๋ผ ์—ฐ์‚ฐ์„ ์‹คํ–‰ํ•  ๋•Œ, ์—ฐ์‚ฐ ํšŸ์ˆ˜์— ๋น„ํ•ด ์–ผ๋งŒํผ์˜ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๋Š”์ง€๋ฅผ ๊ณ ๋ คํ•˜๋Š” ๊ฒƒ ํšจ์œจ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ = ์ž…๋ ฅ๊ฐ’์ด ์ปค์ง์— ๋”ฐ๋ผ ์ฆ๊ฐ€ํ•˜๋Š” ์‹œ๊ฐ„์˜ ๋น„์œจ์„ ์ตœ์†Œํ™”ํ•œ ๊ฒƒ ๐Ÿค ๋ถ„๋ฅ˜ ์ตœ์•…์˜ ๊ฒฝ์šฐ(Worst Case): ์ตœ์•…์˜ ์‹œ๋‚˜๋ฆฌ์˜ค๋กœ, ๋น… ์˜ค(Big-O) ํ‘œ๊ธฐ๋ฒ• ์‚ฌ์šฉ ์ตœ์„ ์˜ ๊ฒฝ์šฐ(Best Case): ์ตœ์„ ์˜ ์‹œ๋‚˜๋ฆฌ์˜ค๋กœ, ๋น… ์˜ค๋ฉ”๊ฐ€(Big-Ω) ํ‘œ๊ธฐ๋ฒ• ์‚ฌ์šฉ ํ‰๊ท ์ ์ธ ๊ฒฝ์šฐ(Average Case): ํ‰๊ท  ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ๋น… ์„ธํƒ€(..

SEB/TIL 2022. 7. 28. 21:06
[DailyCoding] 06 | letterCapitalize

โœ๐Ÿป Description ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฌธ์ž์—ด์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๊ฐ€ ๋Œ€๋ฌธ์ž์ธ ๋ฌธ์ž์—ด ๋ฆฌํ„ด ๐Ÿ“ Flow 1. ๋ฌธ์ž์—ด๋กœ ์ด๋ฃจ์–ด์ง„ ๋‹จ์–ด๋ฅผ์„ ๋Œ๋ฆฌ๋ฉด์„œ ๋‹ด์•„์ค„ ๋ฐฐ์—ด ๋งŒ๋“ค๊ธฐ - ๋‹จ์–ด ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ => .split(); 2. ๊ฒฐ๊ณผ๊ฐ’ ๋‹ด์„ ๋ณ€์ˆ˜ ๋งŒ๋“ค๊ธฐ 3. ๋‹จ์–ด ์ˆœํšŒ => for - String.valueOf(), substring() 4. ๊ฐ ๋‹จ์–ด ์ฒซ๊ธ€์ž ๋Œ€๋ฌธ์ž => .toUpperCase() 5. ๋ฌธ์ž์—ด join 5. ๋ฌธ์ž์—ด ๋ฆฌํ„ด ๐Ÿคฏ Difficulty ๋ฌธ์ž์—ด์„ ์ฝ์–ด์˜ค๋Š” ๊ฒƒ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋œ ๋‹จ์–ด ์•ž์„ ๋Œ€๋ฌธ์ž๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ ๐Ÿช† Attempt ๋‹จ์–ด ๊ตฌ๋ถ„ → for๋ฌธ์—์„œ ๋ฌธ์ž์—ด ๋ฐ˜๋ณต → ์ฒซ ๊ธ€์ž ๋Œ€๋ฌธ์ž splitํ•œ ๋ฌธ์ž์—ด join ๐Ÿ“š TIL split() ๋ฆฌํ„ด: ๋ฌธ์ž์—ด → ๋ฌธ์ž์—ด ๋ฐฐ์—ด Parameters..

SEB/Daily Coding 2022. 7. 28. 20:53
[Session] ์„ ๋ฐฐ์  ์ฐธ๊ฒฌ์‹œ์ 

์„ ๋ฐฐ์  ์ฐธ๊ฒฌ์‹œ์ โ“ ์•ž์„œ ์ฝ”์Šค ์ˆ˜๋ฃŒ ํ›„ ๊ฐœ๋ฐœ์ž๋กœ ๊ทผ๋ฌด์ค‘์ธ ์„ ๋ฐฐ ์ˆ˜๋ฃŒ์ƒ๊ณผ ๋งŒ๋‚˜๋Š” ์‹œ๊ฐ„์œผ๋กœ, ์ˆ˜๋ฃŒ ํ›„ ํ›„ํšŒํ•˜์ง€ ์•Š๋Š” ์‹œ๊ฐ„์„ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด์„œ๋Š” ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์ข‹์„์ง€, ๊ฐœ๋ฐœ์ž๊ฐ€ ์–ด๋–ค ํ™˜๊ฒฝ์—์„œ ์ผํ•˜๋Š”์ง€ ํ˜„์‹ค์ ์ธ ์–˜๊ธฐ์™€ ํ˜„์—…์—์„œ ํ•„์š”ํ•œ ํ•˜๋“œ์Šคํ‚ฌ, ์†Œํ”„ํŠธ์Šคํ‚ฌ์— ๋Œ€ํ•ด ๋‚˜๋ˆ„๋Š” ์‹œ๊ฐ„์ด๋‹ค. ๐Ÿ‘๐Ÿป ์ถ”์ฒœ ๐Ÿน ๋ธ”๋กœ๊น… ๊ฐœ๋… ์„ค๋ช… ๋ชฉ์ ์˜ ๊ฐœ๋ฐœ์„ ๋ชจ๋ฅด๋Š” ์‚ฌ๋žŒ๋“คํ•œํ…Œ ์•Œ๋ ค์ฃผ๋Š” ๊ธ€ ์“ฐ๊ธฐ ๐Ÿน ๋‚ด๊ฐ€ ์ง  ์ฝ”๋“œ ๊ธฐ๋ก 1์„ 2์กฐ! ๊นƒํ—™ ์ž”๋””๋„ ์‹ฌ์–ด์ง€๊ณ , ๋‚˜๋งŒ์˜ ์ปดํฌ๋„ŒํŠธ ๋ฐ•์Šค๋„ ์ƒ๊น€ ๐Ÿ‘Ž๐Ÿป ๋น„์ถ”์ฒœ ์ฝ”๋“œ๋ฅผ ๋ˆˆ์œผ๋กœ ๋ณด๊ณ  ๋„˜์–ด๊ฐ€๋Š” ๊ฒƒ ์ดํ•ด๋˜์ง€ ์•Š๋Š” ์ฝ”๋“œ ์น˜๊ณ  ๊ธฐ๋กํ•˜์ง€ ์•Š๊ณ  ๋„˜์–ด๊ฐ€๋Š” ๊ฒƒ ํ˜ผ์žํ•˜๊ธฐ ๐Ÿ’œ ๋‚˜์˜ ์˜ค๋Š˜ ํ•™์Šต ๋งŒ์กฑ๋„/๋А๋‚€์  ๋‚ด๊ฐ€ ์•Œ๊ณ  ์žˆ(๋‹ค๊ณ  ์ƒ๊ฐํ•˜)๋Š” ๊ฐœ๋ฐœ ๊ด€๋ จ ์ง€์‹๋“ค์„ ๋ชจ๋ฅด๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ์„ค๋ช…ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์ฐธ ์–ด๋ ค์šด ์ผ์ด๋‹ค. ์„ค๋ช…์„ ํ•˜๊ณ  ์ดํ•ด๋ฅผ ์‹œํ‚ค๋ ค๋ฉด ๋‚ด๊ฐ€ ..

WILT 2022. 7. 28. 02:08
024 | Data Structure - Tree, Graph

๐Ÿ’™ Tree ๐Ÿค ๊ฐœ๋… ๊ณ„์ธต์  ์ž๋ฃŒ๊ตฌ์กฐ ๋Œ€์ƒ ์ •๋ณด์˜ ๊ฐ ํ•ญ๋ชฉ๋“ค์„ ๊ณ„์ธต์ ์œผ๋กœ ์—ฐ๊ด€๋˜๋„๋ก ๊ตฌ์กฐํ™”์‹œํ‚ค๊ณ ์ž ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋น„์„ ํ˜• ์ž๋ฃŒ๊ตฌ์กฐ ๋‹จ๋ฐฉํ–ฅ ๊ทธ๋ž˜ํ”„ ๊นŠ์ด (depth) ๋ฃจํŠธ๋กœ๋ถ€ํ„ฐ ํ•˜์œ„ ๊ณ„์ธต์˜ ํŠน์ • ๋…ธ๋“œ๊นŒ์ง€์˜ ๊นŠ์ด(depth)๋ฅผ ํ‘œํ˜„ ๋ ˆ๋ฒจ(Level) ๊ฐ™์€ ๊นŠ์ด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋…ธ๋“œ์˜ ๋ฌถ์Œ ํ˜•์ œ ๋…ธ๋“œ(Sibling Node): ๊ฐ™์€ ๋ ˆ๋ฒจ์— ๋‚˜๋ž€ํžˆ ์žˆ๋Š” ๋…ธ๋“œ ๋†’์ด(Height) ๋ฆฌํ”„ ๋…ธ๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฃจํŠธ๊นŒ์ง€์˜ ๋†’์ด(height)๋ฅผ ํ‘œํ˜„ ๋ฆฌํ”„ ๋…ธ๋“œ์™€ ์ง๊ฐ„์ ‘์ ์œผ๋กœ ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ์˜ ๋†’์ด๋ฅผ ํ‘œํ˜„ ๋ถ€๋ชจ ๋…ธ๋“œ๋Š” ์ž์‹ ๋…ธ๋“œ์˜ ๊ฐ€์žฅ ๋†’์€ height ๊ฐ’์— +1ํ•œ ๊ฐ’์„ ๋†’์ด๋กœ ๊ฐ€์ง ํŠธ๋ฆฌ ๊ตฌ์กฐ์˜ ๋†’์ด๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ์—๋Š” ๊ฐ ๋ฆฌํ”„ ๋…ธ๋“œ์˜ ๋†’์ด๋ฅผ 0์œผ๋กœ ๋†“์Œ ์„œ๋ธŒ ํŠธ๋ฆฌ(Sub tree) ํŠธ๋ฆฌ ๊ตฌ์กฐ์˜ root์—์„œ ๋ป—์–ด ๋‚˜์˜ค๋Š” ํฐ ํŠธ๋ฆฌ์˜ ๋‚ด๋ถ€..

SEB/TIL 2022. 7. 26. 20:49
[DailyCoding] 04 | firstCharacter

โœ๐Ÿป Description ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฌธ์ž์—ด์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ๋‹จ์–ด์˜ ์ฒซ๊ธ€์ž๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด ๋ฆฌํ„ด ๐Ÿ“ Flow 1. ๋นˆ ๋ฌธ์ž์—ด => ๋นˆ ๋ฐฐ์—ด ๋ฆฌํ„ด 2. ๋‹จ์–ด ์ฒซ ๊ธ€์ž ๋‹ด์„ ๋ฐฐ์—ด ์„ ์–ธ 3. ๊ฐ ๋‹จ์–ด ์ฒซ๊ธ€์ž ๋ฆฌํ„ดํ•  ๋ณ€์ˆ˜ ์„ ์–ธ 4. ๋‹จ์–ด ๋ฐ˜๋ณตํ•˜๊ณ  => for ๋ฐ˜๋ณตํ•œ ๋‹จ์–ด๋Œ๋ฆฌ๋ฉด์„œ ์ถ”์ถœํ•œ ์•ž ๋‹จ์–ด๋ฅผ 3๋ฒˆ์— ๋Œ€์ž… 5. ๋ฆฌํ„ด ๐Ÿคฏ Difficulty 4๋ฒˆ์„ ์˜์‚ฌ์ฝ”๋“œ๋กœ ์ž์„ธํ•˜๊ฒŒ(?) ์ž‘์„ฑํ•˜๊ณ  ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ ๐Ÿช† Attempt ๋ ˆํผ๋Ÿฐ์Šค → ์ดํ•ด → ๊ตฌํ˜„ ํ•„์š”ํ•œ ๋ฉ”์„œ๋“œ ํ™•์ธ ๐Ÿ“š TIL charAt() String type์„ char type์œผ๋กœ ๋ณ€ํ™˜ ์‚ฌ์šฉ๋ฌธ์ž์—ด_๋ณ€์ˆ˜์ด๋ฆ„.charAt(๋ฌธ์ž์—ด ์ˆœ์„œ) ๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป Implementation if(str.length() == 0) return ""; String[] words = s..

SEB/Daily Coding 2022. 7. 26. 20:45
023 | Data Structure - Stack & Queue

๐Ÿ’™ Data Structure ๐Ÿค ์ž๋ฃŒ๊ตฌ์กฐ ๋ฐ์ดํ„ฐ๋ž€? ๋ฐ์ดํ„ฐ: ๋ฌธ์ž, ์ˆซ์ž, ์†Œ๋ฆฌ, ๊ทธ๋ฆผ, ์˜์ƒ ๋“ฑ ์‹ค์ƒํ™œ์„ ๊ตฌ์„ฑํ•˜๊ณ  ์žˆ๋Š” ๋ชจ๋“  ๊ฐ’ ๋ฐ์ดํ„ฐ๊ฐ€ ์˜๋ฏธ์žˆ์–ด์ง€๋ ค๋ฉด: ๋ถ„์„ → ์ •๋ฆฌ → ํ™œ์šฉ ๋ฐ์ดํ„ฐ์˜ ์‚ฌ์šฉ: ํ•„์š” ๋ชฉ์ ์— ๋”ฐ๋ผ ํ˜•ํƒœ ๊ตฌ๋ถ„ → ๋ถ„๋ฅ˜ ์ž๋ฃŒ๊ตฌ์กฐ๋ž€? ์ž๋ฃŒ์˜ ํšจ์œจ์ ์ธ ์ €์žฅ๊ณผ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ์ž๋ฃŒ์˜ ๋ชฉ์ ์— ๋”ฐ๋ผ ๋ถ„๋ฅ˜ํ•˜์—ฌ ๊ตฌ์กฐํ™”ํ•œ ๊ฒƒ ์ž๋ฃŒ๊ตฌ์กฐ์˜ ์ข…๋ฅ˜์™€ ๊ตฌ๋ถ„ ๐Ÿ’™ Stack ๐Ÿค Stack ์ •์˜ & ๊ตฌ์กฐ Stack: ์Œ“๋‹ค, ์Œ“์ด๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์Œ“๋Š” ์ž๋ฃŒ๊ตฌ์กฐ stack์— ๋ฐ์ดํ„ฐ ๋„ฃ๊ธฐ: push() ๊บผ๋‚ด๊ธฐ: pop() ๐Ÿค Stack ํŠน์ง• LIFO(Last-In First-Out) - ํ›„์ž…์„ ์ถœ๊ตฌ์กฐ ๋จผ์ € ๋“ค์–ด๊ฐ„ ๋ฐ์ดํ„ฐ๋Š” ์ œ์ผ ๋‚˜์ค‘์— ๋‚˜์˜ด ๊ฐ€์žฅ ๋จผ์ € ๋“ค์–ด๊ฐ„ ํ”„๋ง๊ธ€์Šค๋Š” ์œ„์—๊บผ๊ฐ€ ๋‹ค ๋จนํžˆ๊ธฐ ์ „๊นŒ์ง€ ๋‚˜์˜ฌ ์ˆ˜ ์—†์Œ public cl..

SEB/TIL 2022. 7. 25. 23:16
Prev 1 2 3 4 5 6 7 8 9 Next