Algorithm

9๋ฒˆ. ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฌธ์ž์—ด ๋‚ด์— ์•„๋ž˜ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. 'a'๋กœ ์‹œ์ž‘ํ•ด์„œ 'b'๋กœ ๋๋‚˜๋Š” ๊ธธ์ด 5์˜ ๋ฌธ์ž์—ด 'b'๋กœ ์‹œ์ž‘ํ•ด์„œ 'a'๋กœ ๋๋‚˜๋Š” ๊ธธ์ด 5์˜ ๋ฌธ์ž์—ด function ABCheck(str) { let str1 = str.toLowerCase() for (let i = 0; i
8๋ฒˆ. ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ํ•ด๋‹น ๋ฌธ์ž์—ด์— ๋“ฑ์žฅํ•˜๋Š” ๋‘ ์นธ์˜ ๊ณต๋ฐฑ์„ ๋ชจ๋‘ ํ•œ ์นธ์˜ ๊ณต๋ฐฑ์œผ๋กœ ๋ฐ”๊พผ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function convertDoubleSpaceToSingle(str) { return str.replace(/ /g, ' ') } ๋ณด์ž๋งˆ์ž replace๋กœ ํ’€๋ฉด ๋˜๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ.. ์‚ฌ์‹ค replace๊ฐ€ ์‹œ๊ฐ„์„ ์—„์ฒญ ์žก์•„๋จน๋Š”๋‹ค๋Š” ์ด์•ผ๊ธฐ๋ฅผ ๋“ค์–ด์„œ ใ…  ใ…  ์ซŒ ์ฐœ์ฐœํ–ˆ์œผ๋‚˜ ๊ทธ๋ž˜๋„ ๋นจ๋ฆฌ ํ’€์–ด์•ผ์ง€ ์‹ถ์–ด์„œ ์ด๋Œ€๋กœ ์ œ์ถœ.. ์Šคํ„ฐ๋””์› ๋ถ„๋“ค์€ splitํ•ด์„œ ํ’€๊ฑฐ๋‚˜, ๋ ˆํผ๋Ÿฐ์Šค๋„ for๋ฌธ์œผ๋กœ ํ’€์—ˆ๊ธธ๋ž˜ ๋‚˜๋„ ํ•œ๋ฒˆ์”ฉ ๋‹ค์‹œ ํ’€์–ด๋ณด์•„์•ผ ๊ฒ ๋‹ค
7๋ฒˆ. 2์ฐจ์› ๋ฐฐ์—ด(๋ฐฐ์—ด์„ ์š”์†Œ๋กœ ๊ฐ–๋Š” ๋ฐฐ์—ด)์„ ์ž…๋ ฅ๋ฐ›์•„ ๊ฐ ๋ฐฐ์—ด์„ ์ด์šฉํ•ด ๋งŒ๋“  ๊ฐ์ฒด๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function convertListToObject(arr) { let obj = {}; for (let i in arr) { if (arr[i].length !== 0 && !(arr[i][0] in obj)){ obj[arr[i][0]]=arr[i][1] } } return obj } ๋นˆ ๊ฐ์ฒด๋ฅผ ์ง€์ •ํ•ด์ฃผ๊ณ , ๋ฐฐ์—ด์„ ์•ˆ์—์„œ ๋นˆ ๋ฐฐ์—ด์ด ์•„๋‹ˆ๊ณ , ์ƒˆ๋กœ ๋งŒ๋“ค ๊ฐ์ฒด๋‚ด์— ๋ฐฐ์—ด๋‚ด ๋ฐฐ์—ด์˜ ์ฒซ๋ฒˆ์จฐ ๊ฐ์ฒด๊ฐ’ (์ค‘๋ณต๊ฐ’์ผ ๊ฒฝ์šฐ ์ œ์™ธํ•˜๊ธฐ ์œ„ํ•ด) ์ด ์—†์„ ๊ฒฝ์šฐ ๊ทธ ๊ฐ์ฒด๋ฅผ ์ง€์ •ํ•ด์คŒ function convertListToObject(arr) { let result = {}; for (let i = 0; i < arr.leng..
6๋ฒˆ. ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฌธ์ž์—ด์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๊ฐ€ ๋Œ€๋ฌธ์ž์ธ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function letterCapitalize(str) { let arr = str.split(' ') for (let i = 0; i "nil" console.log(text.substr(2,3)); // => "nil" ๋งŒ์•ฝ indexEnd ๊ฐ€ ์ƒ๋žต๋œ ๊ฒฝ์šฐ, substring() ๋ฌธ์ž์—ด์˜ ๋๊นŒ์ง€ ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ indexStart ๊ฐ€ indexEnd์™€ ๊ฐ™์„ ๊ฒฝ์šฐ, substring() ๋นˆ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ indexStart ๊ฐ€ indexEnd๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ, substring() ๋ฉ”์„œ๋“œ๋Š” ๋งˆ์น˜ ๋‘ ๊ฐœ์˜ ์ธ์ž๋ฅผ ๋ฐ”๊พผ ๋“ฏ ์ž‘๋™ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. .slice() var str = 'The ..
5๋ฒˆ. ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ์ˆœ์„œ๊ฐ€ ๋’ค์ง‘ํžŒ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. - ๋ฐฐ์—ด์„ ์ด์šฉํ•ด์„œ ๋’ค์ง‘๋Š” ๋ฐฉ๋ฒ• ์ด์šฉ function firstReverse(str) { return str.split('').reverse().join() } 'ti od nac uoy'์„(๋ฅผ) ์ž…๋ ฅ๋ฐ›์€ ๊ฒฝ์šฐ, 'you can do it'์„(๋ฅผ) ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค Test Result AssertionError: expected 'y,o,u, ,c,a,n, ,d,o, ,i,t' to deeply equal 'you can do it' ์ด๋Ÿฐ ์‹์œผ๋กœ ์ถœ๋ ฅ๋˜์—ˆ๋‹ค.. join() ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ๋ถ€์กฑํ–ˆ๋˜ ๊ฒƒ์œผ๋กœ.. .join() var a = ['๋ฐ”๋žŒ', '๋น„', '๋ถˆ']; var myVar1 = a.join(); // myVar1์— '๋ฐ”๋žŒ,๋น„,..
4. ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฌธ์ž์—ด์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function firstCharacter(str) { let words = str.split(' '); let first = ''; if (str.length === 0) return ''; for(let i = 0; i < words.length; i++) { first += words[i][0]; } return first; } ๋„์–ด์“ฐ๊ธฐ๊ฐ€ ์žˆ๋Š” ๋ฌธ์ž์—ด์„ ๋ ์–ด์“ฐ๊ธฐ ๊ธฐ๋ถ„์œผ๋กœ ๋ถ„๋ฆฌํ•ด์ฃผ๊ณ , ๋ฐ˜๋ณต๋ฌธ์„ ์ด์šฉํ•ด์„œ ๊ฐ ๋‹จ์–ด์˜ ์ฒซ๋ฒˆ์งธ ๋ฌธ์ž๋ฅผ ์ถœ๋ ฅํ•ด์ฃผ์—ˆ๋‹ค. function firstCharacter(str) { let arr = str.split(' ') let firstWord = arr.reduce((acc, cur..
3. ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ 2์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ์ธ์ง€ ์—ฌ๋ถ€๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function powerOfTwo(num) { let i = 0 while (i
1. ๋ฐฐ์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ์ฐจ๋ก€๋Œ€๋กœ ๋ฐฐ์—ด์˜ ์ฒซ ์š”์†Œ์™€ ๋งˆ์ง€๋ง‰ ์š”์†Œ๋ฅผ ํ‚ค์™€ ๊ฐ’์œผ๋กœ ํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function transformFirstAndLast(arr) { let obj = {}; if (arr.length === 0) return {}; obj[arr[0]] = arr[arr.length-1] return obj } 2. ์—ฐ์ด์œจ์„ ์ž…๋ ฅ๋ฐ›์•„ ์›๊ธˆ์ด 2๋ฐฐ ์ด์ƒ์ด ๋  ๋•Œ๊นŒ์ง€ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„(๋…„)์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function computeWhenDouble(interestRate) { // ์›๊ธˆ์„ ์„ ์–ธํ•˜๊ณ , ์ž„์˜๋กœ 1๋กœ ์ง€์ • // n๋…„์˜ ์ด์ž = ์—ฐ์ด์œจ * ์›๊ธˆ // ์›๊ธˆ์ด 100์ด๊ณ  ์—ฐ์ด์œจ์ด 5%๋ผ๋ฉด 1๋…„์˜ ์ด์ž๋Š” 100 + 100 * ( 5 / 100 ) // ์›๊ธˆ์ด 2๊ฐ€ ๋˜๊ธฐ ์ „๊นŒ์ง€..
2022. 09. 05 - 09. 09 3๏ธโƒฃ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค array์˜ ๊ฐ element ์ค‘ divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฐ’์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” element๊ฐ€ ํ•˜๋‚˜๋„ ์—†๋‹ค๋ฉด ๋ฐฐ์—ด์— -1์„ ๋‹ด์•„ ๋ฐ˜ํ™˜ํ•˜์„ธ์š”. function solution(arr, divisor) { var answer = []; for (let i = 0; i a - b) // ์ˆซ์ž ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ } ๊ฒฐ๊ณผ๊ฐ’์ด ๋  ๋ฐฐ์—ด ํ•˜๋‚˜๋ฅผ ์ง€์ •ํ•˜๊ณ , ๋ฐ˜๋ณต๋ฌธ์„ ์ด์šฉํ•ด์„œ ๋ฐฐ์—ด์˜ ์š”์†Œ๊ฐ€ divisor ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฐ’์„ ํ•œ ๋ฐฐ์—ด๋‚ด์— ๊ณ„์† ์ถ”๊ฐ€ํ–ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฆฌํ„ด๊ฐ’์€ ๋ฐฐ์—ด์˜ ์š”์†Œ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ์ด์šฉํ•ด ์ถœ๋ ฅํ–ˆ๋‹ค. function solutio..
2022. 09. 05 - 09. 09 2๏ธโƒฃ a = [1, 2, 3, 4] b = [a, b, c, d] ์ด๋Ÿฐ ๋ฆฌ์ŠคํŠธ๊ฐ€ ์žˆ์„ ๋•Œ [[1, a], [b, 2], [3, c], [d, 4]] ์ด๋Ÿฐ ์‹์œผ๋กœ a, b ๋ฆฌ์ŠคํŠธ๊ฐ€ ๋ฒˆ๊ฐˆ์•„๊ฐ€๋ฉด์„œ ์ถœ๋ ฅ๋˜๊ฒŒ ํ•ด์ฃผ์„ธ์š”. function youandmelist (a, b) { let listresult = []; let listfinal = []; for (let i = 0; i
2022. 09. 05 - 09. 09 1๏ธโƒฃ 10๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜๋Š” 3, 5, 6, 9์ด๊ณ  ๋‹ค ๋”ํ•˜๋ฉด 23์ž…๋‹ˆ๋‹ค. 3000๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜ ์ค‘์—์„œ 3 ๋˜๋Š” 5์˜ ๋ฐฐ์ˆ˜๋ฅผ ๋ชจ๋‘ ๋”ํ•˜๋ฉด ์–ผ๋งˆ์ผ๊นŒ์š”? function multiplesum(num) { let sum = 0; for (let i = 0; i < num; i++){ if (i % 3 === 0 || i % 5 === 0){ sum += i } } return sum } let i = 0, sum = 0; while ( i < 3000) { if (i % 3 === 0 || i % 5 === 0) { sum += i; } i++; } console.log(sum); ๋ฌธ์ œ์— ๋‚˜์™€์žˆ๋Š” 3000๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜ ๋ฒ”์œ„๋„ ์ง€์ •ํ•˜์—ฌ while ๋ฌธ์œผ๋กœ ๋Œ๋ ค์ค€ ๋‹ต
Dong _ hwa
'Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (2 Page)