目录
常用的算数生成算法
- 算术生成算法属于小型算法,使用时包含头文件#include<numberic>
- accumulate // 计算容器元素累计总和
- fill // 向容器中添加新元素
1. accumulate
- accumulate(iterator beg, iterator end, value);
- value 起始值
#include<iostream>
using namespace std;
#include<vector>
#include<algorithm>
#include<functional> // 内建函数对象
#include<numeric>
// 常用的算术生成算法
int main()
{
vector<int> v;
for(int i=0;i<=100;i++)
{
v.push_back(i);
}
// accumulate 累加
int total = accumulate(v.begin(),v.end(),0); // 第三个参数时起始累加值
cout<<"total = "<<total<<endl;
return 0;
}
2. fill
- fill(iterator beg, iterator end, value);
- value 填充的元素
#include<iostream>
using namespace std;
#include<vector>
#include<algorithm>
#include<functional> // 内建函数对象
#include<numeric>
void my_print(vector<int> &v)
{
for(vector<int>::iterator it=v.begin();it!=v.end();it++)
{
cout<<*it<<" ";
}
cout<<endl;
}
// 常用的算术生成算法
int main()
{
vector<int> v;
for(int i=0;i<=15;i++)
{
v.push_back(i);
}
my_print(v);
// fill 后期填充
fill(++v.begin(),--v.end(),20);
my_print(v);
return 0;
}