一維向量vector幾乎所有用法

2021-10-10 13:28:25 字數 4081 閱讀 5178

//:vector的使用練習

#include

#include

#include

using namespace std;

intmain()

*(it -1)

=111

; cout << vec1[9]

<< endl;

cout <<

(vec1.

end(

)- vec1.

begin()

)<< endl;

cout <<

'\n'

<<

"********************==="

<< endl;

vector<

int>

vec2

(vec1)

;//套用另一向量初始化

int size2 = vec2.

size()

; cout <<

" size2= "

<< size2 << endl;

vec2.

erase

(vec2.

begin()

, vec2.

end()-

1);//刪除區間內的元素

vec2.

pop_back()

;//刪除末尾元素

vec2.

push_back

(2333);

//在末尾插入元素

vector<

int>

::iterator it2 = vec2.

begin()

;//迭代器

for(

int i =

0;it2 != vec2.

end(

);it2++

, i++

) cout <<

'\n'

<<

"********************="

<< endl;

vector<

int>

vec3

(vec1.

begin()

, vec1.

begin()

+5);

//套用另一向量區間初始化

int size3 = vec3.

size()

;

cout <<

" size3= "

<< size3 << endl;

swap

(vec1, vec3)

;//交換兩個向量

cout <<

" swap size3= "

<< vec3.

size()

<< endl;

vec3.

clear()

;//清空向量大小,但不**容量

int size33 = vec3.

size()

; cout <<

" size33= "

<< size33 << endl;

cout <<

" vec3.capacity()= "

<

capacity()

<< endl;

cout <<

'\n'

<<

"********************=="

<< endl;

vector<

int>

vec4(1

);cout <<

" vec4[0]= "

<< vec4[0]

<< endl;

vec4.

push_back(33

);cout <<

" vec4[1]= "

<< vec4[1]

<< endl;

cout <<

" vec4.capacity()= "

<< vec4.

capacity()

<< endl;

int bo4 = vec4.

empty()

;//判斷向量大小是否為空,返回0或1

cout <<

" bo4= "

<< bo4 << endl;

cout <<

" size4= "

<< vec4.

size()

<< endl;

cout <<

" vec4.capacity()= "

<< vec4.

capacity()

<< endl;

vector <

int>()

.swap

(vec4)

;//清空向量元素並最小化容量

cout <<

" size4= "

<< vec4.

size()

<< endl;

cout <<

" vec4.capacity()= "

<< vec4.

capacity()

<< endl;

cout <<

'\n'

<<

"********************="

<< endl;

vector<

int> vec5 =

;sort

(vec5.

begin()

, vec5.

end())

;//正向排序,包含演算法標頭檔案

for(

int i =

0;i < vec5.

size()

;i++

) cout <<

'\n';;

reverse

(vec5.

begin()

, vec5.

end())

;//逆轉向量中的所有元素

for(

int i =

0;i < vec5.

size()

;i++

) cout <<

'\n'

;sort

(vec5.

rbegin()

, vec5.

rend()

);//反向迭代器

for(

int i =

0;i < vec5.

size()

;i++

) cout <<

'\n'

<<

"********************="

<< endl;

vector<

int> vec6 =

; cout <<

" size6= "

<< vec6.

size()

<< endl;

int newint=

unique

(vec6.

begin()

, vec6.

end()-

1)- vec6.

begin()

;//把相鄰的重複元素「刪去」--放到最前邊,向量大小不變。包含演算法標頭檔案

for(

int i =

0;i < vec6.

size()

;i++

) cout <<

'\n'

;for

(int i =

0;i < newint;i++

)}

對於二位向量

#include

#include

#include

using namespace std;

intmain()

; vec1[1]

=;for(

int i =

0;i <

2;i++)}

}

動態管理記憶體,每個向量的大小不一

二維向量 vector

又學一招!二維向量vector 在vc下的使用技巧。隨著對c 學習的逐步加深,發現stl確實是個好咚咚。vector是我用到的第乙個stl容器,它一直吸引我學習和使用stl。但當我用到二維的vector時 比如 vector 卻發現似乎不能用。我用的vc6就是不認它,竟報 error c2146 s...

用vector實現二維向量

如果乙個向量的每乙個元素是乙個向量,則稱為二維向量,例如 cpp view plain copy vectorint vv 3,vector int 4 這裡,兩個 間的空格是不可少的 將構造乙個二維向量vv,它含有三個元素,每個元素含有4個int型元素的向量。編譯器兩次呼叫vector的建構函式構...

用vector實現二維向量

如果乙個向量的每乙個元素是乙個向量,則稱為二維向量,例如 cpp view plain copy vectorint vv 3,vector int 4 這裡,兩個 間的空格是不可少的 將構造乙個二維向量vv,它含有三個元素,每個元素含有4個int型元素的向量。編譯器兩次呼叫vector的建構函式構...