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;
}
相关推荐
wuqingshun3141591 分钟前
蓝桥杯 冶炼金属
算法·职场和发展·蓝桥杯
jndingxin2 小时前
OpenCV CUDA模块光流计算-----实现Farneback光流算法的类cv::cuda::FarnebackOpticalFlow
人工智能·opencv·算法
编程绿豆侠2 小时前
力扣HOT100之栈:394. 字符串解码
java·算法·leetcode
朝朝又沐沐2 小时前
基于算法竞赛的c++编程(18)string类细节问题
开发语言·c++·算法
记得早睡~2 小时前
leetcode73-矩阵置零
数据结构·leetcode·矩阵
爱coding的橙子3 小时前
每日算法刷题Day27 6.9:leetcode二分答案2道题,用时1h20min
算法·leetcode·职场和发展
GalaxyPokemon3 小时前
LeetCode - 3. 无重复字符的最长子串
算法·哈希算法·散列表
a.3023 小时前
C++ 时间处理指南:深入剖析<ctime>库
数据结构·c++·算法
亮亮爱刷题3 小时前
算法刷题-回溯
算法
Neil今天也要学习4 小时前
永磁同步电机无速度算法--自适应龙贝格观测器
算法