이 튜토리얼에서는 주어진 배열에서 피크 요소를 찾는 프로그램을 작성할 것입니다.
피크 요소는 주변 요소보다 큰 요소입니다. 문제를 해결하는 단계를 살펴보겠습니다.
-
더미 데이터로 어레이를 초기화합니다.
-
피크 요소 조건에 대한 첫 번째 요소와 마지막 요소를 확인하십시오.
-
두 번째 요소에서 배열을 반복합니다.
-
현재 요소가 이전 요소 및 다음 요소보다 큰지 확인합니다.
-
위의 조건이 충족되면 반환합니다.
-
-
결과 인쇄
예시
코드를 봅시다.
#include <bits/stdc++.h>
using namespace std;
int findPeakElement(int arr[], int n) {
if (n == 1) {
return arr[0];
}
if (arr[0] >= arr[1]) {
return arr[0];
}
if (arr[n - 1] >= arr[n - 2]) {
return arr[n - 1];
}
for (int i = 1; i < n - 1; i++) {
if (arr[i] >= arr[i - 1] && arr[i] >= arr[i + 1]) {
return arr[i];
}
}
return arr[0];
}
int main() {
int arr[] = { 1, 2, 5, 4, 7 };
cout << findPeakElement(arr, 5) << endl;
return 0;
} 출력
위의 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.
7
결론
튜토리얼에서 질문이 있는 경우 댓글 섹션에 언급하세요.