标签:smi dmr pru lsb sky adl acl jqm swp
题目:冒泡排序一个队列(升序)
程序分析(个人分析仅供参考):
首先,我们要知道这个排序是怎么样排序的。
按照升序排列,言外之意就是从小到大排列数字
拿第一个数字举例,他需要做的判断是几次呢?
首先,第一个数字需要跟第二个数字做对比,如果第一个数字比第二个数字大,那么两个数字交换一下位置,以此类推。
总结下来就是第一个循环需要对比的次数是list的长度-1,
第二个循环所需要对比的次数list长度-1-第一个循环的次数m。
第二个循环的主要功能就是具体判断两个数值的大小,以及一个交换的功能。
交换,可以像我这样直接写一个交换功能的函数,也可以直接写到for循环中。当然这个要根据个人的习惯
使用第二个循环的参数n当作list的角标进行判断list中的数值,
通过已经写好的交换功能函数,把原本list中的数值进行替换为更新后的数值。
最后输出更新后的数值,这样就实现了一个冒泡排序的功能
标签:smi dmr pru lsb sky adl acl jqm swp
原文地址:http://www.cnblogs.com/AngesZhu/p/7520230.html