数组元素的移除

  • 核心思路:创建一个新的内存空间存储移除后的数组,再将原数组delete释放,再将指针指向新数组。
cout << "----------------------------- 数组元素的移除 -------------------------" << endl;
//cout << deleteArrByIndex(0, arr11) << endl; // 示例数组
int * pArr = new int[5] {1,3,5,7,9};
int * pNewArr = new int[4];
int deleteIndex = 2; // 移除下标为2的元素
int len = 5;
for (int i = 0; i < len; ++i) {
if(i == 2) {
continue;
}
if(i <= 2) {
pNewArr[i] = pArr[i];
}else {
pNewArr[i - 1] = pArr[i];
}
}
delete[] pArr; // 回收老数组的空间 pArr = pNewArr; // 将老数组的指针指向新数组的内存空间
// 打印删除后的数组
for (int i = 0; i < 4; ++i) {
cout << pArr[i] << endl;
}

数组元素的插入

        int * pArr2 = new int[]{1,2,3,4,5};  // 1  , 3下标插入 0
int * pInsert = new int[7];
int offset = 0;
for (int i = 0; i < 5; ++i) {
if(i == 1 || i == 3) {
pInsert[i + offset] = 0;
offset ++;
} pInsert[i + offset] = pArr2[i];
}
delete[] pArr2;
pArr2 = pInsert;
for (int i = 0; i < 7; ++i) {
cout << "pArr2[" << i << "] = " << pArr2[i] << endl;
}

C++ 数组元素操作的更多相关文章

  1. PHP多维数组元素操作类

    我的框架里面一个多维数组元素操作类,主要用于读取数组中配置数据,可以通过字符串节点的方式:a.b.c 来获取和设置元素,以及多维数组的覆盖,有需求的可以参考下吧! <?php /** * Cre ...

  2. javascript 常见数组操作( 1、数组整体元素修改 2、 数组筛选 3、jquery 元素转数组 4、获取两个数组中相同部分或者不同部分 5、数组去重并倒序排序 6、数组排序 7、数组截取slice 8、数组插入、删除splice(需明确位置) 9、数组遍历 10、jQuery根据元素值删除数组元素的方)

    主要内容: 1.数组整体元素修改 2. 数组筛选 3.jquery 元素转数组 4.获取两个数组中相同部分或者不同部分 5.数组去重并倒序排序 6.数组排序 7.数组截取slice 8.数组插入.删除 ...

  3. js数组操作-找出一组按不同顺序排列的字符串的数组元素

    从一组数组中找出一组按不同顺序排列的字符串的数组元素将字符串转换成数组后再对数组进行 sort 排序,abcd 和 bdca 使用 sort 排序后会变成 abcd,将拍好序的字符串作为对象的 key ...

  4. JavaScript jQuery 中定义数组与操作及jquery数组操作

    首先给大家介绍javascript jquery中定义数组与操作的相关知识,具体内容如下所示: 1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多 ...

  5. js与jq对数组的操作

    一.数组处理 1.数组的创建  var arrayObj = new Array(); //创建一个数组  var arrayObj = new Array([size]); //创建一个数组并指定长 ...

  6. JS中数组的操作[转]

    1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限, ...

  7. Linux Shell数组常用操作详解

    Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...

  8. js数组的操作

    很早之前整理的一篇文章,感觉比较清晰. 一.数组元素的操作 1.数组的创建 var arrayObj = new Array(); var arrayObj = new Array(size); // ...

  9. segmentfault.com mongo出识以及对数组的操作

    https://segmentfault.com/a/1190000003951602 首先推荐个工具,no-sql-manager-for-mongodb-professional,虽然收费,但是每 ...

  10. NumPy 学习(2): 数组的操作

    1. 简单一维数组的操作 一维数组的操作类似于python自身的list类型. In [14]: arr = np.arange(10) In [15]: arr Out[15]: array([0, ...

随机推荐

  1. docker centos8 java8 mysql8 部署springboot项目

    docker centos8 java8 mysql8 部署springboot项目 一,用idea将springboot项目打成jar包 二,将打的jar包用xshell的rz上传到docker的c ...

  2. Jmeter函数助手29-dateTimeConvert

    dateTimeConvert函数用于将源格式进行目标格式的转换. 格式化时间:传入时间参数,此处格式需要与源时间格式一致 源时间格式:传入参数的时间格式 目标时间格式:想要转换成的格式 1.将源格式 ...

  3. 为团队配置Linux环境,简单高效的项目共享方案

    前言 最近好久没写博客了,事情太多了,我还搞了个新的好玩的项目,等后续做得差不多了来写篇文章介绍一下. 在我们目前的AI项目中,团队需要共同使用一台GPU服务器来做模型训练和数据处理.为了让每个团队成 ...

  4. 【Java】单号创建服务

    需求:ERP项目存在若干个业务功能,每个业务的单子的单号创建规则需要被统一规划 1.每个业务有自己对应的标识 2.业务单号必须以英文字母为前缀,长度在2 - 4个字符 3.单号的组成 = [ 前缀 ] ...

  5. 【MongoDB】Re05 分片集群(Win平台搭建)

    分片副本集1 (3实例)  主1 从1 裁1 分片副本集2 (3实例)  主1 从1 裁1 配置副本集(3实例) 主1 从2 路由(2配置) 用Windows平台搭建 配置目录设置: ├─config ...

  6. 【Java】File 文件类

    File 文件类 File类的一个对象,代表了一个文件和一个文件目录/文件夹 File类所属在java.io 的包下 构造器部分 - 以parent为父文件,child为子路径创建File对象,可以理 ...

  7. 【Java,IDEA】使用IDEA自动生成序列化ID

    一.设置序列化的原因: 详细见SE的IO流问题: https://www.cnblogs.com/mindzone/p/12752453.html 简单点理解就是对象的身份证号, 对于一些对象被序列之 ...

  8. configure: error: Can't find GL/gl.h. Look for Mesa devel packages for your distro.

    1. 安装文件查询工具 sudo apt install plocate 2. 查询头文件地址,shell命令: locate GL/gl.h 3. 为编译时指定其他的头文件查询地址: export ...

  9. baselines库中cmd_util.py模块对atari游戏的包装为什么要分成两部分并在中间加入flatten操作呢?

    如题: cmd_util.py模块中对应的代码: 可以看到不论是atari游戏还是retro游戏,在进行游戏环境包装的时候都是分成两部分的,如atari游戏,第一部分是make_atari,第二部分是 ...

  10. Git/Github的基本操作

    由于我之前已经安装好了Git,然后这里就不再叙述之前的相关创建账户的步骤了.直接记录一下如何在本地创建一个项目,并上传到github上面. 1.打开github官网,点击New Repository, ...