21xrx.com
2024-12-23 03:55:58 Monday
登录
文章检索 我的文章 写文章
C++ 数组去重操作
2023-07-05 06:22:01 深夜i     --     --
C++ 数组 去重

在C++中,数组去重是一种常见的操作。它的实现可以采用多种方法,例如使用set容器、使用sort函数等。

使用set容器进行数组去重操作可以非常方便地实现。set容器可以自动保证元素的唯一性,并且内部自带排序功能。我们只需要将原始数组元素一个个插入set容器中,然后将set容器中的元素复制回原始数组即可。以下是示例代码:


#include <iostream>

#include <set>

using namespace std;

int main()

{

  int arr[] = 4;

  int len = sizeof(arr) / sizeof(arr[0]);

  set<int> s;

  for(int i = 0; i < len; i++){

    s.insert(arr[i]);

  }

  int i = 0;

  for(auto it = s.begin(); it != s.end(); it++){

    arr[i++] = *it;

  }

  len = s.size();

  for(int i = 0; i < len; i++){

    cout << arr[i] << " ";

  }

  cout << endl;

  return 0;

}

使用sort函数进行数组去重操作也很简单,我们只需要使用sort函数先将原始数组进行排序,然后再遍历一遍数组,去除相邻的重复元素。以下是示例代码:


#include <iostream>

#include <algorithm>

using namespace std;

int main()

{

  int arr[] = 1;

  int len = sizeof(arr) / sizeof(arr[0]);

  sort(arr, arr+len);

  len = unique(arr, arr+len) - arr;

  for(int i = 0; i < len; i++){

    cout << arr[i] << " ";

  }

  cout << endl;

  return 0;

}

无论是使用set容器还是sort函数,数组去重操作都非常简单、高效。当然,在实际使用中需要根据具体情况来选择最适合的实现方式,以达到最佳的性能和效果。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复