[코플릿] 배열

tia·2021년 10월 20일
0

코플릿

목록 보기
2/5
post-thumbnail

🌸 배열

08_getLargestElement

문제

배열을 입력받아 가장 큰 요소를 리턴

입출력 예시

let output = getLargestElement([1, 4, 3]);
console.log(output); // --> 4

output = getLargestElement([-4, -2, -9]);
console.log(output); // --> -2

나의 코드

function getLargestElement(arr) {
  let max = 0;
  for(let i=0;i<arr.length;i++){
    if(arr[i] < arr[i+1]){
      max = arr[i+1];
    }
  }
  return max;
}

number 타입 리턴을 위한 변수 max 선언
✅ for문을 이용해서, arr의 element 크기 비교
✅ for문 안에서, arr[0]arr[1]보다 작으면, max 변수에 arr[1]의 값을 할당


Reference

function getLargestElement(arr) {
  let max = arr[0];
  for (let el of arr) {
    if (el > max) {
      max = el;
    }
  }
  return max;
}

✅ 변수 maxarr[0](배열의 첫번째 값)을 할당
✅ ❗️for ... of 반복문 ❗️

  • for (let element of array) 에서 element 변수가 for ... of 구문 안에서 변하지 않는 값이라면 const로 선언도 가능

22_addToFrontOfNew

문제

배열과 요소를 입력받아 맨앞에 새로운 요소가 추가된 새로운 배열을 리턴

출력

새로운 배열(주소값 다름)을 리턴

주의 사항

  • 입력받은 배열을 수정하지 않아야 함(immutability)

입출력 예시

let input = [1, 2];
let output = addToFrontOfNew(input, 3);
console.log(output); --> [3, 1, 2];
console.log(input); --> [1, 2]

나의 코드

function addToFrontOfNew(arr, el) {
  let result = arr.slice();
  result.unshift(el);
  return result;
}

✅ 입력받은 배열을 변경하지 않기 위해, arr.slice()를 변수 result에 할당

❗️ arr.slice() 메소드
기존의 배열을 보존해야 하는 경우 배열의 전부 혹은 일부를 복사하여 원하는 작업을 수행할 수 있는 메소드

array.unshift() 메소드를 이용하여 매개변수 elresult 맨 앞에 추가


0개의 댓글

Powered by GraphCDN, the GraphQL CDN