首页 > 解决方案 > 开发一个函数,该函数返回数组中存在的不同值的数量

问题描述

我想创建一个函数,该函数可以返回给定数组中存在的数量不同的值。如果例如数组是

array[5] = { 1 3 4 1 3},返回值应为 3(数组中的 3 个唯一数字)。

到目前为止,我只得到了这个:

int NewFucntion(int values[], int numValues){
for (i=0; i<numValues; i++){

我是一个新的编码器/C 语言的新手,我坚持如何继续。任何指导将不胜感激。谢谢

标签: carraysfunctionfor-loop

解决方案


将元素从 the 添加array到 thestd::set<T>并且由于set不允许重复元素,因此您只能从集合中获取元素的数量,从而为您提供不同元素的数量。

例如:

#include<set>

int NewFucntion(int values[], int numValues){

   std::set<int> set;  

   for(int i=0; i<numValues; i++){
   set.insert(values[i]);
   }

   return set.size();

}

推荐阅读