일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- dataasset
- 람다
- unorder_map
- 언리얼가비지컬렉터
- UE4 커스텀로그
- stl
- 스마트포인터
- 델리게이트
- 선택정렬
- 크리티컬섹션
- 약참조
- 프로그래머스
- BFS
- 강참조
- moreeffectiveC++
- C++
- 정렬알고리즘
- C++최적화
- UE_LOG
- enumasByue
- 자료구조
- map
- 알고리즘
- 애셋로드
- 데이터애셋
- 정렬
- UELOG
- UML관련
- 언리얼엔진구조체
- 람다사용정렬
- Today
- Total
기억을 위한 기록들
STL에서의 알고리즘 7가지 본문
1. 원소를 수정하지 않는 알고리즘
- 원소의 순서나 값을 변경하지 않고 원소를 읽기만 하는 알고리즘
(탐색/비교 등)
2. 원소를 수정하는 알고리즘(덮어쓰기 모드로 동작. 삽입모드로 동작하려면 insert_iterator 사용)
- 원소의 값을 변경하거나, 목적지 순차열로 원소를 복사하는 알고리즘
(복사/채우기/교환/합병/수정 등)
3. 제거 알고리즘
- 2번 '원소를 수정하는 알고리즘'의 특수한 형태로 원소를 실제로 제거하지 않고 논리적으로 제거(다음 원소로 덮어쓰기)하기 때문에 순차열의 size를 실제로는 변경X(실제로 변경하려면 컨테이너의 erase()함수 사용)
(제거/조건제거)
4. 변경 알고리즘(순서 변경)
- 순차열의 원소를 서로 교환하거나 이동하여 순차열 원소의 '순서'를 변경하는 알고리즘
(사전순/랜덤/조건별/역순서/회전)
5. 정렬 알고리즘
- 4번 '변경 알고리즘'의 특수한 형태로 특정 정렬 기준으로 원소의 순서를 변경하며 정렬.
(힙 관련(생성,추가,삭제,정렬)/
*순차열의 원소를 정렬하려면 sort()-퀵정렬 기반/stable_sort()-머지정렬 기반/partial_sort()-힙정렬 이렇게 3개 알고리즘을 사용하며, 각각의 복잡도의 특징에 따라 순차열에 따라 적정한 알고리즘 선택사용
6. 정렬된 범위 알고리즘
- 정렬된 구간에서만 동작하는 알고리즘. 입력 순차열이 반드시 정렬돼 있어야 한다.
(이진 검색 알고리즘/합집합/교집합/포함/중복찾기)
7. 수치 알고리즘
- 수치 관련 원소를 다룸. <numeric> 헤더에 정의
(원소간의 연산/누적연산/원소 간의 차/
'C & CPP' 카테고리의 다른 글
STL의 5가지 반복자(iterator) (0) | 2020.08.20 |
---|---|
STL에서의 함수객체 2가지 (0) | 2020.08.19 |
STL컨테이너 2가지(시퀀스 컨테이너/연관 컨테이너) (0) | 2020.08.18 |
Iterator(반복자)의 작성 방법 3가지 (0) | 2020.08.07 |
CPP Reference 참고용 사이트 (영문) (0) | 2020.08.07 |