G.5.3 排序和相关操作(2)

2013-10-07 15:50:24 · 作者: · 浏览: 77

G.5.3  排序和相关操作(2)

1.排序

首先来看看排序算法。

(1)sort( )

 

sort( )函数将[first, last)区间按升序进行排序,排序时使用值类型的<运算符进行比较。第一个版本使用<来确定顺序,而第二个版本使用比较对象comp。

(2)stable_sort( )

 

stable_sort( )函数对[first, last)区间进行排序,并保持等价元素的相对顺序不变。第一个版本使用<来确定顺序,而第二个版本使用比较对象comp。

(3)partial_sort( )

 

partial_sort( )函数对[first, last)区间进行部分排序。将排序后的区间的前middle - first个元素置于[first, middle]区间内,其余元素没有排序。第一个版本使用<来确定顺序,而第二个版本使用比较对象comp。

(4)partial_sort_copy( )

 

partial_sort_copy( )函数将排序后的区间[first, last]中的前n个元素复制到区间[result_first, result_first + n]中。n的值是last - first和result_last - result_first中较小的一个。该函数返回result - first + n。第一个版本使用<来确定顺序,第二个版本使用比较对象comp。

(5)is_sorted(C++(www.cppentry.com)11)

 

 

如果区间[first, last]是经过排序的,函数is_sorted( )将返回true,否则返回false。第一个版本使用<来确定顺序,而第二个版本使用比较对象comp。