algorithm库介绍之---- stable_sort()方法 与 sort()方法
来源:互联网 发布:五级三晋制工资算法 编辑:程序博客网 时间:2024/06/10 06:03
文章转载自:http://www.cnblogs.com/ffhajbq/archive/2012/07/24/2607476.html
关于stable_sort()和sort()的区别:
你发现有sort和stable_sort,还有 partition 和stable_partition, 感到奇怪吧。其中的区别是,带有stable的函数可保证相等元素的原本相对次序在排序后保持不变。或许你会问,既然相等,你还管他相对位置呢,也分不清 楚谁是谁了?这里需要弄清楚一个问题,这里的相等,是指你提供的函数表示两个元素相等,并不一定是一摸一样的元素。
例如,如果你写一个比较函数:
bool less_len(const string &str1, const string &str2){ return str1.length() < str2.length();}
此时,"apple" 和 "winter" 就是相等的,如果在"apple" 出现在"winter"前面,用带stable的函数排序后,他们的次序一定不变,如果你使用的是不带"stable"的函数排序,那么排序完 后,"Winter"有可能在"apple"的前面。
举例说明:
输出结果:
1 use default comparison:2 1.32 1.41 1.62 1.73 2.58 2.72 3.14 4.673 use selfdefined comparison function comp_as_int():4 1.41 1.73 1.32 1.62 2.72 2.58 3.14 4.675 if it is not sorted with stable_sort(), the sequence of all elements between 1 and 2 will be set randomly...
阅读全文
0 0
- algorithm库介绍之---- stable_sort()方法 与 sort()方法
- algorithm库介绍之---- stable_sort()方法 与 sort()方法
- algorithm库介绍之---- stable_sort()方法 与 sort()方法
- stable_sort()方法 与 sort()方法
- algorithm库介绍 sort()方法
- STL之stable_sort与sort
- C++ sort() 与stable_sort()
- C ++ sort()与stable_sort()
- sort与stable_sort
- sort与stable_sort
- C ++ sort()与stable_sort()
- algorithm库介绍之---- partition()方法和 stable_partition()方法
- STL algorithm算法sort,stable_sort(55)
- C++排序之stable_sort()的方法
- C++标准库---sort()&stable_sort
- stable_sort()与sort()的用法区别
- 关于sort与stable_sort的初级用法
- stable_sort()与sort()的用法区别
- blob 字段图片处理
- C++11多线程编程之Lock讲解
- pascals-triangle-ii
- Codeforces828 D. High Load
- 三栏布局——左右固定,中间自适应
- algorithm库介绍之---- stable_sort()方法 与 sort()方法
- vue-router 导航钩子
- centos7 Firewall的配置
- ACM-DataStructure-Day3 Error Correction
- phpMyAdmin
- 数据抽取方式和各方式特点
- spring中异步配置
- Z字形编排
- rxjava+Retrofit+okhttp 实战网络请求