zoukankan      html  css  js  c++  java
  • [leetCode]26. 删除排序数组中的重复项

    在这里插入图片描述

    解法 双指针法

    i为慢指针,j为快指针,一开始i指向第一个数组元素,j指向第2个数组元素,如果ij指向的元素相等就移动j指针跳过相同元素,如果跳过重复元素结束(nums[j]!=nums[i])就令i+1指向的元素等于j指向的元素。最后返回数组的长度i+1

    class Solution {
        public int removeDuplicates(int[] nums) {
            int i = 0;//慢指针
            //j为快指针,用于跳过重复项
            for(int j = 1; j < nums.length; j++){
                if(nums[j]!=nums[i]){//跳过重复项结束
                    nums[++i] = nums[j];//对i指针后一个位置赋值
                }
            }
            return i+1;
        }
    }
    
  • 相关阅读:
    CoreLocation
    通知(NSNotificationCenter)
    加载xib文件
    UITextField
    UIButton
    UILabel
    UIAlertController
    layoutSubviews
    Java AQS详解(转)
    Java中synchronized
  • 原文地址:https://www.cnblogs.com/PythonFCG/p/13860028.html
Copyright © 2011-2022 走看看