2019. 6. 21. 05:43ใPROGRAMMING/C++ STL
List
ํ์ค ์ํ์ค ์ปจํ ์ด๋.
๋ ธ๋ ๊ธฐ๋ฐ (์๋ฐฉํฅ ์ฐ๊ฒฐ๋ฆฌ์คํธ)
๋ ธ๋ ๊ธฐ๋ฐ์ด๊ธฐ ๋๋ฌธ์ ์ธ๋ฑ์ค ์ ๊ทผ์ด ์๋๊ณ , ์ค๋ก์ง ์์ฐจ ์ ๊ทผ๋ง ํ์ฉํ๋ค.
(ํ์์ ๋ถ๋ฆฌํ๋ค.)
๋ฐฐ์ด๊ณผ ๋ฌ๋ฆฌ ํฌํ์ํ๊ฐ ์กด์ฌํ์ง ์๋๋ค.
(์ฌํ ๋น๊ณผ ๋ณต์ฌ๊ฐ ํ์์์ด์, ๋น๋ฒํ ์ฝ์ ๊ณผ ์ญ์ ์ ์ ๋ฆฌํ๋ค.)
[ list์ ์ ์ธ ]
list ํค๋๋ฅผ ํฌํจ์ํจ ํ,
list<์๋ฃํ> '๋ณ์ ์ด๋ฆ'์ ํตํด ์ ์ธ.
์๋ฃํ ์์น์๋ ๊ตฌ์กฐ์ฒด๋ ํด๋์ค๋ ์ฌ ์ ์๋ค.
[ list์ ์์ ์ฝ์ ๊ณผ ์ญ์ ]
push_back : ๋ค์์ ๋ถํฐ ์์๋ฅผ ์ฝ์ ํ๋ค.
push_front : ์์์ ๋ถํฐ ์์๋ฅผ ์ฝ์ ํ๋ค.
pop_back : ๊ฐ์ฅ ๋ค์ ์๋ ์์๋ฅผ ํ์ฌ list์์ ์ ๊ฑฐํ๋ค.
pop_front : ๊ฐ์ฅ ์์ ์๋ ์์๋ฅผ ํ์ฌ list์์ ์ ๊ฑฐํ๋ค.
size : list๊ฐ ์ ์ฅํ๊ณ ์๋ ํ์ฌ ์์์ ๊ฐ์.
back : list์ ๋งจ ๋ค์ ์๋ ์์์ ๋ ํผ๋ฐ์ค๋ฅผ ๋ฐํ.
front : list์ ๋งจ ์์์๋ ์์์ ๋ ํผ๋ฐ์ค๋ฅผ ๋ฐํ.
[ ๋ฐ๋ณต์๋ฅผ ์ด์ฉํ list ์์ ์ํ ]
๋
ธ๋๊ธฐ๋ฐ์ด๊ธฐ์ '์๋ฐฉํฅ ๋ฐ๋ณต์'๋ฅผ ์ ๊ณตํ๋ค.
์๋ฐฉํฅ ๋ฐ๋ณต์๋ ++, -- ์ฐ์ฐ์ ํตํด ์ค๋ก์ง ์์ฐจ์ ๊ทผ๋ง ํ์ฉํ๋ค.
[ ์๋ฐฉํฅ ๋ฐ๋ณต์๋ฅผ ์ด์ฉํ ์ค๊ฐ ์ฝ์ ]
[ ์๋ฐฉํฅ ๋ฐ๋ณต์๋ฅผ ์ด์ฉํ ์ค๊ฐ ์ ๊ฑฐ ]
[ list์ ๋ฉค๋ฒํจ์ ์ ๋ฆฌ ]
push_back: ๋งจ ๋ค์์๋ถํฐ ์์ ์ฝ์
.
push_front: ๋งจ ์์์๋ถํฐ ์์ ์ฝ์
.
pop_back: ๋งจ ๋ค์ ์์ ์ ๊ฑฐ.
pop_front: ๋งจ ์ ์์ ์ ๊ฑฐ.
front: ๋งจ ์์ ์์ ๋ ํผ๋ฐ์ค ๋ฐํ.
back: ๋งจ ๋ค์ ์์ ๋ ํผ๋ฐ์ค ๋ฐํ.
size: ํ์ฌ ์ ์ฅํ๊ณ ์๋ ์์์ ๊ฐ์ (๋
ธ๋์ ๊ฐ์)
empty: ์ปจํ
์ด๋๊ฐ ๋น์๋์ง ์กฐ์ฌ. ๋น์ด์๋ค๋ฉด true๋ฅผ ๋ฐํ.
swap: ๋ ์ปจํ
์ด๋์ ์ ๋ณด๋ฅผ ๊ตํ.
clear: ๋ชจ๋ ์์ ์ ๊ฑฐ.
begin: ๋งจ ์ ์์์ ์์น์ ๋ณด(๋ฐ๋ณต์)๋ฅผ ๋ฐํ.
end: ๋ง์ง๋ง ์์ ๋ค์ ์์น์ ๋ณด(๋ฐ๋ณต์)๋ฅผ ๋ฐํ.
insert: ์ค๊ฐ ์ฝ์
.
erase: ์ค๊ฐ ์ ๊ฑฐ.
reverse: ๋ชจ๋ ์์์ ์์น๋ฅผ ๊ฑฐ๊พธ๋ก ๋ค๋ฐ๊พผ๋ค.
list๋ sort๋ฅผ ๋ฉค๋ฒํจ์๋ก ๊ฐ์ง๊ณ ์๋ค.
[ list VS vector ]
๊ตฌ๋ถ | vector | list |
๋ฉ๋ชจ๋ฆฌ ๋ฐฉ์ | ๋ฐฐ์ด ๊ธฐ๋ฐ | ๋ ธ๋ ๊ธฐ๋ฐ |
๋ฐ๋ณต์ | ์์ ์ ๊ทผ (์ธ๋ฑ์ค) | ์์ฐจ ์ ๊ทผ |
์ฉ๋ | ํ์ | ๋น๋ฒํ ์ฝ์ , ์ญ์ |
sort ํจ์ | <algorithm>์์ ์ ๊ณต | ๋ฉค๋ฒ ํจ์ ์ ๊ณต |
๊ณตํต | ํ์ค ์ํ์ค ์ปจํ ์ด๋ |
'PROGRAMMING > C++ STL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ค์ ์ ๋ฆฌํ๋ C++ STL ์๋ฃ๊ตฌ์กฐ array (0) | 2020.08.06 |
---|---|
๋ค์ ์ ๋ฆฌํ๋ C++ STL [ ๊ฐ์ ] (0) | 2020.08.05 |
04. [C++] STL (Standard Template Library) - ์๊ณ ๋ฆฌ์ฆ(algorithm) (0) | 2019.06.26 |
03. [C++] STL (Standard Template Library) - Map (0) | 2019.06.25 |
01. [C++] STL (Standard Template Library) - Vector (0) | 2019.06.20 |