计蒜客 挑战难题 第11题:移除数组中的重复元素

来源:互联网 发布:mac怎么设置开机密码 编辑:程序博客网 时间:2024/06/06 00:03

第11题:移除数组中的重复元素

时间限制 1000 ms
 内存限制 10000 K


给定一个升序排列的数组,去掉重复的数,并返回新的数组的长度。

例如:

   数组A = {1, 1, 2},你的函数应该返回长度2,新数组为{1, 2}

要求:

   不能新开数组分配额外的空间。即常数空间限制。

提示:

   输入一个整数n,以及其对应的数组A[n],输出新数组长度

样例输入

50 0 1 1 2

样例输出

3

仅供参考:

#include <stdio.h>#include <stdlib.h>int removeRepeatElement(int A[],int n);void main(){int *A;int n;int i;scanf("%d",&n);A=(int*)malloc(n*sizeof(int));for(i=0;i<n;i++){scanf("%d",&A[i]);}printf("%d\n",removeRepeatElement(A,n));}int removeRepeatElement(int A[],int n){int j;int index=n;for(j=0;j<n-1;j++){if(A[j]==A[j+1])index--;}return index;}

0 0
原创粉丝点击