adjacent_difference : 对于给定的序列x0,x1,...,x(n-1),计算序列中相邻两个元素的差序列x1-x0,x2-x1,...,x(n-1)-x(n-2)。该算法可以把结果序列保存在原序列中,也可以保存在另一个区间中。
Neal: 基于下面的这段代码给出的总结:
- 除了比较出差值,还可以作给定的交互。
- 第一个元素是不变的放入结果中的。
- adjacent_difference() 是数值算法,使用 <numeric> 头文件。
Code:
output:
补充解释
1. 代码中可以使用这一行:copy(ilist_result.begin(), ilist_result.end(), ostream_iterator<int>(cout, " "));, 这个是因为类ostream_iterator 重载了 operator= 操作符, 源代码如下:
2. list 也可以像 vector 那样使用数组内容和指针来初始化。