C++中STL的常用函数——Sort

C++中STL的常用函数——Sort,第1张

C++中STL的常用函数——Sort

sort是基于快速排序来实现的,可以很方便的对于一个容器或者普通数组进行排序,排序的默认值是按照元素值大小的升序来排序的,其他的排序方式,就需要进行自定义排序了。

需要注意的是,sort函数并不能保证排序完数值相同的元素在原来的位置,如果需要保持原来的位置需要用到stable_sort函数。

sort() 函数受到底层实现方式的限制,它仅适用于普通数组和部分类型的容器。换句话说,只有普通数组和具备以下条件的容器,才能使用 sort() 函数:

    容器支持的迭代器类型必须为随机访问迭代器。这意味着,sort() 只对 array、vector、deque 这 3 个容器提供支持。如果对容器中指定区域的元素做默认升序排序,则元素类型必须支持"<"小于运算符;同样,如果选用标准库提供的其它排序规则,元素类型也必须支持该规则底层实现所用的比较运算符;sort() 函数在实现排序时,需要交换容器中元素的存储位置。这种情况下,如果容器中存储的是自定义的类对象,则该类的内部必须提供移动构造函数和移动赋值运算符。

在运用sort函数前,需要引用库,即在开头加上

#include

sort的常见用法如下

vectortemp;
sort(temp.begin(),temp.end());

即可对temp容器里的元素进行升序排序。

自定义排序暂时没有学习透彻,等了解明白后再更新。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5702774.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存