对于数据的基本操作增删改查通过c++提供的algorithm库进行实现
线性表的初始化通过输入数据直到data==0结束。
线性表的打印从第一个开始顺序打印
#include <iostream>
#include<stdio.h>
#include<vector>
#include<string.h>
#include<algorithm>//算法的封装
using namespace std;
void Print_vector(vector<int> node);
void Init_vector(vector<int> *node);
int main() {
int n;
vector<int> num;//声明线性表
Init_vector(&num);//传递表的地址
Print_vector(num);//打印
num.push_back(55);//增,尾插一个元素
cout << "尾插一个数55" << endl;
Print_vector(num);
num.erase(num.begin()+1);//删除第二位置的数,delete num[1]
cout << "删除第二位置的数" << endl;
Print_vector(num);
num[0] = 0;//改
cout << "第一个数修改为0" << endl;
Print_vector(num);//查找 遍历即为查找
reverse(num.begin(),num.end());//逆置
cout << "逆序" << endl;;
Print_vector(num);
sort(num.begin(), num.end());//排序 默认升序
cout << "排序" << endl;
Print_vector(num);
}
void Print_vector(vector<int> node) {
for (int i = 0; i < node.size(); i++) {
cout << node[i] << " ";
}
cout << endl;
}
void Init_vector(vector<int> *node) {
int n;
while (1) {
cin >> n;
if (n == 0)break;
(*node).push_back(n);//*和node 括号起来才是一个完整的变量
}
}
运行截图