C++ STL标准模板库的算法运用

对于数据的基本操作增删改查通过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 括号起来才是一个完整的变量
    }
}

运行截图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奋斗的蜗牛小猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值