๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Problem Solving/C++ ์ •๋ฆฌ

C++ note

by ํ–‰๋ฑ 2019. 12. 5.

vector

vector v; ๋นˆ ๋ฒกํ„ฐ.
vector v(n); v๋Š” ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”๋œ n๊ฐœ์˜ ์›์†Œ๋ฅผ ๊ฐ–๋Š”๋‹ค.
vector v(n, x); v๋Š” x๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”๋œ n๊ฐœ์˜ ์›์†Œ๋ฅผ ๊ฐ–๋Š”๋‹ค.
vector v(v2); v๋Š” v2์˜ ๋ณต์‚ฌ๋ณธ์ด๋‹ค.
   
v.front(); v์˜ ์ฒซ ์š”์†Œ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
v.back(); v์˜ ๋งˆ์ง€๋ง‰ ์š”์†Œ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
v.clear(); v์˜ ๋ชจ๋“  ์›์†Œ๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค. (capacity๋Š” ์œ ์ง€)
v.capacity(); v์— ํ• ๋‹น๋œ ํฌ๊ธฐ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
v.reserve(); n๊ฐœ์˜ ์›์†Œ๋ฅผ ์ €์žฅํ•  ๊ณต๊ฐ„์„ ์˜ˆ์•ฝํ•œ๋‹ค.
v.empty(); v๊ฐ€ ๋น„์—ˆ๋Š”์ง€ ์กฐ์‚ฌํ•œ๋‹ค. (bool)
v.resize(n); v์˜ ํฌ๊ธฐ๋ฅผ n์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ , ํ™•์žฅ๋˜๋Š” ๊ณต๊ฐ„์˜ ๊ฐ’์„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ•œ๋‹ค.
v.resize(n, x); v์˜ ํฌ๊ธฐ๋ฅผ n์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ , ํ™•์žฅ๋˜๋Š” ๊ณต๊ฐ„์˜ ๊ฐ’์„ x๋กœ ํ•œ๋‹ค.
   
v.push_back(x); v์˜ ๋์— x๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.
v.pop_back(x); v์˜ ๋งˆ์ง€๋ง‰ ์›์†Œ๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค.
v.size(); v์˜ ์›์†Œ ๊ฐœ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
v.swap(v2); v์™€ v2๋ฅผ swapํ•œ๋‹ค.
   
sort(v.begin(), v.end()); v๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•œ๋‹ค. (<algorithm>)
sort(v.begin(), v.end(), greater<int>()); v๋ฅผ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•œ๋‹ค. (<functional>)
reverse(v.begin(), v.end()); v๋ฅผ ๋’ค์ง‘๋Š”๋‹ค. (<algorithm>)

 

'Problem Solving > C++ ์ •๋ฆฌ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

C++14 STL ์ฒ ์ € ์ž…๋ฌธ) vector  (0) 2020.05.20
C++ #4: preprocessor directives  (0) 2019.12.07
C++ #3: call by value, address, reference  (0) 2019.12.06
C++ #2: reference variable  (0) 2019.12.05
C++ #1: iostream, namespace  (0) 2019.12.05

๋Œ“๊ธ€