力扣算法篇:删除有序数组中的重复项

删除有序数组中的重复项

题解如下:

class Solution {
     
public:
    int removeDuplicates(vector<int>& nums) {
     
        //原数组长度
        int n = nums.size();
        //使用一个临时变量来保存数组中元素的值
        int temp = 0;
        //使用一个变量保存元素值的个数
        int num = 0;
        for(int i = 0;i<n;i++){
     
            temp = nums[i];
            num = 0;
            for(int j = i+1;j<n;j++){
     
                if(temp == nums[j]){
     
                    num++;
                }else{
     
                    break;
                }
            }
            //将后面的值往前移
            for(int x = i+1;x<n-num;x++){
     
                nums[x] = nums[x+num];
            }
            n = n-num;
        }
        return n;
    }
};

你可能感兴趣的:(力扣算法篇,算法,leetcode)