设计和实现整型集合类(Set)
时间: 2023-05-18 07:07:13 浏览: 79
好的,整型集合类(Set)可以使用数组或链表来实现。以下是使用数组实现的示例代码:
```c++
#include <iostream>
using namespace std;
class Set {
private:
int *data;
int size;
public:
Set(int n) {
data = new int[n];
size = 0;
}
~Set() {
delete[] data;
}
void add(int x) {
for (int i = 0; i < size; i++) {
if (data[i] == x) {
return;
}
}
data[size++] = x;
}
void remove(int x) {
for (int i = 0; i < size; i++) {
if (data[i] == x) {
data[i] = data[--size];
return;
}
}
}
bool contains(int x) {
for (int i = 0; i < size; i++) {
if (data[i] == x) {
return true;
}
}
return false;
}
int getSize() {
return size;
}
};
int main() {
Set s(10);
s.add(1);
s.add(2);
s.add(3);
s.add(2);
s.remove(3);
cout << s.contains(1) << endl;
cout << s.contains(2) << endl;
cout << s.contains(3) << endl;
cout << s.getSize() << endl;
return 0;
}
```
这个 Set 类使用动态数组来存储整型元素,可以添加、删除、查询元素,还可以获取集合大小。