数据结构与算法(day2)

前言

(1)在本章的学习此前,需要复习前一章的内容,动手敲一遍代码解题。

(2)经过上一章的操练以后,大家应该体会到了,简化版桶排序所要申请的数组的容量大小由要排序的数中的最大值决定,所以如果我们要排序的数中最大值是210000000,那我们还得申请一个大小为210000001的数组,毫无疑问,非常浪费空间!

(3)而且,简化版桶排序的i表示数值,book[i]表示数值的数量,由于数组要求book[i]中的i的类型必须为整数,所以,如果要排序的存在小数,那简化版桶排序就失效了!

本章的学习目标:

(1)学习冒泡排序原理

(2)会用冒泡排序联系实际生活,解决编程问题

冒泡排序

(1)冒泡排序的基本思想是:每次比较两个相邻的元素,如果他们的顺序错误就把它们交换过来。

(2)代码思路:如果有n个数进行从大到小排序,只需将n-1个数归位,也就是说要进行n-1趟操作。而”每一趟“都需要从第1位开始进行两个数的比较,将较小的一个数放在在后面,比较完毕后向后挪一位继续比较下面两个相邻数的大小,重复此步骤,直到最后一个尚未归位的数,已经归位的数则无需再进行比较(已经归位的数你还比较个啥,浪费表情)。

你可能感兴趣的:(数据结构与算法(C语言),算法,数据结构)