建一个顺序存储的线性表,将给定的位置的元素删除。先输入线性表中数字的个数 n ,再输入 n 个数字。之后 输入要删除的元素的位置。最后将删除元素后的线性表输出。 格式要求:输出线性表中的元素时,元素后要加一个空格。用C++实现
时间: 2024-10-29 15:18:41 浏览: 14
在顺序表中删除给定位置的结点-数据结构-线性表课件
在C++中,我们可以创建一个`std::vector<int>`来表示顺序存储的线性表,并实现删除指定位置元素的功能。以下是简单的实现:
```cpp
#include <iostream>
#include <vector>
int main() {
// 输入线性表中数字的数量
int n;
std::cout << "请输入线性表中数字的个数: ";
std::cin >> n;
// 创建并初始化线性表
std::vector<int> linearList(n);
for (int i = 0; i < n; ++i) {
std::cout << "请输入第" << (i + 1) << "个元素: ";
std::cin >> linearList[i];
}
// 删除指定位置的元素
int position;
std::cout << "请输入要删除的元素的位置(从0开始): ";
std::cin >> position;
if (position >= 0 && position < n) {
// 如果位置有效,将后面的元素向前移动一位
for (int i = position; i < n - 1; ++i) {
linearList[i] = linearList[i + 1];
}
// 减少元素数量
linearList.pop_back();
} else {
std::cout << "无效的位置,未进行删除操作。\n";
}
// 输出删除元素后的线性表
std::cout << "删除元素后的线性表: ";
for (const auto& num : linearList) {
std::cout << num << " ";
}
std::cout << "\n";
return 0;
}
```
阅读全文