list
주로 이럴 때 사용합니다.
검색을 거의 하지 않을 때
중간에 삽입, 삭제를 자주할 때
랜덤 액세스를 하지 않을 때
* forward_list : list처럼 양방향이 아닌 단방향으로 충분할 때
주요 함수 (vector와 중복되는 부분은 제외 했습니다)
(List operations)
merge : list1에 list2를 정렬하면서 병합
splice : list1, list2있고 특정 원소를 특정 리스트에 이동시킬 때
remove : 인자로 받은 값과 동일한 원소 모두 제거
remove_if : 함수객체의 조건을 만족하는 원소 모두 제거
reverse : 역순으로 바꿀 때
unique : 현재 원소들 중 연속적으로 중복된 값이 배치된 원소를 제거
sort : 오름차순 정렬
예제 소스코드
``` c++
#include
using namespace std;
int main()
{
list
cin >> n;
// 리스트에 원소 삽입
for (int i = 0, k; i < n; i++) {
cin >> k;
numList.push_back(k);
}
// 리스트 오름차순 정렬
numList.sort();
// 리스트 출력
list<int>::iterator iter = numList.begin();
while (iter != numList.end()) {
cout << *iter << endl;
iter++;
}
// 리스트 반대로 출력
list<int>::reverse_iterator ri = numList.rbegin();
while (ri != numList.rend()) {
cout << *ri << endl;
ri++;
}
return 0; }