当前位置: 首页 > ai >正文

sort和stable_sort的区别和联系

这两个函数的原理都是快速排序,时间复杂度在所有排序中最低,为O(nlog2n) ;


一,不同之处


1,.stable_sort 和 sort的区别在于 前者作排序可以使原来的"相同"的值在序列中的相对位置不变,这个应用在数组里面不受影响,当函数参数传入的是结构体时,会发现两者之间的明显区别;

如 1 4 6 7 4' (4 和 4'值相等,加上' 表示是2个元素)
那么stable_sort能保证排序完 4 仍然在4' 前 也就是输出1 4  4' 6 7;但是sort 没有这个功能,算法不能保证这一点

归根结底这是数据结构中 关于排序算法是稳定还是不稳定的讨论

二,应用:

sort的应用;
1、可以传入两个参数;sort(a,a+N) ,其中a是数组,a+N表示对a[0]至a[N-1]的N个数进行排序(默认从小到大排序);
2、传入三个参数;sort(a,a+N,cmp),第三个参数是一个函数 ;如果让函数从大到小排序,可以用如下算法实现;bool cmp(int a,int b){return a>b};sort(A,A+N,cmp);
其中的cmp可以改成其他的名称

http://www.xdnf.cn/news/11124.html

相关文章:

  • JAVA基于J2ME的手机游戏开发(毕设+实现+源码+数据库)
  • 【MATLAB】进阶绘图 ( 双 y 轴图形 | plotyy 函数 | Histogram 统计图形 | hist 函数 )
  • eclipse che安装教程
  • 11 年了,我在 CSDN 被访问 800 万+次! 被点赞 3.5 万+次,被收藏 9.6 万+次!
  • 安卓10拨号流程梳理
  • NRF2401无线通信
  • java编程指南100本电子书
  • 网络***实战——使用wirelesskeyview轻松获取无线密码
  • 《魔兽世界》10个让你感动流泪的故事
  • 开源计算机视觉库OpenCV详解
  • FPGA开源网站和论坛介绍
  • 6to4 自动隧道技术
  • c语言printf()输出格式大全
  • 计算机的组成
  • 纪中2016.10.6比赛不明总结
  • 关于Excel提示外部源的链接无法删除的解决方法(附强制解除办法)
  • 汇编语言快速入门(非常详细)
  • 悄悄蒙上你的眼睛 后门程序知识完全解析
  • c语言基础知识 入门必看(保姆级教学)
  • 设计模式—六大原则—里氏代换原则
  • 打字侠支持新世纪五笔、86版五笔、98版五笔打字练习:初学者的最佳选择
  • CentOS使用DNF配置
  • 无线蹭网工具奶瓶Beini使用教程
  • 关于InstantiationException错误的原因
  • 《周易》乾卦爻辞
  • 工作队列-schedule_delayed_work()用法
  • CC2630 CC2650 zigbee开发系列之入门 第1步
  • PostgreSQL性能分析工具-PoWA
  • 最小生成树之Kruskal算法
  • 腾讯QQ珊瑚虫外挂原理分析