목록c++ (2)
승형님의 블로그
C++ STL에서는 O(NlogN)의 시간 복잡도로 데이터를 우선순위에 따라 삽입, 삭제할 수 있는 우선순위 큐(Priority Queue)에 대한 Container를 제공한다. 제공하는 Containter를 사용하기 위해서는 헤더 파일 선언이 필요하다. Priority_queue의 선언은 다음과 같이 이루어진다. #include // TypeName Type, PQ를 구성할 기본 container, PQ 내부의 우선순위를 결정하는 구조체 Compare std::priority_queue PQ; 첫 번째 인자에는 우선순위 큐를 구성할 데이터의 형(Type)을 넣어준다. 이때, 사용자가 정의한 구조체 또한 넣어줄 수 있다. 두 번째 인자에는 우선순위 큐를 구현하기 위한 Container의 종류를 넣어준다...

C++ STL에서는 O(NlogN)의 시간 복잡도를 보장하며 원소를 정렬하는 std::sort 함수, std::stable_sort 함수를 제공한다. 제공하는 함수를 사용하기 위해서는 헤더 파일 선언이 필요하다. sort 함수는 3개의 인자를 가진다. #include // typename TYPE void std::sort(TYPE start, TYPE end, Bool compare_func); 첫 번째 인자로는 정렬을 시작할 주소값 (start 부터 시작), 두 번째 인자로는 정렬을 마칠 주소값 (end 전 까지 정렬), 세 번째 인자로는 정렬의 기준이 되는 함수가 들어간다. [start, end)의 범위를 정렬. 세 번째 인자를 비우고 함수를 호출할 경우 기본값으로 오름차순 정렬 함수가 들어간다. ..