数据结构笔记--排序
第十章、内部排序
本章总结
快速排序越杂乱无章越好
有关排序的基本概念
为了保持哈夫曼树的唯一性,要选择稳定的排序方法
插入排序
一、直接插入排序
1、思路
哨所其缓存作用,暂时存放被插入元素
2、算法分析
二、折半插入排序(直接插入排序算法改进之一)
1、思想
2、算法分析
三、表插入排序(直接插入排序算法改进之二)
1、思想
2、代码
四、希尔排序(直接插入排序算法改进之三)
1、思想
2、代码
3、算法分析
交换排序
一、冒泡排序
1、概念
2、算法分析
二、快速排序(重点)
1、概念
2、代码
3、算法分析
改进:可以找中间元素作为基准,避免成为单只二叉树
选择排序
一、直接选择排序
1、概念
2、算法分析
二、锦标赛排序
1、概念
2、算法分析
在“十万个元素找前十”这种问题中,锦标赛排序是最好的方法,比快排都要好。
三、堆排序
1、堆的概念
2、堆排序的基本思路
3、堆的建立
第二行:H.r[s] 是根节点,rc是缓存变量,j是左孩子
第四行:j的左孩子和右孩子比较
4、如何建立初始堆
5、基于初始堆进行堆排序
堆排序的算法
算法分析
归并排序(略讲)
基数排序(略讲)