c****6 发帖数: 22 | 1 既然有inner_product,很自然应该有个dot_product啊,但是
查了半天没看到。比如我有两个vector A, B,如果算他们的
dot_product,是不是只能通过transform来做,
transform(A.begin(),A.end(),B.begin(),res.begin(),binary_function)?
有其他更有效的方法吗? | p***o 发帖数: 1252 | 2 这不挺有效么,一个多余的参数都没有。
【在 c****6 的大作中提到】 : 既然有inner_product,很自然应该有个dot_product啊,但是 : 查了半天没看到。比如我有两个vector A, B,如果算他们的 : dot_product,是不是只能通过transform来做, : transform(A.begin(),A.end(),B.begin(),res.begin(),binary_function)? : 有其他更有效的方法吗?
| c****6 发帖数: 22 | 3 单就两个vector来看,是没什么不好,但要是我有要对很多个
vector一起处理,类似 \sum V_i,(当然我这里的sum不一定
就是plus) 我还要手写一个dot_product,
然后用accumulate。因为上面用的那个transform不好直接转
成binary_function。
【在 p***o 的大作中提到】 : 这不挺有效么,一个多余的参数都没有。
| p***o 发帖数: 1252 | 4 手写把 ... 多个的范型接口不好写,估计要用expression template。
【在 c****6 的大作中提到】 : 单就两个vector来看,是没什么不好,但要是我有要对很多个 : vector一起处理,类似 \sum V_i,(当然我这里的sum不一定 : 就是plus) 我还要手写一个dot_product, : 然后用accumulate。因为上面用的那个transform不好直接转 : 成binary_function。
|
|