기초 공부/알고리즘
[C++] STL algorithm 정리 계획
기개
2022. 4. 28. 18:31
안녕하세요 기회개발자 기개입니다.
앞으로 STL에 있는 algorithm을 정리해볼 예정입니다.
정리에 앞서 algorithm에 어떤 내장함수들이 있는지 살펴보려고 합니다.
모든 내장함수를 다룰 것은 아니며 아래에 나열된 것들만 다루려고 합니다.
찾기
find : 범위 안에 원소들 중 값이 일치하는 원소 찾기
find_if : 범위 안에 원소들 중 조건과 일치하는 원소 찾기
세기
count : 범위 안에 원소들 중 값이 일치하는 원소들의 갯수 구하기
count_if : 범위 안에 원소들 중 조건과 일치하는 원소들의 갯수 구하기
지우기
remove : 특정 값과 같은 원소들 모두 지우기
remove_if : 특정 조건을 만족하는 원소들 모두 지우기
뒤집기
reverse : 특정 범위의 원소들의 순서를 거꾸로 바꾸기
정렬
sort : 특정 범위에 있는 원소들을 정렬하기 (quick sort)
순열
next_permutation : 특정 원소들의 다음 순열을 얻기
파티션 | 특정 조건을 만족하는 원소들은 앞으로 보내고 나머지들은 뒤로 보내 데이터를 나누는 작업
partition : 특정 범위의 원소들을 파티션하기
병합
merge : 두 개의 정렬된 원소들의 나열을 정렬된 상태가 유지되도록 합치기
셋
set_union : 두 개의 정렬된 원소들의 합집합 구하기
set_intersection : 두 개의 정렬된 원소들의 교집합 구하기
set_difference : 두 개의 정렬된 원소들의 차집합 구하기
이외에 heap(priority_queue), binary search tree(set, map) 과 관련된 것은 자료구조에서 먼저 다루고,
구현은 알고리즘에서 다루겠습니다.