c++ Vector向量容器

使用Vector需要先在头文件定义#include<vector>

1:通过实例了解如何赋值,添加,删除 

#include <iostream>
#include<vector>
using namespace std;
int main()
{
    vector<double> v (10,14.12);//定义一个存储10个double类型元素的向量容器,其中的每一个元素都为14.12
    v[5]=10.14;	//对v[5]进行重新赋值
    v[9]=78.10;//对v[9]进行重新赋值
    vector<double>::iterator it;    //定义迭代器变量it
    for(it=v.begin();it!=v.end();it++)  //从首元素到最后一个元素的下一个元素位置结束
    {
        cout << *it << endl;//将这10个double类型的元素输出出来
    }
    cout<<endl;
    v.push_back(2);//将2这个元素从尾部添加到v向量容器中去
    v.push_back(5);//将5这个元素从尾部添加到v向量容器中去
    v.insert(v.begin()+2,1);//在第二个元素后面插入新元素1(如果前面的代码中在首位加了元素,依然是在第二个元素后加)
    v.insert(v.end(),3);//在v向量容器末尾追加新元素3
    for(it=v.begin();it!=v.end();it++)  //从首元素到最后一个元素的下一个元素位置结束
    {
        cout << *it << endl;//将这10个double类型的元素输出出来
    }
    cout<<endl;
    v.erase(v.begin()+1,v.begin()+5);   //元素从0开始计数,将第2个到第5个元素给删除掉
    for(it=v.begin();it!=v.end();it++)
    {
        cout<<*it<<endl;
    }
    cout<<endl;
    v.clear();  //将v这个向量容器给清空
    cout<<v.size()<<endl;   //输出v这个向量容器的大小
    return 0;
}

代码运行结果: 

14.12
14.12
14.12
14.12
14.12
10.14
14.12
14.12
14.12
78.1

14.12
14.12
1
14.12
14.12
14.12
10.14
14.12
14.12
14.12
78.1
2
5
3

14.12
14.12
10.14
14.12
14.12
14.12
78.1
2
5
3

0

Process returned 0 (0x0)   execution time : 0.065 s
Press any key to continue.

代码运行结果

2:反向排列

#include <iostream>
#include<algorithm>
#include<vector>
using namespace std;

int main()
{
    vector<int>v(10,1); //定义一个整形的大小为10个元素且均为1的v向量容器
    vector<int>::iterator it;   //定义迭代器变量it
    for(int i=0;i<10;i++)   //将v向量容器进行重新赋值9~0;
    {
        v[i]=i;
    }
    for(it=v.begin();it!=v.end();it++)  //遍历输出v向量容器
    {
        cout<<*it<<" ";
    }
    cout<<endl;
    reverse(v.begin(),v.end()); //反向排列向量的从首到尾之间的元素
    for(it=v.begin();it!=v.end();it++)  //遍历输出v向量容器
    {
        cout<<*it<<" ";
    }
    cout<<endl;
    return 0;
}

运行结果:

0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0

Process returned 0 (0x0)   execution time : 0.016 s
Press any key to continue.

3:sort排序(默认为升序)

#include <iostream>
#include<algorithm>
#include<vector>
using namespace std;
int main()
{
    vector<int>v(10,1); //定义一个整形的大小为10个元素且均为1的v向量容器
    vector<int>::iterator it;   //定义迭代器变量it

    for(int i=0;i<10;i++)   //将v向量容器进行重新赋值9~0;
    {
        v[i]=i;
    }
    sort(v.begin(),v.end());    //sort函数方法默认情况下对向量容器进行升序排列
    for(int j=0;j<10;j++)
    {
        cout<<v[j]<<" ";
    }
    cout<<endl;

    sort(v.begin(),v.end());
    for(int k=9;k>=0;k--)//for循环减法输出实现降序排列
    {
        cout<<v[k]<<" ";
    }
    cout<<endl;

    return 0;
}


 

猜你喜欢

转载自blog.csdn.net/acm147258369/article/details/83687709