[C++] std::unique 동작 원리
💡unique를 쓰면 왜 뒤에 이상한 값이 남는지 헷갈려서 정리했습니다. 처음에는 unique가 중복을 지워 주는 함수인 줄 알았다. 그런데 벡터에 써 보니 크기(size)가 그대로였고, 뒤쪽에 원래 값들이 남아 있었다. 이 과정에서 unique가 정확히 어떻게 동작하는지, iterator가 무엇을 가리키는지 정리한다. 예를 들어 {1, 2, 2, 3, 4, 5, 5, 5, 6, 6}에 unique를 호출하면, 앞쪽에는 1 2 3 4 5 6이 오고 그 뒤에 5 5 6 6이 따라온다.1. unique의 동작 원리unique는 새로운 공간을 만들지 않는다. 같은 벡터 안에서 두 개의 iterator를 움직이며 값을 덮어쓰는 in-place 알고리즘이다. result는 마지막으로 확정된 unique 값의 위..