当前位置:首页  知识专题

知识专题

stablesort对应的头文件(stable sort)

2023-05-29 12:40:49
导读 大家好,小爱来为大家解答以上问题。stablesort对应的头文件,stable sort很多人还不知道,现在让我们一起来看看吧!1、排序函数是C的排序

大家好,小爱来为大家解答以上问题。stablesort对应的头文件,stable sort很多人还不知道,现在让我们一起来看看吧!

1、 排序函数是C的排序函数,期望时间复杂度为O(nlogn),其中N是要排序的元素个数。

2、 将“#includealgorithm”添加到头文件。

3、 图为快速排序,来源于网络。

4、 sort的使用也很简单。如果要从小到大排列间隔:

5、 Sort(区间头指针(或迭代器),区间尾指针(或迭代器));

6、 如图,这里的“A”和“a 10”是指针。

7、 如果我们要排序的不是数组,而是其他STL容器,比如vector。

8、 碰巧的是,所有的STL容器也是左闭右开,所以我们可以这样写:

9、 sort(v.begin(),v.end());

10、 如图,“v.begin()”和“v.end()”这里是迭代器。

11、 如何在C STL中使用vector

12、 但是,没有只能从小到大排序的“花式”排序。如果要从大到小排序,或者更复杂的排序,应该怎么做?

13、 也很简单,你只需要写一个cmp函数就可以了。

14、 Sorting (head, tail, cmp)

15、 这个cmp有什么用?您可以使用它来更改排序规则。

16、 如图所示,

17、 接下来,我们将详细说明cmp函数的编写。

18、 首先,cmp是一个bool类型的函数,它应该包含两个与要排序的元素同类型的参数。

19、 例如,要排序的元素是int: boolcmp (int x,int y)。

20、 Or a user-defined structure student: Boolean cmp (student X, student Y)

21、 接下来是排序规则,可以想象,

22、 画

23、 Cmp增强版:如果有多个排序要求,就按优先级一个一个写下来。

24、 比如按照“分数由高到低排序,分数按照姓名字典排序”。

25、 如图

本文到此结束,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!