LeetCode | 27. 移除元素

LeetCode | 27. 移除元素

OJ链接

  • 这道题有一个方法是要删除的数据直接后一个数据挪动到前一个数据,这个方法好不好?
  • 最坏的情况下时间复杂度是O(N^2)

还有一个方法

  • 定义一个src定义一个dst,原地直接进行赋值,不进行挪动,不懂的话可以看下图

代码如下:

c 复制代码
int removeElement(int* nums, int numsSize, int val){
    int src = 0,dst = 0;

    while(src<numsSize)
    {
        if(val != nums[src])
        {
            nums[dst++] = nums[src++];
        }
        else
        {
            src++;
        }
    }
    return dst;
}
相关推荐
晓13135 分钟前
第二章 【C语言篇:入门】 C 语言基础入门
c语言·算法
yong999016 分钟前
MATLAB面波频散曲线反演程序
开发语言·算法·matlab
JicasdC123asd30 分钟前
【工业检测】基于YOLO13-C3k2-EIEM的铸造缺陷检测与分类系统_1
人工智能·算法·分类
Not Dr.Wang4221 小时前
自动控制系统稳定性研究及判据分析
算法
VT.馒头1 小时前
【力扣】2722. 根据 ID 合并两个数组
javascript·算法·leetcode·职场和发展·typescript
ffqws_1 小时前
A*算法:P5507 机关 题解
算法
执着2592 小时前
力扣hot100 - 108、将有序数组转换为二叉搜索树
算法·leetcode·职场和发展
2501_901147832 小时前
学习笔记:单调递增数字求解的迭代优化与工程实践
linux·服务器·笔记·学习·算法
AI科技星2 小时前
张祥前统一场论核心场方程的经典验证-基于电子与质子的求导溯源及力的精确计算
线性代数·算法·机器学习·矩阵·概率论
kebijuelun2 小时前
ERNIE 5.0:统一自回归多模态与弹性训练
人工智能·算法·语言模型·transformer