size() == 0? empty()!! (effective STL 04)

2015. 8. 25. 19:24프로그래밍/Effective STL

728x90
728x90

empty()는 인라인함수! (상수시간)

list의 size()는 선형 시간에 수행되는 경우가 꽤 많다.


list에서 왜 문제가 되는가?

size() vs splice()

- splice()는 리스트를 중간에 잘라 붙이는 함수이다.

- size()와 splice()는 하나는 상수 시간, 다른 하나는 선형 시간일 수 밖에 없다.

- splice()가 잘려서 넘어갈 때 이것을 셀 것인가? 에 대해 작성 방식에 따라 다르다.

- splice()를 세어 총 크기에 더해주면 splice()는 선형, size()는 상수

- splice()를 세지 않고 붙여주면 splice()는 상수, size()는 선형

728x90
반응형