数据结构第八章排序

排序

外部排序

多路归并排序

败者树(多路平衡归并)

数据结构第八章排序_第1张图片

m路平衡归并排序过程中,实现输入/内部归并排序/输出,
需要设置2个输出缓冲区和2m个输入缓冲区

  • k路败者树深度为【log2k】向上取整

置换选择排序

  • 为最佳归并树提供初始归并段

最佳归并树

  • 初始归并段不足以构成严格k叉树需要添加长度为0的虚段

    • 能构成k:(n0-1)%(k-1)=0
    • 不能构成:需添加(n0-1)%(k-1)=u,k-u-1个虚段

基本概念

n个关键字的排序比较次数至少是【log2(n!)向上取整】

内部排序

  • 内存中的排序

外部排序

稳定性

  • 两个相同的元素进行排序之后相对位置是否发生变化

插入排序

直接插入排序

折半插入排序

希尔排序

数据结构第八章排序_第2张图片

交换排序

冒泡排序

快速排序

选择排序

简单选择排序

堆排序

归并排序与基数排序

归并排序

N个元素进行k路归并排序,排序趟数m
m = 【logk(N)】向上取整

基数排序

  • 基于比较和移动进行排序

内部排序算法比较及应用

数据结构第八章排序_第3张图片
思维导图获取关注公众号tansty回复思维导图
数据结构第八章排序_第4张图片

你可能感兴趣的:(计算机考研408,#,计算机考研408,数据结构,数据结构,排序算法,算法)