資料結構之向量vector
阿新 • • 發佈:2018-11-11
使用STL實現vector向量
這裡將藉助STL的vector(向量)實現動態陣列,並用它來管理資料。
函式 | 功能 | 複雜度 |
---|---|---|
size() | 返回向量的元素數 | O(1) |
push_back(x) | 在向量尾新增元素x | O(1) |
pop_back() | 刪除向量的最後一個元素 | O(1) |
begin() | 返回指向向量開頭的迭代器 | O(1) |
end() | 返回指向向量尾的迭代器 | O(1) |
insert(a,x) | 在向量的位置a處插入元素x | O(n) |
erase(a) | 刪除向量中位置a的元素 | O(n) |
clear() | 刪除向量中所有元素 | O(n) |
#include<iostream>
#include<vector>
using namespace std;
void print(vector< double> V) {
for (int i = 0; i < V.size(); i++) {
cout << V[i] << " ";
}
cout << endl;
}
int main() {
vector<double> V;
V.push_back(0.1);
V.push_back(0.2);
V.push_back(0.3);
V[2] = 0.4;
print(V);//0.1 0.2 0.4
V.insert(V.begin() + 2, 0.8);
print(V);//0.1 0.2 0.8 0.4
V.erase (V.begin() + 1);
print(V);//0.1 0.8 0.4
V.push_back(0.9);
print(V);//0.1 0.8 0.4 0.9
system("pause");
return 0;
}