常用算数生成算法
(1)需要头文件
(2)accumulate(begin,end,0):计算容器数据和,第三个参数为起始累加值;
(3)fill(begin,end,1000):填充1000,开始定义时resize(10,0)用0填充;
代码分析
#include<iostream>
#include<list>
#include<iterator>
#include<vector>
#include<algorithm>
#include<numeric>
using namespace std;
//---------------------------------------------------------------------------
//accumulate 累加
void test01()
{
list<int > l;
for(int i=0;i<=100;i++)
{
l.push_back(i);
}
int sum=accumulate(l.begin(),l.end(),0);//0+容器总和
cout<<sum<<endl;
int sum1=accumulate(l.begin(),l.end(),1000);//1000+容器总和
cout<<sum1<<endl;
}
//--------------------------------------------------------------------------------
//fill 填充
void test02()
{
list<int> l;
l.resize(10,0); //在初始化时,resize()也可以填充
copy(l.begin(),l.end(),ostream_iterator<int>(cout," "));
cout<<endl;
fill(l.begin(),l.end(),1000);//后面填充用fill;
copy(l.begin(),l.end(),ostream_iterator<int>(cout," "));
cout<<endl;
}
int main()
{
test02();
//test01();
return 0;
}
YanWenCheng_
发布了52 篇原创文章 · 获赞 14 · 访问量 5578
私信
关注