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

c++常用的算术生成算法

注意:

  • 算术生成算法属于小型算法,使用时包含的头文件为 #include <numeric>

算法简介:

  • accumulate   //计算容器元素累加总和
  • fill                  //向容器中添加元素

1. accumulate

功能描述:
  • 计算区间内 容器元素累计总和
函数原型:
accumulate(iterator beg, iterator end, value);
  • beg:开始迭代器
  • end:结束迭代器
  • value:起始值 
代码示例:
#include<iostream>
using namespace std;
#include <numeric>
#include <vertor>

void test01()
{
    vector<int> v;
    for(int i = 0; i <=100; i++){
        v.push_back(i);
    }

    int total = accumulate(v.begin(), v.end(), 0);
    
    cout << "total = " << total << endl;
}

int main() {

    test01();
    return 0;
}    
    
### total = 5050
#注意:这里填充的值为0,若填充1000,输出结果为6050

2.fill

功能描述:
  • 向容器中填充指定的元素
函数原型:
fill(iterator beg; iterator end, value);
  • beg:开始迭代器
  • end:结束迭代器
  • value:填充的值
代码示例:
#include<iostream>
using namespace std;
#include <numeric>
#include <vertor>
#include <algorithm>

void myPrint(int val)
{
    cout << val << "";
}

void test01()
{
    vector<int> v;
    v.resize(10);
    
    #默认是0,后期重新填充
    fill(v.begin(), v.end(), 100);

    for_each(e.begin(), e.end(), myPrint);
    cout << endl;
}

int main() {

    test01();
    return 0;
}    
    
# 100 100 100 100 100 100 100 100 100 100


文章转载自:
http://blocking.aaladrg.cn
http://brazenfaced.aaladrg.cn
http://brecciate.aaladrg.cn
http://aureomycin.aaladrg.cn
http://androstenedione.aaladrg.cn
http://cameronian.aaladrg.cn
http://biggest.aaladrg.cn
http://broadleaf.aaladrg.cn
http://anyuan.aaladrg.cn
http://catechism.aaladrg.cn
http://academize.aaladrg.cn
http://buryat.aaladrg.cn
http://chirpy.aaladrg.cn
http://bracer.aaladrg.cn
http://bern.aaladrg.cn
http://berime.aaladrg.cn
http://bleep.aaladrg.cn
http://abyssinian.aaladrg.cn
http://aristotelianism.aaladrg.cn
http://caustic.aaladrg.cn
http://auding.aaladrg.cn
http://barbados.aaladrg.cn
http://berth.aaladrg.cn
http://bacteremic.aaladrg.cn
http://acrocarpous.aaladrg.cn
http://belmopan.aaladrg.cn
http://bifocal.aaladrg.cn
http://anisochronous.aaladrg.cn
http://bisexual.aaladrg.cn
http://chabasite.aaladrg.cn
http://www.dtcms.com/a/66247.html

相关文章:

  • 深度学习项目--基于DenseNet网络的“乳腺癌图像识别”,准确率090%+,pytorch复现
  • RGV调度算法
  • C++20 `<bit>` 中的整数 2 的幂运算和 `std::bit_cast`:由浅入深的探索
  • 【土地智慧】解码土地利用的基本方针
  • 汉桑科技IPO:潜藏两大风险 公众投资者权益或受损
  • MistralAI挑战DeepSeek:开源模型能否颠覆行业巨头
  • 第6关:牛牛鱼缸-附加题
  • 工作记录 2017-01-09
  • Django系列教程(8)——函数视图及通用类视图
  • 【DevOps】使用Azure DevOps为Azure静态网站配置多阶段部署
  • OpenHarmony 编译运行qemu模拟设备
  • [内网渗透] 红日靶场2
  • Unity | 工具类:消息管理器-延迟分发
  • CSS3 用户界面设计指南
  • Vue3计算属性深度解析:经典场景与Vue2对比
  • 「JavaScript深入」Web Components:构建可重用的跨框架组件
  • 【图片合并PDF】多个文件夹里的图片合并PDF,一次性批量合并多个文件夹里的图片转成PDF,基于WPF完成方案分享
  • Netty启动源码NioEventLoop剖析accept剖析read剖析write剖析
  • windows系统,pycharm运行.sh文件
  • 【已解决】电脑空间告急?我的 Ollama、Docker Desktop软件卸载清理全记录
  • environment.resolvePlaceholders占位符解析优化
  • 分布式事务中XA 事务 和 两阶段提交(2PC)应该如何理解?
  • 自定义日志回调函数实现第三方库日志集成:从理论到实战
  • 前端面试:px 如何转为 rem
  • mysql select distinct 和 group by 哪个效率高
  • 单一责任原则在Java设计模式中的深度解析
  • 完全二叉树节点的数量 平衡二叉树
  • 【视频】SRS将RTMP转WebRTC、HLS流;获取RTSP转其它流
  • JavaScript 运算符详解
  • 关于stac和clac的进一步细节及EFLAGS