用 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
结论
如果你对本教程有任何疑问,可以在评论区提出。
广告