Algorithm/C++ STL (3) 썸네일형 리스트형 <map> STL 정리 C++에는 여러 종류의 맵이 있으며, 그 중 map(#include)과 unordered_map(#include )이 주로 쓰인다. map과 unordered_map은 사용방법이 완벽히 동일하다. 하지만 map은 균형트리인 red black tree로 구현되어 있고, unordered_map은 해시 테이블로 구현되어 있다. 데이터가 작다면 unorderd_map이, 크다면 map이 유리하다. unordered_map m; //key가 string이고, value가 int인 unordered_map 선언 map["hi"]=5; // 새로 insert, 기존값 있으면 덮어쓴다. map["hi"]++; //기존값 있으면 1증가, 없으면 새로운 value는 1로 한다. ex) for (string name : .. <string> STL 정리 - vector와 매우 유사하다. - C언어의 char*, char[] 문자열과 달리, 문자열끝에 '\0' 없다. - +로 string끼리 합칠 수 있다. - string의 원소 하나하나는 char이다. str[i] : str의 i번째 원소를 참조 str.push_back(x) : str의 끝에 x를 추가 str.insert(p,x) : str의 p번째 위치에 x를 삽입 str.pop_back() : 마지막 원소를 삭제//반환값 없다!! str.erase(p) : str의 p(주소)위치 원소를 삭제 str.erase(b,e) : str의 [b,e)구간 원소를 삭제 str.front() : 문자열의 첫번째 원소 반환 str.back() : 문자열의 마지막 원소 반환 str.begin() : 문자열의 첫번째.. <vector> STL 정리 - 상단에 #include 로 헤더를 추가해서 사용한다. vector v : 빈 컨테이너인 v 생성 vector v(n) : 0으로 초기화된 n개의 원소를 갖는 v생성 vector v(n,x) : x로 초기화된 n개의 원소를 갖는 v생성 vector v(6, vector(5, 0)) : 6행 5열, 모든 원소 0인 v생성 v[i] : v의 i번째 원소를 참조 v.push_back(x) : v의 끝에 x를 추가 v.insert(p,x) : v의 p번째 위치에 x를 삽입 v.pop_back() : 마지막 원소를 삭제//반환값 없다!! v.erase(p) : v의 p(주소)위치 원소를 삭제 v.erase(b,e) : v의 [b,e)구간 원소를 삭제 v.front() : 벡터의 첫번째 원소 반환 v.back().. 이전 1 다음