C++动态数组vector

 一、为什么要用vector而不是数组

虽有嘉肴,弗食,不知其旨也。______,____,____________。

简单来说就是节约内存,不容易RE 

二、如何使用vector 

既谓之数组,则用之如数组

1.定义

vector<数据类型>名称
vector<int >a;

2.向末端添加元素

 It is something that only  Apple  vector can do

a.push_back(添加的元素)
a.push_back(i)//向a的末端添加一个数i

3.随机访问

a[i]

4.遍历 (C++14版本)

	for(auto i=a.begin();i!=a.end();i++){cout<<*i<<" ";}

因为i实际上是迭代器,所以输出的时候记得解引用 

5.插入元素

// 示例:vector的快速插入
vector<int> vec = {1, 3, 4};
vec.insert(vec.begin() + 1, 2); // 插入元素2 → {1,2,3,4}

扩展:vector+二分动态维护中位数,代替堆

P1168 中位数 - 洛谷

这题如果不用这种方式的话,就要通过堆这种数据结构来做

但是用上述方法十分利于新手

6.重新定义大小

void resize(size_type n);
void resize(size_type n, const value_type& val);
//参数说明
/‌/n‌:新的容器大小(元素数量)
/‌/val‌:当需要新增元素时,用于初始化新元素的值(可选参数)

 7.”发展前景“广阔

在其他stl函数里,一般参数都是迭代器。比如upper_bound(),lower_bound(),sort()数组固然是可以衔接的,但是毕竟vector访问本身就用的迭代器。二者搭配使用更佳

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/88805.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88805.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

14.使用GoogleNet/Inception网络进行Fashion-Mnist分类

14.1 GoogleNet网络结构设计import torch from torch import nn from torch.nn import functional as F from torchsummary import summary class Inception(nn.Module):def __init__(self, in_channels,c1,c2,c3,c4,**kwargs):super(Inception,self).__init__(**kwargs)#第一条…

NE综合实验2:RIP 与 OSPF 动态路由精细配置、FTPTELNET 服务搭建及精准访问限制

NE综合实验2&#xff1a;RIP 与 OSPF 动态路由精细配置、FTPTELNET 服务搭建及精准访问限制 涉及的协议可以看我之前的文章&#xff1a; RIP实验 OSPF协议&#xff1a;核心概念与配置要点解析 ACL协议&#xff1a;核心概念与配置要点解析 基于OSPF动态路由与ACL访问控制的网…

Android 插件化实现原理详解

Android 插件化实现原理详解 插件化技术是Android开发中一项重要的高级技术&#xff0c;它允许应用动态加载和执行未安装的APK模块。以下是插件化技术的核心实现原理和关键技术点&#xff1a; 一、插件化核心思想宿主与插件&#xff1a; 宿主(Host)&#xff1a;主应用APK&#…

空间智能-李飞飞团队工作总结(至2025.07)

李飞飞团队在空间智能(Spatial Intelligence)领域的研究自2024年起取得了一系列突破性进展,其里程碑成果可归纳为以下核心方向: 一、理论框架提出与定义(2024年) 1、空间智能概念系统化 a.定义: 李飞飞首次明确空间智能为“机器在3D空间和时间中感知、推理和行动的能…

【算法深练】BFS:“由近及远”的遍历艺术,广度优先算法题型全解析

前言 宽度优先遍历BFS与深度优先遍历DFS有本质上的区别&#xff0c;DFS是一直扩到低之后找返回&#xff0c;而BFS是一层层的扩展就像剥洋葱皮一样。 通常BFS是将所有路径同时进行尝试&#xff0c;所以BFS找到的第一个满足条件的位置&#xff0c;一定是路径最短的位置&#xf…

ZW3D 二次开发-创建球体

使用中望3d用户函数 cvxPartSphere 创建球体 函数定义: ZW_API_C evxErrors cvxPartSphere(svxSphereData *Sphere, int *idShape); typedef struct svxSphereData {evxBoolType Combine; /**<@brief combination method */svxPoint Center; /**<@brief sphere ce…

艺术总监的构图“再造术”:用PS生成式AI,重塑照片叙事框架

在视觉叙事中&#xff0c;我们常常面临一个核心的“对立统一”&#xff1a;一方面是**“被捕捉的瞬间”&#xff08;The Captured Moment&#xff09;&#xff0c;即摄影师在特定时间、特定地点所记录下的客观现实&#xff1b;另一方面是“被期望的叙事”**&#xff08;The Des…

ChatGPT无法登陆?分步排查指南与解决方案

ChatGPT作为全球领先的AI对话工具&#xff0c;日均处理超百万次登录请求&#xff0c;登陆问题可能导致用户无法正常使用服务&#xff0c;影响工作效率或学习进度。 无论是显示「网络错误」「账号未激活」&#xff0c;还是持续加载无响应&#xff0c;本文将从网络连接、账号状态…

用Joern执行CPGQL找到C语言中不安全函数调用的流程

1. 引入 静态应用程序安全测试&#xff08;Static application security testing&#xff09;简称SAST&#xff0c;是透过审查程式源代码来识别漏洞&#xff0c;提升软件安全性的作法。 Joern 是一个强大的开源静态应用安全测试&#xff08;SAST&#xff09;工具&#xff0c;专…

读文章 Critiques of World model

论文名称&#xff1a;对世界模型的批判 作者单位&#xff1a; CMU&#xff0c; UC SD 原文链接&#xff1a;https://arxiv.org/pdf/2507.05169 摘要&#xff1a; 世界模型&#xff08;World Model&#xff09;——即真实世界环境的算法替代物&#xff0c;是生物体所体验并与之…

利用docker部署前后端分离项目

后端部署数据库:redis部署:拉取镜像:doker pull redis运行容器:docker run -d -p 6379:6379 --name my_redis redismysql部署:拉取镜像:docker pull mysql运行容器:我这里3306被占了就用的39001映射docker run -d -p 39001:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /hom…

YOLOv11调参指南

YOLOv11调参 1. YOLOv11参数体系概述 YOLOv11作为目标检测领域的前沿算法&#xff0c;其参数体系可分为四大核心模块&#xff1a; 模型结构参数&#xff1a;决定网络深度、宽度、特征融合方式训练参数&#xff1a;控制学习率、优化器、数据增强策略检测参数&#xff1a;影响预测…

云原生核心技术解析:Docker vs Kubernetes vs Docker Compose

云原生核心技术解析&#xff1a;Docker vs Kubernetes vs Docker Compose &#x1f6a2;☸️⚙️ 一、云原生核心概念 ☁️ 云原生&#xff08;Cloud Native&#xff09; 是一种基于云计算模型构建和运行应用的方法论&#xff0c;核心目标是通过以下技术实现弹性、可扩展、高可…

keepalive模拟操作部署

目录 keepalived双机热备 一、配置准备 二、配置双机热备&#xff08;基于nginx&#xff09; web1端 修改配置文件 配置脚本文件 web2端 修改配置文件 配置脚本文件 模拟检测 开启keepalived服务 访问结果 故障模拟 中止nginx 查看IP 访问浏览器 重启服务后…

Java 中的 volatile 是什么?

&#x1f449; volatile &#xff1a;不稳定的 英[ˈvɒlətaɪl] 美[ˈvɑːlətl] adj. 不稳定的;<计>易失的;易挥发的&#xff0c;易发散的;爆发性的&#xff0c;爆炸性的;易变的&#xff0c;无定性的&#xff0c;无常性的;短暂的&#xff0c;片刻的;活泼的&#xff…

MongoDB性能优化实战指南:原理、实践与案例

MongoDB性能优化实战指南&#xff1a;原理、实践与案例 在大规模数据存储与查询场景下&#xff0c;MongoDB凭借其灵活的文档模型和水平扩展能力&#xff0c;成为众多互联网及企业级应用的首选。然而&#xff0c;在生产环境中&#xff0c;随着数据量和并发的增长&#xff0c;如何…

细谈kotlin中缀表达式

Kotlin 是一种适应你编程风格的语言&#xff0c;允许你在想什么时候写代码就什么时候写代码。Kotlin 提供了一些机制&#xff0c;帮助我们编写易读易懂的代码。其中一个非常有趣的机制是 中缀表达式&#xff08;infix notation&#xff09;。它允许我们定义和调用函数时省略点号…

[Nagios Core] CGI接口 | 状态数据管理.dat | 性能优化

链接&#xff1a;https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/ docs&#xff1a;Nagios Core Nagios Core 是功能强大的基础设施监控系统&#xff0c;包含 CGI 程序&#xff0c;允许用户通过 Web 界面查看当前状态、历史记录等。通过以下技术栈实现…

Linux进程优先级机制深度解析:从Nice值到实时调度

前言 在Linux系统中&#xff0c;进程优先级决定了CPU资源的分配顺序&#xff0c;直接影响系统性能和关键任务的响应速度。无论是优化服务器负载、确保实时任务稳定运行&#xff0c;还是避免低优先级进程拖慢系统&#xff0c;合理调整进程优先级都是系统管理和性能调优的重要技能…

深入浅出Kafka Broker源码解析(下篇):副本机制与控制器

一、副本机制深度解析 1.1 ISR机制实现 1.1.1 ISR管理核心逻辑 ISR&#xff08;In-Sync Replicas&#xff09;是Kafka保证数据一致性的核心机制&#xff0c;其实现主要分布在ReplicaManager和Partition类中&#xff1a; public class ReplicaManager {// ISR变更集合&#xff0…