zoukankan      html  css  js  c++  java
  • STL-vector

      1 #include <iostream>
      2 #include <cstdio>
      3 #include <vector>
      4 
      5 using namespace std;
      6 
      7 // 注意:vector在尾部添加或移动元素非常快,在中间操作非常耗时,因为它需要移动元素
      8 
      9 
     10 int main()
     11 {
     12     vector<int> v1;
     13     //push_back
     14     v1.push_back(1);
     15     //pop_back
     16     v1.push_back(2);
     17     // front,back,可以做左值
     18     cout<<v1.front()<<endl;
     19     cout<<v1.back()<<endl;
     20     // 左值
     21     v1.back()=5;
     22 
     23     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
     24     {
     25         cout<<*it<<" ";
     26     }
     27     cout<<endl;
     28 
     29     v1.pop_back();
     30 
     31     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
     32     {
     33         cout<<*it<<" ";
     34     }
     35     cout<<endl;
     36 
     37 
     38     // 以上是直接初始化方式
     39     // 还有以下三种初始化方式
     40     vector<int> v2=v1;
     41 
     42     vector<int> v3(v1.begin(),v1.begin()+1);
     43     vector<int> v4(v1.begin(),v1.end());
     44 
     45     vector<int> v5(3,9);
     46 
     47     for(vector<int>::iterator it=v5.begin();it!=v5.end();++it)
     48     {
     49         cout<<*it<<" ";
     50     }
     51     cout<<endl;
     52 
     53 
     54     for(int i=0;i<=5;++i)
     55     {
     56         v1.push_back(i);
     57     }
     58 
     59     // 用迭代器,逆向遍历
     60     for(vector<int>::reverse_iterator it=v1.rbegin();it!=v1.rend();it++)
     61     {
     62         cout<<*it<<" ";
     63     }
     64     cout<<endl;
     65     // 正向
     66     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
     67     {
     68         cout<<*it<<" ";
     69     }
     70     cout<<endl;
     71 
     72 
     73     vector<int> v(10);
     74     cout<<v.size()<<endl;
     75 
     76     v.push_back(100);
     77 
     78     cout<<v.size()<<endl;
     79     for(vector<int>::iterator it=v.begin();it!=v.end();++it)
     80     {
     81         cout<<*it<<" ";
     82     }
     83     cout<<endl;
     84 
     85     // 删除
     86     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
     87     {
     88         cout<<*it<<" ";
     89     }
     90     cout<<endl;
     91     v1.erase(v1.begin(),v1.begin()+3);
     92     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
     93     {
     94         cout<<*it<<" ";
     95     }
     96     cout<<endl;
     97 
     98     v1.erase(v1.begin()+3);
     99     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
    100     {
    101         cout<<*it<<" ";
    102     }
    103     cout<<endl;
    104 
    105 
    106     // 插入
    107     v1.insert(v1.begin()+2,10);
    108     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
    109     {
    110         cout<<*it<<" ";
    111     }
    112     cout<<endl;
    113 
    114     v1.insert(v1.begin()+1,3,33);
    115     for(vector<int>::iterator it=v1.begin();it!=v1.end();++it)
    116     {
    117         cout<<*it<<" ";
    118     }
    119     cout<<endl;
    120 
    121 
    122     return 0;
    123 }
  • 相关阅读:
    web高级第一节
    Socket网络编程
    redis第三节
    redis第二节
    Git(2)
    Xamarin.Android 应用程序配置
    Android--ListView与数据绑定(Xamarin)
    Android--Activity(活动)
    Xamarin Android 真机调试时闪退
    wpf 将Style应用到 ListView 中的 ListViewItem 元素
  • 原文地址:https://www.cnblogs.com/jishuren/p/12238474.html
Copyright © 2011-2022 走看看