gpt4 book ai didi

c++ - 计算重复项并将唯一条目放入数组 [c++] 中的新数组

转载 作者:行者123 更新时间:2023-11-28 08:06:48 25 4
gpt4 key购买 nike

q. 编写一个程序,其中包含一个名为“remove_duplicates”的函数,该函数以随机顺序获取整数数组,然后消除数组中所有重复的整数。该函数应采用三个参数:

  1. 一个整数数组,它是(读取并填充到 main 中)
  2. 数组的大小。
  3. 要在 main 中打印的按引用传递的变量,以显示数组中有多少个值 没有重复。该函数不应返回一个值,但如果消除了任何重复的整数,则该函数应对其进行计数,因此新值会告诉数组中不同整数的数量。假设传递给函数的数组如下所示,传递给函数的数组大小为10。

    0 1 2 3 4 5 6 7 8 958 | 26 | 91 | 26 | 70 | 70 | 91 | 58 | 58 | 66

该函数应将数组更改为如下所示:

0       1       2     3       4      5      6      7     8      9    
58 | 26 | 91 | 70 | 66 | ?? | ?? | ?? | ?? | ??

并且它应该更改不同计数器的值,使其为 5。第 5 个单元格之后的单元格中的问号表明函数返回时这些单元格中的数字无关紧要。

我的功能有问题

void remove_duplicates ( int h[] ,int n ,int &count ){
count = 0;
int a[100];
for (int i = 0 ; i < n ; i++ )
for(int j = i ; j<n ; j++){
if(h[i]!=h[j])
a[i]=h[i];
else
count++;

最佳答案

  1. 将整个数组复制到一个 std::set 中。该集合将消除重复项,这意味着重复项的插入将失败。

  2. 将集合复制回数组。

  3. 唯一值的数量就是集合的大小。

关于c++ - 计算重复项并将唯一条目放入数组 [c++] 中的新数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10139927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com