21xrx.com
2024-12-28 11:52:05 Saturday
登录
文章检索 我的文章 写文章
C++常用取值算法
2023-06-22 01:20:26 深夜i     --     --
C++ 取值算法 常用 STL find()函数

在C++编程中,常常需要对数组或容器进行取值操作,这时候就可以使用一些常用的取值算法来快速地获取数据,提升程序的效率。以下是C++常用的取值算法:

1. find函数:查找元素

find函数用于在一个容器中查找指定元素,返回该元素的迭代器。如果找不到,返回容器的end迭代器。

示例代码:


vector<int> vec2;

auto it = find(vec.begin(), vec.end(), 6); // 查找元素6的迭代器

if (it != vec.end()) {

  cout << *it << endl; // 输出6

} else

  cout << "not found" << endl; // 没有找到

2. count函数:统计元素个数

count函数用于统计一个容器中指定元素的个数。

示例代码:


vector<int> vec 3;

int cnt = count(vec.begin(), vec.end(), 3); // 统计元素3的个数

cout << cnt << endl; // 输出3

3. accumulate函数:累加元素

accumulate函数用于对一个容器中的元素进行累加计算,返回计算结果。需要注意的是,accumulate函数要求容器内元素类型支持"+"运算。

示例代码:


vector<int> vec 2;

int sum = accumulate(vec.begin(), vec.end(), 0); // 对容器元素进行累加计算,初始值为0

cout << sum << endl; // 输出15

4. min_element和max_element函数:查找最小或最大元素

min_element和max_element函数用于在一个容器中查找最小或最大的元素。返回最小或最大元素的迭代器。

示例代码:


vector<int> vec 8;

auto it1 = min_element(vec.begin(), vec.end()); // 查找最小元素

auto it2 = max_element(vec.begin(), vec.end()); // 查找最大元素

cout << *it1 << endl; // 输出1

cout << *it2 << endl; // 输出8

5. reverse函数:反转元素顺序

reverse函数用于将一个容器中的元素顺序反转。

示例代码:


vector<int> vec 4;

reverse(vec.begin(), vec.end()); // 反转元素顺序

for (auto x : vec)

  cout << x << " "; // 输出5 4 3 2 1

总之,使用这些常用的取值算法,可以方便地对C++程序中的数组或容器进行元素取值操作,提高程序的效率和灵活性。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复