범위 선택
어떤 컨테이너의 어느 구간에 적용할지 iterator 쌍으로 명확히 지정한다.
부분 범위 가능알고리즘은 컨테이너 멤버가 아니라 iterator 범위를 받아 동작한다. 정렬 여부, 비교 함수의 strict weak ordering, 출력 iterator의 공간 확보를 확인해야 안전하다.
어떤 컨테이너의 어느 구간에 적용할지 iterator 쌍으로 명확히 지정한다.
부분 범위 가능binary_search, lower_bound는 정렬된 범위가 전제임을 확인한다.
전제 위반은 오답predicate와 comparator가 상태를 캡처할 때 수명과 부작용을 점검한다.
순수성 선호copy, transform 등은 output iterator가 충분한 공간이나 back_inserter를 가져야 한다.
쓰기 위치v.erase(std::remove(v.begin(), v.end(), value), v.end());