码迷,mamicode.com
首页 > 其他好文 > 详细

数据结构第八章学习总结

时间:2020-07-12 18:50:39      阅读:52      评论:0      收藏:0      [点我收藏+]

标签:学习   开始   数据   记录   折半查找   技术   堆排序   基于   直接插入排序   

一、本章知识思维导图

技术图片

 

 

二、第八章知识小结

1. 插入排序

(1) 直接插入排序

对于待排序列中的元素,在已排序列中顺序查找插入位置,将待排元素插入并移动。

技术图片

 

 (2)折半插入排序

基于直接插入排序,查找插入位置使用折半查找。

(3)希尔排序

将间隔步长d1的两个元素分为一组,组内进行直接插入排序;第二趟取步长d2(<d1),重复以上分组并排序,依此类推。

技术图片

 

 2. 交换排序

(1)冒泡排序

两两比较相邻记录,若发生逆序,则进行交换。

技术图片

 

 (2)快速排序

选择第一个记录为枢轴,设指针low, high分别指向表下界及上界;从最右侧向左搜索,第一个小于枢轴的关键字移到low处;当low<high,若high大于枢轴,则向左移动high,反之则将high所指移到low所指;从最左侧搜索,第一个大于枢轴的记录和枢轴交换,low<high时,low所指小于等于枢轴,则向右移动low,反之则将low与枢轴交换;重复前两步直至low=high。

技术图片

 

 3.选择排序

(1)简单选择排序

待排序列中顺序查找最小记录r[k],交换r[1]和r[k]。

技术图片

 

 (2)堆排序

得到堆,调整堆,得到最大值,调整堆,得到最大值……如此类推得到序列(大根堆为例,小根堆同理)

调整:从最后一个非叶子结点开始直到根节点,检查父结点是否大于子结点,若子结点大则交换两个结点;上到下检查调整。

技术图片

 

数据结构第八章学习总结

标签:学习   开始   数据   记录   折半查找   技术   堆排序   基于   直接插入排序   

原文地址:https://www.cnblogs.com/cbs-2397812053/p/13289231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!