c++中怎么往顺序表插入数据
时间: 2023-09-13 15:12:59 浏览: 132
在C++中,可以使用顺序表来存储数据。要向顺序表中插入数据,可以按照以下步骤进行操作:
1. 确定要插入的位置。假设要在第n个位置插入数据。
2. 判断顺序表是否已满。如果顺序表已满,则需要进行扩容操作。
3. 从第n个位置开始,将后面的元素依次后移一位,给需要插入的数据腾出位置。
4. 将需要插入的数据放入第n个位置。
下面是一个示例代码,演示了如何向顺序表中插入数据:
```cpp
#include <iostream>
using namespace std;
const int MAX_SIZE = 100; // 定义顺序表的最大容量
class SeqList {
public:
SeqList() {
length = 0;
}
bool isFull() {
return length == MAX_SIZE;
}
void insert(int pos, int data) {
if (pos < 0 || pos > length) {
cout << "插入位置无效" << endl;
return;
}
if (isFull()) {
cout << "顺序表已满,无法插入" << endl;
return;
}
for (int i = length - 1; i >= pos; i--) {
array[i + 1] = array[i];
}
array[pos] = data;
length++;
cout << "插入成功" << endl;
}
void print() {
for (int i = 0; i < length; i++) {
cout << array[i] << " ";
}
cout << endl;
}
private:
int array[MAX_SIZE];
int length;
};
int main() {
SeqList list;
list.insert(0, 1);
list.insert(1, 2);
list.insert(2, 3);
list.print();
return 0;
}
```
在上面的示例代码中,我们定义了一个 `SeqList` 类来实现顺序表的功能。其中,`insert` 函数用于插入数据,`isFull` 函数用于判断顺序表是否已满,`print` 函数用于打印顺序表中的元素。在 `main` 函数中,我们创建了一个 `SeqList` 对象 `list`,并向其中插入了三个数据。最后,通过调用 `print` 函数打印出顺序表中的元素。
需要注意的是,上述代码只是一个简单的示例,没有考虑到线性表动态扩容的情况。在实际开发中,可能需要根据实际需求进行动态扩容操作。
阅读全文