设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 850|回复: 0

基本的排序算法

[复制链接]
  • TA的每日心情
    慵懒
    2016-4-21 12:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    累计签到:3 天
    连续签到:1 天
    发表于 2010-5-13 08:07:19 | 显示全部楼层 |阅读模式

    马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

    您需要 登录 才可以下载或查看,没有账号?立即加入

    ×
    这个属于 算法啦!好东西6 T: k+ z' N/ M9 h6 l
    & C8 l* @8 c0 l' {+ {7 T
    1. 排序的基本概念
    4 }" k; b) s9 g" a  假定排序对象为若干记录组成的一个集合,每个记录包含若干个字段,选取其中一个或多个字段为排序码。我们暂时假设排序码的类型为整数类型。2 o3 N1 m. u# x0 g6 K7 M5 g" C
      “正序”序列:待排序序列正好符合排序要求。/ S) ~( d  b4 b& D; U) V
      “逆序”序列:把待排序序列逆转过来,正好符合排序要求。, T1 q, q5 n/ @
      排序的稳定性:排序码相同的记录经过排序后相对次序保持不变,则这种排序方法称为是“稳定的”,否则是不稳定的。4 @+ E8 W& |7 ~2 F+ E1 _. _# H
    2. 分类8 Q4 @" I& Y+ b/ M: q7 q+ z
      按排序中涉及的存储器不同
    ' H% B  h; j3 r9 H6 n) Q& E6 k  1)内部排序是把待排数据元素全部调入内存中进行的排序。
    5 s  R- C0 L0 a7 E  2)外部排序是因数量太大,把数据元素分批导入内存,排好序后再分批导出到磁盘和磁带外存介质上的排序方法。) M! s0 g- j- J: j0 W& j
      按照排序方法分类" x+ q, [2 P' X5 c' w
      1)插入排序:直接插入、二分法插入、表插入、Shell排序
    9 n: f5 r2 z! ?1 |% B) i  2)选择排序:直接选择、堆排序
    9 p$ k  C$ G6 Q. r# S( X5 a  3)交换排序:冒泡排序、快速排序4 k9 o3 d" G/ u6 B
      4)分配排序:基数排序& O1 f) z/ o5 c: L# j, r  k
      5)归并排序:二路归并排序& G9 q' s0 Q( p* p3 N) b0 ]
    3、排序算法的评价4 x7 x1 F! C# B/ O* w, h6 w
      1)时间复杂度:分析记录关键字的比较次数和记录的移动次数  (重要评价标准). T# M- @1 S" r5 @' ~
      2)空间复杂度:算法中使用的内存辅助空间: S1 Q. N7 a( H6 `2 b0 d
      3)排序的稳定性! Y" q" N+ O- f6 N% C# X
      4)算法本身的复杂程度
    ! b! _: S+ |) ]% F+ ?  b# f+ c1 }  P. ^- E" |
    一、选择排序与堆排序
    / p+ P5 d& N2 X1.直接选择排序- m3 [3 |' G5 \; Q0 k/ {2 g
      思路比较简单:即依次从剩余记录中选取最小的2 l5 l! E7 ~$ B/ Z' q( r& K. L
    2.堆排序
    5 F) R0 g) q. ~& g: V. V- c
    : m1 n) t& t0 h5 u" F3 T  利用堆的思想,建立一个最大堆,把堆顶的元素(最大值)拿掉,再重新建堆,依次递归
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    楼主热帖
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

    小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

    GMT+8, 2026-10-10 02:59

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

    快速回复 返回顶部 返回列表