声明一个整型数组,使用C++标准模板库STL中的查找算法find()进行数据的查找,然后应用排序算法Sort(),并配合使用标准函数对象Greater<T>对数据进行升序或降序排序
时间: 2024-02-03 19:14:56 浏览: 97
下面是示例代码:
```c++
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
// 声明整型数组
int arr[] = {5, 2, 9, 7, 3, 6, 1, 8, 4};
// 获取数组长度
int len = sizeof(arr) / sizeof(int);
// 使用 std::vector 封装数组,方便进行查找和排序
vector<int> v(arr, arr + len);
// 查找元素值为 3 的位置
vector<int>::iterator it = find(v.begin(), v.end(), 3);
if (it != v.end())
{
cout << "元素值为 3 的位置是: " << it - v.begin() << endl;
}
else
{
cout << "未找到元素值为 3 的元素" << endl;
}
// 对数组进行升序排序
sort(v.begin(), v.end(), greater<int>());
cout << "升序排序后的数组为: ";
for (int i = 0; i < len; i++)
{
cout << v[i] << " ";
}
cout << endl;
// 对数组进行降序排序
sort(v.begin(), v.end());
cout << "降序排序后的数组为: ";
for (int i = 0; i < len; i++)
{
cout << v[i] << " ";
}
cout << endl;
return 0;
}
```
输出结果:
```
元素值为 3 的位置是: 4
升序排序后的数组为: 9 8 7 6 5 4 3 2 1
降序排序后的数组为: 1 2 3 4 5 6 7 8 9
```
阅读全文