数组冒泡排序C++去重
时间: 2024-04-10 10:24:47 浏览: 71
以下是使用冒泡排序算法对C++数组进行去重的例代码[^1]:
```cpp
#include <iostream>
using namespace std;
int main() {
int a[100];
int n;
cin >> n;
for(int i = 0; i < n; i++) {
cin >> a[i];
}
// 冒泡排序
for(int i = 0; i < n-1; i++) {
for(int j = 0; j < n-i-1; j++) {
if(a[j] > a[j+1]) {
int temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
// 去重
int m = 0;
for(int i = 0; i < n; i++) {
if(a[i] != a[i+1]) {
a[m] = a[i];
m++;
}
}
cout << m << endl;
for(int i = 0; i < m; i++) {
cout << a[i] << " ";
}
return 0;
}
```
请注意,这里使用了冒泡排序算法对数组进行排序,然后通过比较相邻元素的值来去重。排序后,相同的元素会相邻,然后通过遍历数组,将不重复的元素放在数组的前面,最后输出去重后的数组。
阅读全文