본문 바로가기
반응형

C++ STL3

[C++/STL] 셋(Set), 맵(Map) 1. 셋(Set) 셋(Set) 이란? - 완전 이진 트리 형태로 정렬되어 있기 때문에 빠른 검색 속도를 보장한다. - 원소 삽입, 삭제, 탐색 등의 연산은 O(logn)을 보장한다. - 중복된 원소는 추가할 수 없다. 셋 사용 방법 - 셋 선언 // 헤더 선언 필요 #include // int 자료형을 저장하는 셋 선언 set s; - 원소 추가 // 원소 n 추가 s.insert(n); - 원소 탐색 // 원소 n 찾기, 해당 원소가 존재하면 해당 주소 반환, 없으면 s.end() 반환. s.find(n); - 원소 제거 // 값이 n인 원소 제거 s.erase(n); // 모든 원소 제거 s.clear(); - 기타 // set의 크기(원소의 개수) 반환 s.size(); 2. 맵(Map) 맵(Map.. 2020. 6. 7.
[C++/STL] 큐(Queue), 우선순위 큐(Priority Queue) 1. 큐(Queue) 큐(Queue) 란? - FIFO(First In Fisrt Out) 자료구조 - 가장 먼저 넣었던 데이터를 사용할 때 이용한다. 큐 사용 방법 - 큐 선언 // 헤더 선언 필요 #include // int 자료형을 저장하는 큐 선언 queue q; - 원소 추가 // 원소 n 삽입 q.push(n); - 맨 처음 원소 제거 // 맨 처음 원소 제거 q.pop(); - 맨 처음 원소 조회 // 맨 처음 원소 조회 q.front(); - 기타 // 큐이 비어있는지 확인 // 원소가 없으면 true, 원소가 있으면 false 반환 q.empty(); // 큐의 크기(원소의 개수) 조회 q.size(); 2. 우선순위 큐(Priority Queue) 우선순위 큐(Priority Queue.. 2020. 6. 7.
[C++/STL] 벡터(Vector) 벡터(Vector)란? - 크기가 정해지지 않은 배열이다. - 원소 추가, 제거 시 자동으로 크기가 변경된다. - 임의의 위치에 있는 원소 접근과 뒤에 원소를 추가는 O(1)를 보장한다. 벡터 사용 방법 - 벡터 선언 #include // 헤더 선언 필요 vector v; // int 자료형을 저장하는 벡터 선언 - 초기화 // 벡터의 초기 크기를 n으로 설정. vector v(n); // 벡터의 초기 크기를 n으로 설정하고, 모두 p로 초기화 vector v(n,p); // nxm 크기의 벡터를 선언하고, 모두 p로 초기화 vector v(n,vector); - 반복자 // 벡터의 "첫 원소"의 "주소" v.begin(); // 벡터의 "마지막 원소"의 "다음 주소" v.end(); - 반복자 활용 i.. 2020. 6. 7.
반응형