[위코드 No.3] for문

너무나 어이없지만 너무나 고민했었어서 다시 한번 정리해본다... -__- 아직까지 for문에 대해 완벽하게 이해하지 못한것같아 속상쓰하다..

문제

findSmallestElement 함수를 구현해 주세요.
findSmallestElement 의 arr 인자는 숫자 값으로만 이루어진 배열입니다.

  • arr 의 값들 중 가장 작은 값을 리턴 해주세요.
  • 만일 arr 가 비어있으면 0을 리턴 해주세요.
    예를 들어, 다음과 같은 배열이 인자(input)으로 들어왔다면 1이 리턴 되어야 합니다.
[20, 200, 23, 1, 3, 9]

나름대로의 알고리즘 🧐

  1. 우선 비어있을 때 0을 리턴 해줘야하니 if문으로 조건을 걸어준다.
  2. else일때, arr의 값을 하나씩 비교해준다.(이때 어떻게 하나씩 비교해줄까 굉장히 고민 많이했다..)
  3. 피드백 받은 후 작성 👉 변수를 만든 뒤 기준으로 둘 요소를 하나 할당한다. (let basic = arr[0];)
  4. 반복문을 통해 요소 하나 하나에 접근한다.(초기값 i는 0, i는 arr.length보다 작고, 계속 증가해서 접근 시킴)
  5. 만약 basic이 arr[i]보다 작다면 담아낸다.(큰것은 볼 필요 없기때문에 if문 하나로 끝)

최종 코드 🧚‍♀️

const arr = [20, 200, 23, 1, 3, 9];

function findSmallestElement(arr) {
  let basic = arr[0];

  if(arr.length === 0){
    return 0;
  } else {
    for(let i = 0; i < arr.length; i++){
      if(basic > arr[i]){
        basic = arr[i];
      }
    }
    return arr2;
  }
}

console.log(findSmallestElement(arr));

좋은 웹페이지 즐겨찾기