[Modern C++] sort

qsort

qsort는 본래 C의 함수이다. void qsort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));으로 정의된다. 기본적으로 Quick Sort로 구현이 되어있고 qsort는 sorting에 대한 complexity나 stability를 보장하지 않는다.

sort

STL의 sort는 C++11 이상부터 worst case O(n logn)의 complexity를 요구한다. 구현마다 사용된 알고리즘이 상이하고 container type에 따른 다양한 최적화를 지원한다. 또한 다양한 container를 지원하기 때문에 더욱 유연하게 동작한다.

Author: Song Hayoung
Link: https://songhayoung.github.io/2020/07/21/Languages/Cplusplus/sort/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.