In the case of HP / Microsoft's STL implementation, std::sort is a quick sort and std::stable_sort is a merge sort (unless element count is very small, then it's insertion sort).