当前位置: 首页 > news >正文

C++ STL transform_reduce 用法

一:功能

        计算两个向量的内积,它是 std::inner_product 的泛化版本,支持lambda表达式自定义运算。

二:用法

#include <iostream>
#include <vector>
#include <numeric>
#include <execution>int main() {std::vector<int> data{1, 2, 3, 4, 5};//lambda 自定义运算auto sum_of_squares = std::transform_reduce(data.begin(), data.end(),0, std::plus<>{}, [](int v) { return v*v; });std::cout << "sum_of_squares == " << sum_of_squares << "\n";//sum_of_squares = 55std::vector<int> coef{1, -1, 1, -1, 1};auto result = std::transform_reduce(data.begin(), data.end(), coef.begin(), 0);std::cout << "result == " << result << "\n";//result == 1*1 + 2*(-1) + 3*1 + 4*(-1) + 5*1 == 3
}

http://www.lryc.cn/news/412650.html

相关文章:

  • MySQL5.7 排序
  • 【Unity】3D功能开发入门系列(一)
  • 【Python体验】第五天:目录搜索、数据爬虫(评论区里写作业)
  • elasticsearch性能调优方法原理与实战
  • python print 函数参数:sep 自定义分隔符,end 自定义结尾符
  • git 使用场景
  • Ubuntu22.04 Docker更换阿里云镜像
  • Windows下Rust OpenCV环境配置
  • PostgreSQL(二十三)TOAST技术
  • 文章解读与仿真程序复现思路——电力系统自动化EI\CSCD\北大核心《海上风氢系统与沿海电网能量协同优化调度》
  • MySQL update set语句中 逗号与and的区别
  • C++面试---小米
  • Java 实现 AVL树
  • CNN卷积网络实现MNIST数据集手写数字识别
  • 深入理解Java中的时间处理与时区管理
  • 虚拟机windows server创建域
  • Java 集合框架:Java 中的 Set 集合(HashSet LinkedHashSet TreeSet)特点与实现解析
  • springboot智能健康管理平台-计算机毕业设计源码57256
  • LetterBox图像预处理方法
  • C++第五篇 类和对象(下) 初始化列表
  • C#中的通信
  • CVE-2022-21663: WordPress <5.8.3 版本对象注入漏洞深入分析
  • C语言笔试题(三)
  • minio笔记之windows下安装使用
  • 代码随想录算法训练营day31 | 56. 合并区间、738.单调递增的数字
  • 利用 Python 制作图片轮播应用
  • 报表系统之Cube.js
  • 代码随想录算法训练营第45天
  • solidity合约创建
  • 队列---循环队列实现