赞
踩
学习目标:
掌握常用的算术生成算法
注意:
算数生成算法属于小型算法,使用时包含的头文件为 #include <numeric>
算法简介:
accmulate //计算容器元素累计总和
fill //向容器中添加元素
功能描述:
计算区间内 容器元素累计总和
函数原型:
accumulate(iterator beg,iterator end, value);
//计算容器元素累计总和
//beg 开始迭代器
//end 结束迭代器
//value 起始值
示例:
#include <iostream> using namespace std; #include<string> //容器头文件 #include <vector> #include<numeric> //常用算数生成算法 void test01() { //创建容器 vector<int> v; //插入数据 for (int i=0;i<=100;i++) { v.push_back(i); } //计算 accumulate int tal = accumulate(v.begin(), v.end(), 0); //输出结果 cout << "tal = " << tal << endl; } int main() { //调用测试test01() test01(); system("pause"); return 0; }
运行图
总结:
accumulate使用时头文件注意是numeric,这个算法很实用
功能描述:
向容器中填充指定的元素
函数原型:
fill(iterator beg,iterator end,value);
//向容器中填充元素
//beg开始迭代器
//end 结束迭代器
//value 填充迭代器
示例:
#include <iostream> using namespace std; #include<string> //容器头文件 #include <vector> #include<algorithm> //常用的生成算法 fill //打印函数 void myPrint(int val) { cout << val << " "; } void test01() { //创建容器 v; vector <int> v; //改大小为10 v.resize(10); //后期在重新填充 100 fill(v.begin(), v.end(), 100); //遍历 for_each(v.begin(), v.end(), myPrint); cout << endl; } int main() { //调用测试test01() test01(); system("pause"); return 0; }
运行图:
总结:
利用fill可以将区间内元素填充为指定的值。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。