C++ accumulate()的使用
accumulate有两种使用方法一种是累加模式,另外一种就是自定义类型处理。
第一种方法
第二种方法
使用accumulate必须要包含一个#include 的头文件
下面给上面两个方法举一个简单的例子
方法一:累加
#include<vector>
#include <numeric>void Main()
{//创建一个数组
int myattr[] = { 1,2,4,3,8,9,7,5,6,10 };
//将数组遍历到容器内部vector<int> V(&myattr[0], &myattr[10]);//使用accumulate()调用容器的值并相加。int SUM = accumulate(V.begin(),V.end(),0);cout << "全部总和为:" << SUM << endl;
}
输出结果
方法二:自定义类型处理
#include <numeric>
#include <iostream>
using namespace std;struct Grade
{string name;int grade;
};void main()
{Grade sub[5] = {{ "张三", 23 },{ "李四", 19 },{ "刘五", 18 },{ "李六", 20 },{ "王七", 16 }};//accumulate(开始,结束,初始值,自定义处理)int sum = accumulate(sub, sub + 3, 0, [](int a, Grade b) {return a + b.grade; });cout << sum << endl;
}
输出结果
C++ accumulate()的使用相关推荐
- Pyhton 内置 itertools 模块chain、accumulate、compress、drop、take等函数使用
Python 内置的 itertools 模块使用了 yield 生成器. 1. chain 拼接迭代器 chain 函数实现元素拼接,原型如下,参数 * 表示可变的参数: chain(*iterab ...
- C++:uniform_int_distribution、rand()和mt19937随机数、partial_sum、容器最小值和最大值、accumulate
C++:uniform_int_distribution.rand()和mt19937随机数.partial_sum.容器最小值和最大值.accumulate 1.uniform_int_distri ...
- 累加求和 Accumulate.java
//1+2+3+4+......100=? public class Accumulate { //累加求和 public static void main(String[] args){ int s ...
- C++ STL算法之accumulate函数
1. 介绍 用来计算特定范围内(包括连续的部分和初始值)所有元素的和,除此之外,还可以用指定的二进制操作来计算特定范围内的元素结果.其头文件在numeric中. accumulate原函数声明定义如 ...
- STL 中的 accumulate(C++)
STL中的accumulate的头文件为#include<numeric>, accumulate有三个形参:前两个形参是要累加的元素范围,第三个是累加的初值 数组求和 vector< ...
- STL 之accumulate,adjacent_difference,inner_product,partial_sum
accumulate,adjacent_difference,inner_product,partial_sum 这些算法都是数字算法,因此只能操作数字类型的数据. 头文件 #include < ...
- 从零开始学C++之STL(七):剩下5种算法代码分析与使用示例(remove 、rotate 、sort、lower_bound、accumulate)...
一.移除性算法 (remove) C++ Code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 2 ...
- vector的求和用法accumulate
一:直接上码演示 #include<bits/stdc++.h> using namespace std;int main(){//vector的初始化 vector<int> ...
- STL源码剖析 数值算法 accumulate | adjacent_difference | inner_product | partial_sum | power | itoa
//版本1 template <class InputIterator,class T> T accumulate(InputIterator first,InputIterator la ...
- accumulate返回值类型 提醒
一个简单的序列求和算法,用accumulate还必须传第三个参数. accumulate(VecCurrentTerse.begin(), VecCurrentTerse.end(), 0.0); 注 ...
最新文章
- rhel8手动安装mysql_RHEL8 CentOS8 下安装 MySQL 8.0亲测
- 网络营销外包专员浅析网络营销外包如何防止发布的外链被删除呢?
- 读书笔记:如何投论文
- ActiveMQ配置详解之如何配置自动重新连接
- 使用frp通过ssh访问公司内网机器
- 从零开始进行Adadelta的梯度下降
- IDM插件安装、使用方法教程
- 汇编语言教程 -- out,in
- Oracle表中新增字段
- 某CV四小龙继续裁员,AI独角兽还可以去吗?
- 深圳地铁五号线联网监控!
- 搭建个人网站(免备案)
- Excel 多级下拉菜单设置,数据有效性
- 【iMessage苹果推信家庭推】位置推通过苹果实现iMessage群发的Apple script脚本代码如下: tell application “Messages” set csvDatator
- ps导出的gif图片不能动,或是只能动一次的解决办法
- java高效随机生成随机(英文+数字),可自定义
- TP-LINK TL-WR740N 升级系统 总结
- mybatis实现数据库读写分离
- 食物链 (POJ-1182)
- 在Excel中根据条件查找匹配多个值