[JavaScript/section 1] 12 - ๋Œ€๋ฌธ์ž๋กœ ํ†ต์ผ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ ๋Œ€๋ฌธ์ž์™€ ์†Œ๋ฌธ์ž๊ฐ€ ๊ฐ™์ด ์กด์žฌํ•˜๋Š” ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋Œ€๋ฌธ์ž๋กœ ๋ชจ๋‘ ํ†ต์ผํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋‚˜๋Š” ๋ฌธ์ž์—ด ์ „์ฒด๋ฅผ toUpperCase() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋Œ€๋ฌธ์ž๋กœ ํ†ต์ผํ•ด์ฃผ์—ˆ๋‹ค. ๋˜ํ•œ, ๋Œ€๋ฌธ์ž ์ฐพ๊ธฐ ๋ฌธ์ œ์—์„œ ์‚ฌ์šฉํ–ˆ๋˜ charCodeAt() ๋ฉ”์„œ๋“œ์™€, ์•„์Šคํ‚ค์ฝ”๋“œ ๋ฒˆํ˜ธ๋ฅผ ๋ฐ›์•„ ๋ฌธ์ž์—ด์„ ๊ตฌ์„ฑํ•ด์ฃผ๋Š” String.fromCharCode() ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ™์ด ์‚ฌ์šฉํ•œ ๋ฐฉ๋ฒ•๋„ ์•Œ์•„๋ณด์•˜๋‹ค. ๐Ÿ“ ํ’€์ด // toUpperCase() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ function solution(s) { let answer = ''; answer = s.toUpperCase(); return answer; } let str = 'ItisTimeToStudy'; console.log(solution(str)); // ch..
[JavaScript/section 1] 11 - ๋Œ€๋ฌธ์ž ์ฐพ๊ธฐ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ ํ•œ ๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ํ•ด๋‹น ๋ฌธ์ž์—ด์— ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž๊ฐ€ ๋ช‡ ๊ฐœ ์žˆ๋Š”์ง€ ์•Œ์•„๋‚ด๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋‚˜๋Š” charCodeAt() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž์˜ ์•„์Šคํ‚ค์ฝ”๋“œ ๋ฒˆํ˜ธ๊ฐ€ 90๊นŒ์ง€๋ผ๋Š” ๊ฒƒ์„ ์ด์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ํ•˜์ง€๋งŒ ์ด๋ณด๋‹ค toUpperCase() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ด๋ผ๊ณ  ํ•œ๋‹ค. ๐Ÿ“ ํ’€์ด // charCodeAt() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ function solution(s) { let answer = 0; for (let x of s) { if (x.charCodeAt() < 91) answer++; } return answer; } let str = 'KoreaTimeGood'; console.log(solution(str)); // toUpperCase() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ..
[JavaScript/section 1] 10 - ๋ฌธ์ž ์ฐพ๊ธฐ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ ํ•œ ๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›๊ณ , ํŠน์ • ๋ฌธ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ํ•ด๋‹น ํŠน์ •๋ฌธ์ž๊ฐ€ ์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž์—ด์— ๋ช‡ ๊ฐœ ์กด์žฌํ•˜๋Š”์ง€ ์•Œ์•„๋‚ด๋Š” ๋ฌธ์ œ์ด๋‹ค. (๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 100์„ ๋„˜์ง€ ์•Š๋Š”๋‹ค.) ๋‚˜๋Š” for...of ๋ช…๋ น๋ฌธ๊ณผ if ์กฐ๊ฑด๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ๋˜ํ•œ, split() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ํ›„ ๋ฐฐ์—ด์˜ ๊ธธ์ด(length)๋ฅผ ๊ตฌํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ“ ํ’€์ด // for...of ๋ช…๋ น๋ฌธ๊ณผ if ์กฐ๊ฑด๋ฌธ์„ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ function solution(s, t) { let answer = 0; for (let x of s) { if (x === t) answer++; } return answer; } let str = 'COMPUTERPROGRAMMING'; console.log(solution(str, 'R'..
[JavaScript/section 1] 09 - A๋ฅผ #์œผ๋กœ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ ๋Œ€๋ฌธ์ž๋กœ ์ด๋ฃจ์–ด์ง„ ์˜์–ด ๋‹จ์–ด๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด ๋‹จ์–ด์— ํฌํ•จ๋œ 'A'๋ฅผ ๋ชจ๋‘ '#'์œผ๋กœ ๋ฐ”๊พธ์–ด ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋‚˜๋Š” ๋ฌธ์ž์—ด์„ split() ๊ณผ map() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•ด ๋ฐ˜ํ™˜ํ•ด์ฃผ๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ๋˜ํ•œ, for...of ๋ช…๋ น๋ฌธ๊ณผ replace() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•˜๋Š” ๋“ฑ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ๐Ÿ“ ํ’€์ด // split(), map() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ function solution(s) { let answer = ''; answer = s .split('') .map((x) => { if (x === 'A') { return '#'; } return x; }) .join(''); return answer; } let str = 'BANANA'..
[JavaScript/section 1] 08 - ์ผ๊ณฑ ๋‚œ์Ÿ์ด
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ ์™•๋น„๋ฅผ ํ”ผํ•ด ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋“ค๊ณผ ํ•จ๊ป˜ ํ‰ํ™”๋กญ๊ฒŒ ์ƒํ™œํ•˜๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ์—๊ฒŒ ์œ„๊ธฐ๊ฐ€ ์ฐพ์•„์™”๋‹ค. ์ผ๊ณผ๋ฅผ ๋งˆ์น˜๊ณ  ๋Œ์•„์˜จ ๋‚œ์Ÿ์ด๊ฐ€ ์ผ๊ณฑ ๋ช…์ด ์•„๋‹Œ ์•„ํ™‰ ๋ช…์ด์—ˆ๋˜ ๊ฒƒ์ด๋‹ค. ์•„ํ™‰ ๋ช…์˜ ๋‚œ์Ÿ์ด๋Š” ๋ชจ๋‘ ์ž์‹ ์ด "๋ฐฑ์„ค ๊ณต์ฃผ์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ด"์˜ ์ฃผ์ธ๊ณต์ด๋ผ๊ณ  ์ฃผ์žฅํ–ˆ๋‹ค. ๋›ฐ์–ด๋‚œ ์ˆ˜ํ•™์  ์ง๊ด€๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ๋Š”, ์ผ๊ณฑ ๋‚œ์Ÿ์ด์˜ ํ‚ค์˜ ํ•ฉ์ด 100์ด ๋จ์„ ๊ธฐ์–ตํ•ด ๋ƒˆ๋‹ค. ์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋ฐฑ์„ค๊ณต์ฃผ๋ฅผ ๋„์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ด์ค‘ for๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ 2๊ฐœ์˜ ์ž์—ฐ์ˆ˜๋ฅผ ๋ฝ‘์€ ํ›„ 9๊ฐœ์˜ ์ž์—ฐ์ˆ˜ ํ•ฉ(sum)์—์„œ ๋บ€ ๊ฐ’์ด 100์ด ๋˜์–ด์•ผ ํ•œ๋‹ค. ๊ฐ•์˜๋Œ€๋กœ splice() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๋˜์ง€๋งŒ filter() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•˜๋Š” ์›์†Œ๋“ค๋กœ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•ด ๋ฐ˜ํ™˜ํ•ด์ฃผ๋Š” ๋ฐฉ์‹์œผ๋กœ๋„ ํ’€ ์ˆ˜ ์žˆ๋‹ค..
[JavaScript/section 1] 07 - 10๋ถ€์ œ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ ์ž๋™์ฐจ 10๋ถ€์ œ๋Š” ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž์™€ ๋‚ ์งœ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ ์ผ์น˜ํ•˜๋ฉด ํ•ด๋‹น ์ง€๋™์ฐจ์˜ ์šดํ–‰์„ ๊ธˆ์ง€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ 7์ด๋ฉด 7์ผ, 17์ผ, 27์ผ์— ์šดํ–‰ํ•˜์ง€ ๋ชปํ•œ๋‹ค. ๋˜ํ•œ, ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ 0์ด๋ฉด 10์ผ, 20์ผ, 30์ผ์— ์šดํ–‰ํ•˜์ง€ ๋ชปํ•œ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„๋“ค์€ ์ผ์ผ ๊ฒฝ์ฐฐ๊ด€์ด ๋˜์–ด 10๋ถ€์ œ๋ฅผ ์œ„๋ฐ˜ํ•˜๋Š” ์ž๋™์ฐจ์˜ ๋Œ€์ˆ˜๋ฅผ ์„ธ๋Š” ๋ด‰์‚ฌํ™œ๋™์„ ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ๋‚ ์งœ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ ์ฃผ์–ด์ง€๊ณ  7๋Œ€์˜ ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ๋ ๋‘ ์ž๋ฆฌ ์ˆ˜๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ์œ„๋ฐ˜ํ•˜๋Š” ์ž๋™์ฐจ์˜ ๋Œ€์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋‚˜๋Š” ๊ฐ ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด split() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ ํ›„ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋กœ ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ์—ฌ๊ธฐ์—๋Š” ๋ฌธ์ œ๊ฐ€ ํ•˜๋‚˜ ์žˆ..
[JavaScript/section 1] 06 - ํ™€์ˆ˜
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ 7๊ฐœ์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์ด๋“ค ์ค‘ ํ™€์ˆ˜์ธ ์ž์—ฐ์ˆ˜๋“ค์„ ๋ชจ๋‘ ๊ณจ๋ผ ๊ทธ ํ•ฉ์„ ๊ตฌํ•˜๊ณ , ๊ณ ๋ฅธ ํ™€์ˆ˜๋“ค ์ค‘ ์ตœ์†Ÿ๊ฐ’์„ ์ฐพ๋Š” ๋ฌธ์ œ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 7๊ฐœ์˜ ์ž์—ฐ์ˆ˜ 12, 77, 38, 41, 53, 92, 85๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ด๋“ค ์ค‘ ํ™€์ˆ˜๋Š” 77, 41, 53, 85์ด๋ฏ€๋กœ ๊ทธ ํ•ฉ์€ 256์ด ๋˜๊ณ , ํ™€์ˆ˜๋“ค ์ค‘ ์ตœ์†Ÿ๊ฐ’์€ 41์ด ๋œ๋‹ค. ์ž์—ฐ์ˆ˜๋ฅผ 2๋กœ ๋‚˜๋ˆ„์—ˆ์„ ๋•Œ ๋‚˜๋จธ์ง€๊ฐ€ 1์ธ ๊ฒฝ์šฐ ํ™€์ˆ˜์ด๋‹ค. ๐Ÿ“ ํ’€์ด // map ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ function solution(arr) { const answer = []; let sum = 0, min = Number.MAX_SAFE_INTEGER; arr.map((num) => { if (num % 2 === 1) { sum += num; min = num < min ? nu..
[JavaScript/section 1] 05 - ์ตœ์†Ÿ๊ฐ’ ๊ตฌํ•˜๊ธฐ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ ๋ฌธ์ œ 7๊ฐœ์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๊ทธ ์ˆซ์ž ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. for ๋ฌธ์„ ์‚ฌ์šฉํ•ด๋„ ๋˜์ง€๋งŒ map ํ•จ์ˆ˜์™€ ์‚ผํ•ญ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. min ๋ณ€์ˆ˜ ๊ฒฝ์šฐ์—๋Š” Number.MAX_SAFE_INTEGER ์ƒ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ JS์—์„œ ์•ˆ์ „ํ•œ ์ตœ๋Œ€ ์ •์ˆ˜๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•˜๋ฉด ์ข‹๋‹ค. ๐Ÿ’ก์ฐธ๊ณ  ์ตœ๋Œ“๊ฐ’์„ ๊ตฌํ•  ๊ฒฝ์šฐ max = Number.MIN_SAFE_INTEGER; ๐Ÿ“ ํ’€์ด // map ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ function solution(arr) { let answer, min = Number.MAX_SAFE_INTEGER; arr.map((num) => { min = num < min ? num : min; }); answer = min; return answer; } let a..
_์„ฑํ˜ธ_
'Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (11 Page)