Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm phần tử đỉnh trong C ++

Trong hướng dẫn này, chúng ta sẽ viết một chương trình tìm phần tử đỉnh trong mảng đã cho

Phần tử đỉnh là phần tử lớn hơn các phần tử xung quanh. Hãy xem các bước để giải quyết vấn đề.

  • Khởi tạo mảng với dữ liệu giả.

  • Kiểm tra phần tử đầu tiên và phần tử cuối cùng để biết điều kiện phần tử đỉnh.

  • Lặp lại mảng từ phần tử thứ hai.

    • Kiểm tra xem phần tử hiện tại có lớn hơn phần tử trước đó và phần tử tiếp theo hay không.

    • Trả lại nếu điều kiện trên thỏa mãn.

  • In kết quả

Ví dụ

Hãy xem mã.

#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;
}

Đầu ra

Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.

7

Kết luận

Nếu bạn có bất kỳ câu hỏi nào trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.