数组元素的移除
- 核心思路:创建一个新的内存空间存储移除后的数组,再将原数组delete释放,再将指针指向新数组。
| cout << "----------------------------- 数组元素的移除 -------------------------" << endl; |
| |
| |
| |
| int * pArr = new int[5] {1,3,5,7,9}; |
| int * pNewArr = new int[4]; |
| int deleteIndex = 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}; |
| 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; |
| } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示