练习题 --- 冒泡排序

题目:冒泡排序一个队列(升序)

程序分析(个人分析仅供参考):

首先,我们要知道这个排序是怎么样排序的。

按照升序排列,言外之意就是从小到大排列数字

拿第一个数字举例,他需要做的判断是几次呢?

首先,第一个数字需要跟第二个数字做对比,如果第一个数字比第二个数字大,那么两个数字交换一下位置,以此类推。

总结下来就是第一个循环需要对比的次数是list的长度-1,

第二个循环所需要对比的次数list长度-1-第一个循环的次数m。

第二个循环的主要功能就是具体判断两个数值的大小,以及一个交换的功能。

交换,可以像我这样直接写一个交换功能的函数,也可以直接写到for循环中。当然这个要根据个人的习惯

使用第二个循环的参数n当作list的角标进行判断list中的数值,

通过已经写好的交换功能函数,把原本list中的数值进行替换为更新后的数值。

最后输出更新后的数值,这样就实现了一个冒泡排序的功能

原文地址:https://www.cnblogs.com/AngesZhu/p/7520230.html