목록2025/04/10 (4)
승쨩개발공부

1.Find O(n)컨테이너 에서 원하는 값을 탐색하는 함수 2.Count O(n)컨테이너 에서 특정 값이 나타나는 횟수를 세는 함수 3.Sort O(NlogN)컨테이너를 정렬하는 함수 1) 오름차순 2)내림차순 (역방향 반복자 사용) 4.next_premutation() 순열 O(N*N!)순열 생성 함수 (가능한 모든 순열을 출력하려면 사전순으로 정렬되어있어야함)do 처음은 그냥 실행되고 while문에 next_permutation에서 다음 순열로 정렬해주기떄문순열이있음 true 없음 false를 반환함 5.Unique 중복삭제 O(n)컨테이너 내 중복되는 원소들을 뒤로 밀어내고 중복되지 않은 원소들만 남겨 새로운 범위의 끝반복자를 반환한다. 6.binary_searc..

보통 컨테이너를 순회해야할떄 두가지 방법이 있는데하나는 begin과 end를 받아와서 사용하는 for문두번쨰는 범위기반 for문이다 첫번쨰방법은 복사비용이 들긴하지만 매우 가벼워 무시할 수 있는 수준이고두번쨰방법은 const와 참조를 통해 안전하고 복사비용이 안 들어가고 코드도 깔끔하다 나는 2번쨰방법을 자주 사용할 것 같다.

정렬되지 않은 셋과 맵기본적으로 STL의 셋과 맵은 내부구조가 이진 탐색 트리이기 떄문에 정렬 상태를 유지한다.하지만 자동으로 정렬되는 것이 무조건 좋은 것만은 아니다. 굳이 정렬할 필요가 없는 데이터인데정렬을 하면 굳이 연산을 더 하게 되는것이다.Unordered 의 사전적 뜻은 정렬되지 않은 이다 기본 Set과 Map은 이진 탐색 트리였지만 Unodred_Set과 Unodred_Map은 해시 기반이기에데이터를 자동으로 정렬하지 않는다기본 Set과 Map의 삽입,삭제,탐색의 시간복잡도가 O(logn)인 반면Unodred_Set과 Unodred_Map은 O(1) 이다 Set 과 Unordred_Set의 차이 실행결과