新闻详情

新闻详情

首页 / 资讯中心 / 详情

C 语言 数组删除指定元素(快慢指针法)

发布时间:2026/9/30 7:04:32来源:尧图网络
C 语言 数组删除指定元素(快慢指针法)
适用场景在原数组上原地删除所有等于目标值的元素不额外开辟新数组时间复杂度 O (n)空间复杂度 O (1)。核心原理快慢双指针快指针 i负责从头到尾遍历数组的每一个元素逐个检查。for循环每次i一定会向后移动。慢指针 j用来标记存放保留元素的位置。只有当遍历到的元素不需要删除时j才向后移动。数组 [10] [20] [40] [30] [50] i →i →i →i →i →i j →j →j →j j →j目标删除数组中所有值等于30的元素。右侧最终保留的有效数据 10 20 40 50逐步骤推演原始数组buf {10, 20, 40, 30, 50}初始状态i0j0i0buf[i]10不等于 30。执行buf[j] buf[i]buf[0]10j1i1buf[i]20不等于 30。执行buf[j] buf[i]buf[1]20j2i2buf[i]40不等于 30。执行buf[j] buf[i]buf[2]40j3i3buf[i]30等于待删除元素。不执行赋值j 保持为 3原地不动i4buf[i]50不等于 30。执行buf[j] buf[i]buf[3]50j4循环结束。j4代表删除完成之后数组有效长度为 4。数组前j个元素就是结果{10,20,40,50}。重点数组后面残留的旧数据没有被擦除我们后续只读取数组前j项即可。#include stdio.h #define MAX 5 int main(void) { int buf[MAX] {10,20,40,30,50}; int i,j 0; //快慢指针遍历数组 for(i 0; i MAX; i) { //当前元素不是要删除的值则保留 if(buf[i] ! 30) { buf[j] buf[i]; } } //打印删除后的有效数组j为新数组长度 printf(删除30之后的数组); for(i 0; i j; i) { printf(%d , buf[i]); } printf(\n); return 0; }原理示意图
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Linux磁盘管理与LVM:从基础命令到在线扩容 2026/9/30 7:57:03

Linux磁盘管理与LVM:从基础命令到在线扩容

1. 先搞清楚:Linux 磁盘管理与 LVM 到底在解决什么问题很多朋友第一次接触 Linux 服务器时,前面装系统、配网络都挺顺利,结果一到磁盘管理就懵了——明明加了块新硬盘,系统里却看不到空间;明明根分区快满了&#xff0c…

阅读更多 →
Spring Boot家教预约管理系统:从数据库设计到并发控制的实战全解析 2026/9/30 7:56:56

Spring Boot家教预约管理系统:从数据库设计到并发控制的实战全解析

做家教兼职管理系统那会儿,很多人说这类毕设项目就是“换个壳的CRUD”,但真把业务跑通之后我才发现,这个题目比表面看起来有嚼头得多。尤其是带着“补习班预约”这个功能,它涉及完整的多角色权限、状态机流转、时间冲突判断&#…

阅读更多 →
平台+AI重塑软件交付生态,成长型伙伴迎来第二增长曲线 2026/9/30 7:56:50

平台+AI重塑软件交付生态,成长型伙伴迎来第二增长曲线

前几天我在一个行业群里看到有人转发了摩尔元数2026成长型生态伙伴大会的消息,当时就对"平台AI"这个主题挺好奇。等真正把大会内容完整看完,又和几位参会的区域伙伴聊了一圈,我意识到这场大会传递的信号,可能比它本身的…

阅读更多 →
拼柜货物智能排布:从约束条件到3D模拟的实操方法 2026/9/30 7:56:50

拼柜货物智能排布:从约束条件到3D模拟的实操方法

拼柜货物智能排布的核心思路 在外贸物流中,拼柜(LCL)是将多个发货人的货物装入同一集装箱,以降低运输成本。但拼柜货物种类多、规格杂,排布不当会导致空间浪费、货损甚至重心不稳。智能排布的核心在于:将货…

阅读更多 →
【HarmonyOS 7新能力|071】智慧手势异常排查:定位配置、权限与运行期失败 2026/9/30 7:56:49

【HarmonyOS 7新能力|071】智慧手势异常排查:定位配置、权限与运行期失败

【HarmonyOS 7新能力|071】智慧手势异常排查:定位配置、权限与运行期失败 实际项目里,手势意图推断与动作干预最难处理的并不是把一次调用跑通,而是在系统推断、跨进程连接、焦点变化或文件生命周期变化后仍保持结果可信。本文围绕…

阅读更多 →
uni-app微信小程序登录页:Vue3纯CSS高转化UI实战 2026/9/30 7:56:36

uni-app微信小程序登录页:Vue3纯CSS高转化UI实战

做小程序登录页这件事,我前后推倒重来过至少七个版本。第一版是照着教程堆出来的深色背景配白色输入框,自认为挺"高级",结果上线一周后后台数据显示登录页跳出率接近四成;第二版换了配色,数据没动&#xff1…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉