๋ฌธ์ž์—ด ํƒ์ƒ‰

Algorithm/์ธํ”„๋Ÿฐ(inflearn)

[JavaScript/section 3] 04 - ๊ฐ€์žฅ ์งง์€ ๋ฌธ์ž๊ฑฐ๋ฆฌ

๐Ÿ“Œ ๋ฌธ์ œ ํ•œ ๊ฐœ์˜ ๋ฌธ์ž์—ด s์™€ ๋ฌธ์ž t๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๋ฌธ์ž์—ด s์˜ ๊ฐ ๋ฌธ์ž๊ฐ€ ๋ฌธ์ž t์™€ ๋–จ์–ด์ง„ ์ตœ์†Œ๊ฑฐ๋ฆฌ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๐Ÿ“ ํ’€์ด ๐Ÿง‘๐Ÿป‍๐Ÿ’ป ๋‚˜์˜ ํ’€์ด ๋ฐฉ๋ฒ• ๋ฌธ์ž์—ด์„ ์ฐจ๋ก€๋Œ€๋กœ ๋Œ๋ฉด์„œ slice() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ ๋ฌธ์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ์„ ๋‚˜๋ˆˆ๋‹ค. ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ ๊ฐ๊ฐ lastIndexOf(), indexOf() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž t์™€ ๋–จ์–ด์ง„ ๊ฑฐ๋ฆฌ๋ฅผ ์ธก์ •ํ•œ๋‹ค. Math.min() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์†Œ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•œ ํ›„ ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค. function solution(s, t) { const answer = []; for (let i = 0; i < s.length; i++) { if (s[i] === t) { answer.push(0); } else { // ๊ฐ ๋ฌธ์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ..

Algorithm/์ธํ”„๋Ÿฐ(inflearn)

[JavaScript/section 3] 01 - ํšŒ๋ฌธ ๋ฌธ์ž์—ด

๐Ÿ“Œ ๋ฌธ์ œ ์•ž์—์„œ ์ฝ์„ ๋•Œ๋‚˜ ๋’ค์—์„œ ์ฝ์„ ๋•Œ๋‚˜ ๊ฐ™์€ ๋ฌธ์ž์—ด์„ ํšŒ๋ฌธ ๋ฌธ์ž์—ด์ด๋ผ๊ณ  ํ•œ๋‹ค. ๋ฌธ์ž์—ด์ด ์ž…๋ ฅ๋˜๊ณ  ํ•ด๋‹น ๋ฌธ์ž์—ด์ด ํšŒ๋ฌธ ๋ฌธ์ž์—ด์ด๋ฉด "YES", ํšŒ๋ฌธ ๋ฌธ์ž์—ด์ด ์•„๋‹ˆ๋ฉด "NO"๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋‹จ, ํšŒ๋ฌธ์„ ๊ฒ€์‚ฌํ•  ๋•Œ ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๐Ÿ‘จ๐Ÿป‍๐Ÿ’ป ๋‚˜์˜ ํ’€์ด ๋ฐฉ๋ฒ• ๋ฌธ์ž์—ด์„ split() ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค์–ด์ค€ ํ›„, reverse() ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋’ค์ง‘์–ด ์ค€๋‹ค. join() ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋ฐฐ์—ด์„ ๋‹ค์‹œ ๋ฌธ์ž์—ด๋กœ ๋งŒ๋“ค์–ด์ค€ ํ›„, ๊ธฐ์กด ๋ฌธ์ž์—ด๊ณผ ๋น„๊ตํ•ด ์ผ์น˜ํ•œ๋‹ค๋ฉด ํšŒ๋ฌธ ๋ฌธ์ž์—ด์ด๋ฏ€๋กœ ''YES"๋ฅผ ์ถœ๋ ฅํ•ด์ฃผ๊ณ , ์ผ์น˜ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด "NO"๋ฅผ ์ถœ๋ ฅํ•ด์ค€๋‹ค. ๐Ÿ‘จ๐Ÿป‍๐Ÿซ ๊ฐ•์‚ฌ๋‹˜ ํ’€์ด ๋ฐฉ๋ฒ• ๋ฌธ์ž์—ด ๊ธธ์ด์˜ ์ ˆ๋ฐ˜๋งŒํผ for ๋ฐ˜๋ณต๋ฌธ์„ ์ด์šฉํ•ด ์ง์ ‘ ๋น„๊ตํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๊ฐ€์šด๋ฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์–‘์ชฝ์„ ๋น„๊ตํ•˜๋ฉด์„œ ๊ฐ๊ฐ์˜ ๋ฌธ์ž๊ฐ€ ..

ํ”„๋ก ํŠธ์—”๋“œ ์—”์ง€๋‹ˆ์–ด
'๋ฌธ์ž์—ด ํƒ์ƒ‰' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก