호빵의 IT 개발소

벡터(Vector) 재할당(Resize) 속도 줄이는 방법은 무엇인가? 본문

자료구조와 알고리즘/자료구조와 알고리즘 맛보기

벡터(Vector) 재할당(Resize) 속도 줄이는 방법은 무엇인가?

호빵Stack 2025. 3. 26. 21:00

벡터 재할당 속도를 줄이려면

 

  1. reserve()로 미리 용량 확보 → 재할당 횟수 감소
  2. resize()보다 reserve() 우선 사용 → 메모리만 확보하고 실제 크기는 그대로 유지
  3. push_back() 반복 시 용량 예측 후 reserve → 매번 capacity 2배 증가 방지
  4. 불필요한 복사 피하기 위해 move semantics 활용 → 복사보다 이동이 빠름

 

요약: 미리 reserve로 필요한 만큼 확보하고 불필요한 복사 줄이기!

Comments