algorithm 헤더에 들어있다.

vector 내 중복 원소들을 없애고 하나만 남겨준다.

다만 의도한 결과를 내고싶으면 정렬을 한 뒤에 사용해야 한다.

 

unique(iter_begin, iter_end);

 

검색해보니 벡터만 언급되는걸로 봐선 벡터만 사용 가능하거나 벡터 말고는 잘 사용을 안하는듯 하다.

반환값은 중복된 값을 모두 지우고 난 뒤의 iterator를 반환해준다.

벡터의 크기 자체는 변하지 않기때문에 실제 삭제가 이뤄지지 않으므로 삭제까지 하고싶다면 erase와 같이 사용해야 한다.

 

vector.erase(unique(iter_begin, iter_end), iter_end);

 

'C++ > 기타' 카테고리의 다른 글

[algorithm] find, find_if  (0) 2022.08.03
[algorithm] 순열과 조합  (0) 2022.07.31
[algorithm] 교집합, 합집합, 차집합  (0) 2022.07.28
map, set  (0) 2022.07.27
[algorithm] find  (0) 2022.07.27

+ Recent posts