ITPub博客

首页 > > > 一段简单代码的运行性能疑惑?

一段简单代码的运行性能疑惑?

作者:renke 时间:2019-09-03 11:19:56 0 删除 编辑

在leetcode做一道简单的算法题,自己解决了问题。但是阅读最快的那一段代码,同样是一个循环,但是时间复杂度怎么差了10倍左右?

time:0ms

class Solution {
public:
    int removeElement(vector<int>& nums, int val) {
        int fast=0,slow=0;
        for(int i=0;i<nums.size();++i)
        {
            if(nums[fast]==val)
            {
                fast++;
            }
            else
            {
                nums[slow] = nums[fast];
                slow ++;
                fast ++;
            }
        }
        return slow;
    }
};

time:8ms

class Solution {
public:
    int removeElement(vector<int>& nums, int val) {
        int i=0;
        for(unsigned int j=0;j!=nums.size();++j){
            if(nums[j]!=val)
                nums[i++]=nums[j];
        }
        return i;
    }
};




来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/430/viewspace-3151106/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-10-11

  • 博文量
    140
  • 访问量
    17929