Algorithm/STL 자료구조 (3) 썸네일형 리스트형 [STL] hash_map, unordered_map [STL] Hash map, Unordered_map hash_map의 자료구조 hash_map의 자료구조는 해시 테이블입니다. 해시 테이블에 자료를 저장할 떄는 key 값을 해시 함수에 대입하여 버킷번호가 나오면 그 버킷의 빈 슬롯에 자료를 저장합니다. 많은 자료를 저장해도 삽입, 삭제, 검색 속도가 거의 일정합니다. 하지만 이 헤더파일은 STL 표준이 아니므로 사용이 불가한 환경이 있다. 내 맥북에선 컴파일이 안된다.. 대안은 비슷한 unordered_map을 써주면 된다. hash_map을 사용하는 경우 많은 자료를 저장하고, 검색 속도가 빨라야 한다. 빈번하게 자료를 삽입, 삭제 하지 않는다. Unordered_map 사용방법 #include using namespace std; unordered.. [STL] Algorithm header STL - algorithm PS에 자주 쓰이는 #include 헤더파일에서 메소드들을 정리해보았습니다. 1. prev_permutation, next_permutation 벡터, 어레이, 리스트 등으로 이루어진 수열을 순열로 취급하여 이전 순열 혹은 다음 순열을 보여준다. 사용법: next_permutation(Iterator first, Iterator last) 시간복잡도: $ O(N) $ return type: boolean, 다음 순열이 없으면 false, 있으면 true를 반환한다. 예제 코드 #include #include #include using namespace std; int main () { int myInts[] = { 1, 2, 3 }; vector myInt (myInts, m.. [STL] Map STL map map은 key, value 페어로 이루어진 자료 구조입니다. Key에 대한 중복이 없습니다. 레드블랙 트리(Red-Black Tree 이하 RB Tree) 기반으로 되어있기 때문에 모든 데이터는 정렬되어 저장됩니다. 빠른 검색 속도를 가집니다. ( $ O(\log(N)) $ ) 인덱스가 따로 존재하지 않기 때문에 iterator를 사용합니다. 선언 map : key와 value를 pair 형태로 선언합니다. Method begin(): beginning iterator를 반환 end(): end iterator를 반환 insert(make_pair(key,value): 맵에 원소를 pair 형태로 추가 erase(key): 맵에서 key(키값)에 해당하는 원소 삭제 clear(): 맵의 .. 이전 1 다음