我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

去除数组中val对应的数,并返回新数组的元素个数,这个为什么会超时哇,佬


int removeElement(int* nums, int numsSize, int val){
    int i,j,a;
    a=numsSize;
    for(i=0;iif(nums[i]==val){
            for(j=i+1;j[j-1]=nums[j];
            }
            a--;
            i--;
        }
        
    }
    return a;

}

丘丘了

判断条件应该都改成小于a吧,毕竟删除后遍历的次数也要跟着减少

这个时间复杂度是O(n^2),数据量比较大的时候就会超时
可以看下这篇文章,采用双指针法,将时间复杂度变为O(n)
https://programmercarl.com/0027.%E7%A7%BB%E9%99%A4%E5%85%83%E7%B4%A0.html#%E6%80%9D%E8%B7%AF

近期文章

  • 能帮看一下这个程序为啥运行不了吗,编译器在while处报错了
  • 强制下载xlsx从ajax响应无效
  • web Misc Crypto Reverse PWN
  • 取不到第二个数组里的值
  • 如何设置excel不弹出这个框框?
  • vue登录组件。点登录没有反应,请求支援!
  • 某一天是一年的哪一天怎么运行错了
  • 怎么在kaggle中开启一个服务
  • 使用PHP生成SHA512,如PHP的crypt()函数
  • R语言报错,意外的大括号是为什么?
  • 对局部变量的理解(入门)
  • python练习,求指导
  • c语言二维数组输出最高分最低分
  • mysql创建表格时的问题
  • 字符串B在A中的数量
  • 给定一个严格从小到大的正整数序列,请将中间缺少的数字补齐
  • 关于 !运算的问题(入门)
  • 打印3的乘法表怎么不对
  • Dev-C++ 5.11
  • 从Windows身份验证IIS中为PHP应用程序提取登录信息

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华