数值算法
2016-04-24 21:54
204 查看
#include<numeric>
#include<iostream>
#include<algorithm>
#include<functional>
#include<iterator>
#include<vector>
#include<cmath>
using namespace std;
void main()
{
int ia[5]={1,2,3,4,5};
vector<int> iv(ia,ia+5);
cout<<accumulate(iv.begin(),iv.end(),0)<<endl;//0+1+2+3+4+5=15
cout<<accumulate(iv.begin(),iv.end(),0,minus<int>())<<endl;//0-1-2-3-4-5=-15
cout<<inner_product(iv.begin(),iv.end(),iv.begin(),10)<<endl;//10+1*1+2*2+3*3+4*4+5*5=65
cout<<inner_product(iv.begin(),iv.end(),iv.begin(),10,minus<int>(),plus<int>())<<endl;//10-1+1-2+2-3+3-4+4-5+5=-20
ostream_iterator<int> oite(cout," ");
partial_sum(iv.begin(),iv.end(),oite);//1 3 6 10 15(第n个新元素是前n个旧元素的相加总计)
cout<<endl;
partial_sum(iv.begin(),iv.end(),oite,minus<int>());//1 -1 -4 -8 -13(第n个元素是前n个旧元素的运算总计)
cout<<endl;
adjacent_difference(iv.begin(),iv.end(),oite);//1 1 1 1 1 1(#1元素照录,#n新元素等于#n旧元素-#n-1旧元素)
cout<<endl;
adjacent_difference(iv.begin(),iv.end(),oite,plus<int>());//1 3 5 7 9(#1元素照录,#n新元素等于op(#n旧元素,#n-1旧元素)
cout<<endl;
}
#include<iostream>
#include<algorithm>
#include<functional>
#include<iterator>
#include<vector>
#include<cmath>
using namespace std;
void main()
{
int ia[5]={1,2,3,4,5};
vector<int> iv(ia,ia+5);
cout<<accumulate(iv.begin(),iv.end(),0)<<endl;//0+1+2+3+4+5=15
cout<<accumulate(iv.begin(),iv.end(),0,minus<int>())<<endl;//0-1-2-3-4-5=-15
cout<<inner_product(iv.begin(),iv.end(),iv.begin(),10)<<endl;//10+1*1+2*2+3*3+4*4+5*5=65
cout<<inner_product(iv.begin(),iv.end(),iv.begin(),10,minus<int>(),plus<int>())<<endl;//10-1+1-2+2-3+3-4+4-5+5=-20
ostream_iterator<int> oite(cout," ");
partial_sum(iv.begin(),iv.end(),oite);//1 3 6 10 15(第n个新元素是前n个旧元素的相加总计)
cout<<endl;
partial_sum(iv.begin(),iv.end(),oite,minus<int>());//1 -1 -4 -8 -13(第n个元素是前n个旧元素的运算总计)
cout<<endl;
adjacent_difference(iv.begin(),iv.end(),oite);//1 1 1 1 1 1(#1元素照录,#n新元素等于#n旧元素-#n-1旧元素)
cout<<endl;
adjacent_difference(iv.begin(),iv.end(),oite,plus<int>());//1 3 5 7 9(#1元素照录,#n新元素等于op(#n旧元素,#n-1旧元素)
cout<<endl;
}
相关文章推荐
- UVA_10020_Minimal coverage
- 优雅的创建一个相册管理类(兼容AssetsLibrary和PhotoKit)
- Java多线程干货系列—(一)Java多线程基础
- 站立会议第七天
- win10自带中文输入法的用户体验
- 站立会议个人博客6(2016/4/24)
- 百度移动SSP启动广告
- Linux NAPI/非NAPI 网卡驱动部分
- JAVA——包(package)及对jar包的操作
- MySql-使用事件调度器(event_scheduler)
- NJUST 1922
- bzoj 3262: 陌上花开 【cdq分治】
- 数据结构 实验三 树与二叉树的常见操作
- Razor视图中的 @helper
- 【朝花夕拾】虚拟主机克隆不能上网问题总结
- usaco回文平方数
- 20145218 《Java程序设计》第03次实验报告
- Xcache加速php缓存笔记
- 开发案例2——可以保存照片的相机
- 软件工程第四个程序:结对项目 —— 电梯调度问题(总结)