|
백일님 답변을 읽다가 갑자기 전에 했던게 생각이 나서 그러는데요..
예전에 queue를 써야 할 일이 있었습니다.
그러니깐.. push_back과 pop_front가 빈번하게 일어나는 구조인데요, 크기가 고정되어 있지 않는 큐가 필요했기 때문에 순환구조는 쓸 수 없는.. 그런 상황에서 STL의 list를 써 보기로 했습니다. 제가 알기로 list는 Double Linked List 구조라고 생각했기 때문에..
그리고 평범한 Double Linked List를 하나 구현해서 두가지를 비교해본 적이 있었습니다. 수만개를 뒤쪽에 추가한 뒤 앞에서부터 하나씩 빼 내는 루틴을 만들어 비교를 해 보니 예상과는 달리 두가지의 성능차이가 너무 크게 나더군요.
자세한 테스트 결과는 저도 오래돼서 기억은 안납니다만.. 상식적인 비교에서 너무 차이가 많이 나서 결국 list를 포기하고 직접 구현한 Linked List구조를 썼던 걸로 기억하는데 혹시 원인이 뭔지 아시면 좀 답변을 부탁 드립니다.
|