본문 바로가기
Algorithm/JavaScript

[배열탐색] 큰 수 출력하기

by _sweep 2021. 12. 9.

자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다.

 

 

 

 

📋 문제

100 이하의 N개의 정수를 입력받아 자신의 바로 앞에 있는 수보다 큰 수만 출력한다.

이때 첫 번째 수는 무조건 출력한다.

 

 

👉 입력

N개의 정수가 주어진다.

 

 

👈 출력

자신의 바로 앞 수보다 큰 수만 한 줄로 출력한다.

 

 

📝 풀이

 

function solution(arr) {
    let answer = [];
    answer.push(arr[0])
    for (let i = 1; i < arr.length - 1; i++) {
        if (arr[i] < arr[i + 1]) {
            answer.push(arr[i + 1]);
        }
    }
    return answer;
}

let arr = [7, 3, 9, 5, 6, 12];
console.log(solution(arr));

 

function solution(arr) {
    let answer = [];
    answer.push(arr[0]);
    arr.reduce((num1, num2) => {
        if (num1 < num2) answer.push(num2);
        return num2;
    })
    return answer;
}

let arr = [7, 3, 9, 5, 6, 12];
console.log(solution(arr));

 

첫 번째 풀이는 그냥 for문을 돌며 if문으로 조건에 해당하는 것을 찾아 answer 배열에 넣어주었다.

두 번째 풀이는 reduce를 이용하여 조건에 해당하는 것을 찾으면 똑같이 answer 배열에 넣어주고 계속 진행하기 위해 두 번째 수를 리턴해 주었다.

 

 

 

 

 

댓글