6-1 有序数组(类模板)
时间: 2023-06-10 21:07:58 浏览: 119
以下是一个简单的有序数组类模板的实现:
```c++
template <typename T>
class OrderedArray {
private:
T* arr;
int size;
public:
OrderedArray(int s) {
size = s;
arr = new T[size];
}
~OrderedArray() {
delete[] arr;
}
void insert(T val) {
int i;
for (i = 0; i < size; i++) {
if (arr[i] > val)
break;
}
for (int j = size - 1; j > i; j--) {
arr[j] = arr[j - 1];
}
arr[i] = val;
}
};
```
使用方法:
```c++
int main() {
OrderedArray<int> arr(5);
arr.insert(3);
arr.insert(1);
arr.insert(4);
arr.insert(2);
arr.insert(5);
return 0;
}
```
这个有序数组类模板的实现是比较简单的,它有一个私有的指针成员变量 `arr` 指向一个动态分配的数组,有一个私有的 `size` 变量指示数组的大小。它还有一个公有的方法 `insert`,用于将新元素插入到数组中,并保持数组的有序性。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)