C语言_顺序表_OJ题

1. 移除元素

思路: 如果只能在原地考虑移除数组的话,其实我们可以想到我们只要做到输出的都是非val值即可。

那么,我们只需要将等于val的值挪到左边,将不等于val的值挪到右边就可以了,再次期间,我们需要使用两个指针控制数组,第一个指针正常便利数组,第二个指针等待第一个指针判断到等于val值进行交换,遍历结束也就区分开了val与非val值。

输出结果:

数组去重

总体思路:遍历数组,两个一前一后指针,如果元素不一样就一起往前面挪动,如果元素一样,就先挪动前指针,直到元素不一样停止下来。后指针先挪动一步(避免覆盖掉当前元素),然后将后指针赋值给前指针。

输出结果:

相关推荐
敲上瘾5 分钟前
Linux I/O 多路复用实战:Select/Poll 编程指南
linux·服务器·c语言·c++·select·tcp·poll
海天胜景19 分钟前
编译器错误消息: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET... 拒绝访问
c语言·windows
草莓熊Lotso2 小时前
【C语言强化训练16天】--从基础到进阶的蜕变之旅:Day8
c语言·开发语言·c++·刷题·强化训练
pusue_the_sun11 小时前
数据结构:二叉树oj练习
c语言·数据结构·算法·二叉树
曙曙学编程14 小时前
stm32——GPIO
c语言·c++·stm32·单片机·嵌入式硬件
XH华20 小时前
C语言第九章字符函数和字符串函数
c语言·开发语言
♞沉寂1 天前
信号以及共享内存
linux·c语言·开发语言
SunnyKriSmile1 天前
【冒泡排序】
c语言·算法·排序算法
_poplar_1 天前
08.5【C++ 初阶】实现一个相对完整的日期类--附带源码
c语言·开发语言·数据结构·c++·vscode·算法·vim
意疏1 天前
探秘C语言:数据在内存中的存储机制详解
c语言·开发语言