zoukankan      html  css  js  c++  java
  • javac++的stl解决重复的元素

    
    
     java:
    类似于c++的stl的unique的具体实现
    class
    Solution { public int removeDuplicates(int[] nums) { if (nums.length == 0) return 0; int i = 0; for (int j = 1; j < nums.length; j++) { if (nums[j] != nums[i]) { i++; nums[i] = nums[j]; //相当与在把不重复往前面移动
    //如果在这里对nums【i】进行收集则就实现了remove的功能
    } } return i + 1; } }

    原地删除重复的元素:
    
    
    class Solution {
    
    
    public:
    
    
        int removeElement(vector<int>& nums, int val) {
    
    
            int i=0;
    
    
            for(int j=0;j<nums.size();++j)
    
    
                if(nums[j]!=val)
    
    
                {
    
    
                    nums[i]=nums[j];
    
    
                    i++;
    
    
                }
    
    
            return i;
    
    
        }
    
    
    };
     
    
    
    
    class Solution {
    public:
        int removeDuplicates(vector<int>& nums) {
             nums.erase(unique(nums.begin(),nums.end()),nums.end());
            return nums.size();
        }
    };
  • 相关阅读:
    [Linux]
    [Nginx]
    [Nginx]
    [Linux]
    [Linux]
    [Linux]
    [Linux]
    [Linux] -Docker修改空间大小
    [Linux]
    [MySql]
  • 原文地址:https://www.cnblogs.com/z2529827226/p/11747928.html
Copyright © 2011-2022 走看看