1 #include<iostream> 2 #include<vector> 3 using namespace std; 4 5 void print (vector<double> V) 6 { 7 for( int i = 0 ; i < V.size() ; i++) 8 { 9 cout<<V[i]<<" "; 10 } 11 cout<<endl; 12 } 13 14 int main ( int argc , const char * argv[]) 15 { 16 vector<double> V; 17 18 V.push_back(0.1); 19 V.push_back(0.2); 20 V.push_back(0.3); 21 V[2] = 0.4; 22 print(V);//0.1 0.2 0.4 23 24 V.insert(V.begin() + 2,0.8); 25 print(V);//0.1 0.2 0.8 0.4 26 27 V.erase(V.begin() + 1); 28 print(V);//0.1 0.8 0.4 29 30 V.push_back(0.9); 31 print(V);//0.1 0.8 0.4 0.9 32 33 return 0; 34 }
0.1 0.2 0.4 0.1 0.2 0.8 0.4 0.1 0.8 0.4 0.1 0.8 0.4 0.9
下面介绍Vector的成员函数示例:
函数名 | 功能 | 复杂度 |
size() | 返回向量的元素数 | O(1) |
push_back(x) | 在向量末尾添加元素x | O(1) |
pop_back() | 删除向量的最后一个元素 | O(1) |
begin() | 返回指向向量开头的迭代器 | O(1) |
end() | 返回指向向量末尾(最后一个元素的后一个位置)的迭代器 | O(1) |
insert(p,x) | 在向量的位置p处插入元素x | O(n) |
erase(p) | 删除向量中位置P的元素 | O(n) |
clear() | 删除向量中所有元素 | O(n) |
在使用vector的成员函数时,一定要注意相应的复杂度!!比如insert(),erase()与clear(),它们3个的复杂度是O(n)。
原文:https://www.cnblogs.com/xiangqi/p/10560905.html