LeetCode - 2951. Find the Peaks

henu·2023년 12월 7일
0

LeetCode

목록 보기
150/186

Solution

var findPeaks = function(mountain) {
    const res = []

    for(let i=1; i<mountain.length-1; i++) {
        if(mountain[i] > mountain[i-1] && mountain[i] > mountain[i+1]) {
            res.push(i)
        }
    }

    return res
};

Explanation

이 문제는 수로 이루어진 배열에서 peak를 찾아내는 문제이다.
문제에서 말하는 peak란?

  • 첫 번째와 마지막 요소는 피크가 될 수 없다.
  • 이웃하는 요소보다 큰 요소가 피크이다.

첫 번째와 마지막 요소는 피크가 될 수 없기에 두 요소를 제외하고 탐색한다.
조건문을 이용해서 전 요소와 후 요소보다 클 경우 추출한다.

0개의 댓글