본문 바로가기

알고리즘4

[C++] 알고리즘 (Algorithms) (3) References Professional C++ https://en.cppreference.com/w/ Contents 연산 알고리즘 (Operational Algorithms) : for_each, for_each_n 분할 알고리즘 (Partition Algorithms) : partition_copy, partition 정렬 알고리즘 (Sorting Algorithms) : sort, stable_sort, is_sorted, is_sorted_until, nth_element 이진 탐색 알고리즘 (Binary Search Algorithms) : binary_search, lower_bound, upper_bound, equal_range 집합 알고리즘 (Set Algorithms) : inclu.. 2022. 2. 26.
[C++] 알고리즘 (Algorithms) (2) References Professional C++ https://en.cppreference.com/w/ Contents 불변형 순차 알고리즘 (non-modifying sequence algorithm) 탐색 알고리즘 (default_searcher, boyer_moore_searcher, boyer_moore_horspool_searcher) 비교 알고리즘 카운팅 알고리즘 가변형 순차 알고리즘 (modifying sequence algorithm) transform, transform copy, copy_backward, copy_if, copy_n move, move_backward replace, replace_if remove, remove_if, erase(C++20), erase_if(C++.. 2022. 2. 26.
[C++] 알고리즘 (Algorithms) (1) References Professional C++ https://en.cppreference.com/w/ Contents C++ Algorithms find(), find_if(), accumulate() 알고리즘과 이동 의미론 알고리즘 콜백 복사 문제 표준 라이브러리에서는 여러 가지 유용한 제너릭 데이터 구조(컨테이너)를 제공합니다. 다른 라이브러리와는 달리 표준 라이브러리는 여기서 더 나아가 거의 모든 컨테이너에 적용할 수 있는 제너릭 알고리즘을 다양하게 제공합니다. 이러한 알고리즘을 활용하면 컨테이너에 담긴 원소를 검색하고, 정렬하고, 가공하고, 다양한 연산을 수행할 수 있습니다. 표준 라이브러리 알고리즘의 가장 큰 장점은 각 원소의 타입이나 컨테이너의 타입과는 독립적이라는 점입니다. 게다가 모든 .. 2022. 2. 26.
투 포인터(Two Pointer), 슬라이딩 윈도우(Sliding Window) 이번 게시글에서 정리할 기법은 투포인터와 슬라이딩 윈도우 입니다. 두 기법은 유사해서 하나로 묶었는데, 우선 투 포인터를 살펴보겠습니다. 투포인터는 1차원 배열에서 배열 원소를 가리키는 두 개의 포인터를 조절해가면서 원하는 답을 찾는 기법입니다. 문제를 보면서 살펴보겠습니다. www.acmicpc.net/problem/2003 2003번: 수들의 합 2 첫째 줄에 N(1≤N≤10,000), M(1≤M≤300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. www.acmicpc.net 2003번 문제는 N개의 수로 이루어진 배열이 있을 때, 연속된 부분 수열의 합이 M을 만족하는 경우의 수를 .. 2020. 9. 20.