JAVA中的数组。,重复?

时间:2015-09-30 05:31:18

标签: c arrays

我正在使用java语言编写一个函数,它接受一维数组,并将数组的大小作为函数的输入。我想知道数组中有多少个函数值。我该怎么做?

3 个答案:

答案 0 :(得分:2)

方法1( O(nlogn)):

  1. 对数组进行排序。
  2. 比较数组中的相邻元素
  3. 每当相邻元素不相等时递增计数。请使用额外的变量来处理三个连续的相同元素。
  4. 方法2( O(n) O(n)的空间复杂度):

    1. 为值创建哈希表。
    2. 如果哈希表中不存在,则插入一个值。
    3. 计算并打印哈希表中的当前值

答案 1 :(得分:1)

#Find unique items from array:
1. Create one new array
2. Take each item from existing array
3. Check if the item is exist in new array
4. **If not exist push the item into new array** else go for next item
5. After iterating all item in array get the length of new array

答案 2 :(得分:0)

#include <stdio.h>

int main ()
{
    int n[10]  = {1,2,5,5,3,4,1,4,5,11};
    int count = 0; int i = 0;
    for (i=0; i< 10; i++)
    {
        int j;
            for (j=0; j<i; j++)
                if (n[i] == n[j])
                break;
            if (i == j)
                count += 1;
    }

     printf("The counts are: %d distinct elements", count);

     return 0;
}