21xrx.com
2025-03-27 01:36:01 Thursday
文章检索 我的文章 写文章
C++实现数组去重函数
2023-07-09 09:02:47 深夜i     81     0
C++ 数组去重 函数

在C++编程中,数组去重是非常常见的操作。如果一个数组中存在重复元素,那么我们需要将这些重复元素删除掉,只留下不重复的元素。这种操作可以通过编写一个函数来实现。

首先,我们需要声明一个去重函数,它接受一个整型数组以及数组的大小作为参数。函数的返回值应该是一个整型值,表示去重后数组的大小。我们可以采用传参的方式,将数组的长度也传递给函数。

接下来,我们需要对整型数组进行遍历。对于每个元素,我们需要检查是否与数组中已有的元素重复。如果存在重复元素,我们需要跳过当前的元素;如果不存在重复元素,我们需要将该元素添加到一个新的数组中。在结束遍历后,我们返回新数组的长度即可。

以下是一个示例代码,实现了对整型数组进行去重的功能:

// 去重函数
int unique(int arr[], int size) {
  int n = size;
  int temp[n];
  int k = 0;
  for (int i = 0; i < n; i++) {
    int j;
    for (j = 0; j < i; j++) {
      if (arr[i] == arr[j])
        break;
      
    }
    if (i == j) {
      temp[k++] = arr[i];
    }
  }
  // 将去重后的数组复制回原数组
  for (int i = 0; i < k; i++) {
    arr[i] = temp[i];
  }
  return k;
}
int main() {
  int arr[] = 2;
  int size = sizeof(arr) / sizeof(int);
  int new_size = unique(arr, size);
  for (int i = 0; i < new_size; i++) {
    cout << arr[i] << " ";
  }
  return 0;
}

使用上面的代码,我们可以将数组去重,输出结果如下:

1 2 3 4 5 6 7

总结

C++数组去重函数是一个非常常见的操作,可以避免在后续操作中出现重复数据的情况。在实现该功能时,需要遍历整个数组,检查每个元素是否与数组中已有的元素重复,将不重复的元素添加到一个新数组中。最后,我们将去重后的数组复制回原数组,并返回去重后的数组长度。

  
  

评论区