๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Algorithm_JS

์•Œ๊ณ ๋ฆฌ์ฆ˜(3) : ํ‰๊ท  ๊ตฌํ•˜๊ธฐ _ Lv.1

by oranssy 2022. 10. 31.
728x90
๋ฐ˜์‘ํ˜•

โญ๏ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜(3) : ํ‰๊ท  ๊ตฌํ•˜๊ธฐ _ Lv.1 โญ๏ธ


01. ๋ฌธ์ œ ์„ค๋ช…

๐Ÿงฉ ์ •์ˆ˜๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ๋ฐฐ์—ด arr์˜ ํ‰๊ท ๊ฐ’์„ returnํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด๋ณด์„ธ์š”.
๐Ÿ”’ ์ œํ•œ ์กฐ๊ฑด : โ˜‘๏ธ arr์€ ๊ธธ์ด 1 ์ด์ƒ, 100 ์ดํ•˜์ธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค. โ˜‘๏ธ arr์˜ ์›์†Œ๋Š” -10,000 ์ด์ƒ 10,000 ์ดํ•˜์ธ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.

02. " solution.js " ๋ฌธ์ œ ํ’€์–ด๋ณด๊ธฐ

๐Ÿ’ก ๋ฐฐ์—ด ์•ˆ์˜ ๊ฐ’์„ ๋ชจ๋‘ ๋”ํ•˜๊ณ , ๋ฐฐ์—ด์˜ ๊ธธ์ด๊ฐ’์œผ๋กœ ๋‚˜๋ˆ ๋ณด์ž.

const average = [1, 2, 3, 4];
function solution(arr) {
return arr.reduce((a, b) => a + b) / arr.length;
}
console.log(solution(average))

   ___ ์ฐธ๊ณ ํ•˜๊ธฐ ___
  `1   Array.prototype.reduce( ) : ๋ฐฐ์—ด์˜ ๊ฐ ์š”์†Œ์— ๋Œ€ํ•ด ์ฃผ์–ด์ง„ (reducer) ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๊ณ , ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
  `2   c / d : c ์˜ ๊ฐ’์„ d ์˜ ๊ฐ’์œผ๋กœ ๋‚˜๋ˆ„๊ธฐ

03. ๋‹ค๋ฅธ ํ’€์ด ์•Œ์•„๋ณด๊ธฐ

# 1) for๋ฌธ ํ™œ์šฉํ•˜๊ธฐ

const num = [1, 2, 3, 4];
function average(arr){
let sum = 0;
for(let i=0; i<arr.length; i++){
sum += arr[i];
}
return sum / arr.length;
}
console.log(average(num))

   ___ ์ฐธ๊ณ ํ•˜๊ธฐ ___
  `1   for๋ฌธ : ๊ด„ํ˜ธ ์•ˆ์˜ ์‹์„ ๋ฐ˜๋ณต ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

# 2) for๋ฌธ์„ ํ™œ์šฉํ•œ ๋˜ ๋‹ค๋ฅธ ํ’€์ด

const num = [1, 2, 3, 4];
function average(arr){
let sum = 0;
for(let value of arr){
sum += value;
}
return sum / arr.length;
}
console.log(average(num))

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€