zoukankan      html  css  js  c++  java
  • 80. Remove Duplicates from Sorted Array II

    题目链接

    题目大意:与26比较。删除数组中重复两次以上的数,剩下的数只有这种形式{1,1,2}。

    法一:将重复2次以内的数都保留,重复2次以上的数都跳过删除,其中第一次遇见没有重复的数时,应该更新计数器。代码如下(耗时2ms):

     1     public int removeDuplicates(int[] nums) {
     2         int k = 1;
     3         int cnt = 1;
     4         for(int i = 1; i < nums.length; i++) {
     5             //如果前后数相等
     6             if(nums[i] == nums[i - 1]) {
     7                 //查看重复次数是否在2的范围内
     8                 if(cnt < 2) {
     9                     nums[k++] = nums[i];
    10                     cnt++;
    11                 }
    12                 else {
    13                     cnt++;
    14                 }
    15             }
    16             //如果前后数不想等,放心保留,将计数器重置
    17             else {
    18                 nums[k++] = nums[i];
    19                 cnt = 1;
    20             }
    21         }
    22         return k;
    23     }
    View Code
  • 相关阅读:
    Python
    Python
    Python
    Python
    python
    python
    Python
    pure css做的pc登陆界面
    MvcAdmin功能介绍
    pure css做的手机版博客园(我自己博客)
  • 原文地址:https://www.cnblogs.com/cing/p/9182224.html
Copyright © 2011-2022 走看看