c++ 向量的值逆序输出_C++中vector的常用方法
前言
在C++中,vector是一個商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。十分有用的容器。它能像容器一樣存放各種類型的對象,簡單來說,vector是一個能夠存放任意類型的動態(tài)數(shù)組,能夠增加和壓縮數(shù)據(jù)。
相較鏈表而言,vector中提供了大量的方法供直接使用,降低了代碼復(fù)雜度,也提高了易讀性。
注意:vector相較于鏈表,實現(xiàn)插入和刪除操作時效率較低,當動態(tài)添加的數(shù)據(jù)超過系統(tǒng)所分配的默認內(nèi)存大小時,要進行整體的重新分配、拷貝和釋放。
實例
基本操作
1.頭文件
#include
2.創(chuàng)建vector對象
vector test;
3.尾部插入
int a = 0;
test.push_back(a);
4.使用下標訪問元素
test[0] = 1;
5.插入元素
test.insert(test.begin()+i, a); //在第i+1個元素前插入a
6.刪除元素
test.erase(test.begin()+3); //刪除第3個元素
7.vect商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。or向量大小
test.size();
8.清空
test.clear();
began(),end() 和 front(),back()的差別
begin():返回當前vector容器內(nèi)起始元素
end():返回當前vector容器內(nèi)末尾元素
front():返回當前vector容器中起始元素的引用
back():返回當前vector容器中末尾元素的引用
e.g:
#include
#include
using namespace std;
int main()
{
vector test;
vector::iterator i1;
vector::iterator i2;
test.push_back(1000);
test.push_back(1001);
test.push_back(1010);
test.push_back(1011);
cout << "front()=" << test.front() << endl;
cout << "back()=" << test.back() << endl;
i1 = test.begin();
i2 = test.end()-1; //end()向的是最后一個元素的下一個位置,因此想要訪問最后一個元素的正確操作為:end()-1
cout << *i1 << endl;
cout << *i2 << endl;
return 0;
}
輸出結(jié)果:
front()=1000
back()=1011
1000
1011
常用函數(shù)
(1)reverse
需要頭文件: #include
用法:?reverse(test.begin(), test.end());將元素翻轉(zhuǎn),即逆序排列。
(2)sort
需要頭文件: #include
用法 :sort(test.begin(), test.end());默認為升序排列,即從小到大。
e.g:
bool cmdPaixu(int a, int b)
{
return a>b;
}
sort(test.begin(), test.end(), cmdPaixu);
重寫排序比較函數(shù),實現(xiàn)降序排列。
總結(jié)
以上是生活随笔為你收集整理的c++ 向量的值逆序输出_C++中vector的常用方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浦发AE白被秒拒?秒拒原来是因为这个
- 下一篇: 注释代码c语言,C/C++ 源文件删除注