数据结构第八章学习总结

Posted cbs-2397812053

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构第八章学习总结相关的知识,希望对你有一定的参考价值。

一、本章知识思维导图

技术图片

 

 

二、第八章知识小结

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)堆排序

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

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

技术图片

 

以上是关于数据结构第八章学习总结的主要内容,如果未能解决你的问题,请参考以下文章

计算机导论第八章-总结

Android深度探索第八章总结

20182334 2019-2020-1 《数据结构与面向对象程序设计》第五周学习总结

20165315 第六周学习总结

20155307 《信息安全系统设计基础》第十四周学习总结

20175312 2018-2019-2 《Java程序设计》第7周学习总结