码迷,mamicode.com
首页 > 其他好文 > 详细

Remove Duplicates from Sorted Array II

时间:2018-06-11 15:46:59      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:follow   dup   for   ++   UNC   remove   XA   stat   nbsp   

Remove Duplicates from Sorted Array II
描述
Follow up for ”Remove Duplicates”: What if duplicates are allowed at most twice?
For example, Given sorted array A = [1,1,1,2,2,3],
Your function should return length = 5, and A is now [1,1,2,2,3]
分析
加一个变量记录一下元素出现的次数即可。这题因为是已经排序的数组,所以一个变量即可解
决。如果是没有排序的数组,则需要引入一个 hashmap 来记录出现次数。

代码

 1 public class solution {
 2 
 3     public static void main(String[] args) {
 4         
 5         int[] A= {1,1,1,2,2,3};
 6         int n = A.length;
 7         int index=removeDuplicates(A,n);
 8         int[] B=new int[index];     //定义好数组长度不好改
 9         for(int i=0;i<index;i++) {
10             B[i]=A[i];
11             System.out.println(B[i]);
12         }
13 
14     }
15     public static int removeDuplicates(int A[], int n) {
16         if (n == 0) return 0;
17         int occur = 1;
18         int index = 0;
19         for (int i = 1; i < n; i++) {
20           if (A[index] == A[i]) {
21              if (occur < 2) {
22                  A[++index] = A[i];
23                  occur++;
24              }
25            } else {
26                   A[++index] = A[i];
27                   occur = 1;
28                  }
29         }
30     
31         return index + 1;
32     }
33 }

 

Remove Duplicates from Sorted Array II

标签:follow   dup   for   ++   UNC   remove   XA   stat   nbsp   

原文地址:https://www.cnblogs.com/ncznx/p/9167081.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!