用 C++ 在陣列中找到分隔點
本教程中,我們將找出陣列中的分隔點,該分隔點左邊的所有元素都比較小,而分隔點右邊的所有元素都比較大。
我們來看看解決這個問題的步驟。
初始化陣列。
迭代陣列。
從 0 到 I 進行迭代,並檢查每個值是否小於當前值。
從 I 到 n 迭代,並檢查每個值是否大於當前值。
如果兩個條件都滿足,則返回該值。
列印分隔點。
示例
讓我們看看程式碼。
#include <bits/stdc++.h>
using namespace std;
int findPartitionElement(int arr[], int n) {
for (int i = 0; i < n; i++) {
int is_found = true;
for (int j = 0; j < i; j++) {
if (arr[j] >= arr[i]) {
is_found = false;
break;
}
}
for (int j = i + 1; j < n; j++) {
if (arr[j] <= arr[i]) {
is_found = false;
break;
}
}
if (is_found) {
return arr[i];
}
}
return -1;
}
int main() {
int arr[] = { 4, 3, 5, 6, 7 };
cout << findPartitionElement(arr, 5) << endl;
return 0;
}輸出
如果你執行以上程式碼,你將會得到以下結果。
5
結論
如果你對本教程有任何疑問,可以在評論區提出。
廣告
資料結構
網路
關係型資料庫
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP