冒泡排序完整代码讲解
【摘要】
讲解都在注释了,真的很清楚了,还有问题请留言,麻烦点个赞加个关注。 好了,上代码:
#所谓冒泡,就是将元素两两之间进行比较,谁大就往后移动,直到将最大的元素排到最后面,接着再循环一趟,从头开始进行两两比...
讲解都在注释了,真的很清楚了,还有问题请留言,麻烦点个赞加个关注。
好了,上代码:
#所谓冒泡,就是将元素两两之间进行比较,谁大就往后移动,直到将最大的元素排到最后面,接着再循环一趟,从头开始进行两两比较,而上一趟已经排好的那个元素就不用进行比较了
def sort(items): #def嘛,就理解为定义一个函数。sort来代表顺序,sort是我们随便取的,最好英文
for i in range(len(items) - 1): #len用来取一串数据长度,长度能理解吧。range()表示范围呗,range(0,6)就表示0取到5,即取左不取右。这个循环来表示要循环次数。相领两个数字为一组,例子就有6组。
for j in range(len(items) - 1 - i):#每循环一次我们就可以少循环一次,比如说i已经变为3,那我们就可以少运行三次,就在原来基础上减3.
if items[j] > items[j + 1]:#如果前面这个数比后面这个数大
items[j], items[j + 1] = items[j + 1], items[j]#满足如果,就执行这个语句。让他俩调换位置。这样不就前面的比后面的小了。
return items#函数结果我们要结束语句 return +定义的items.你也可以不是items,换个别的你喜欢的都行。
#难点:主要是两个循环:第一个循环我们确定循环次数,第二个循环我们就要执行,每一次循环都要少一次。为什么我们是len(items)-1,len(items)等于7呀,七个数字
# range(7)就代表0,1,2,3,4,5,6但是我们总共只需要六次第八,俩俩一组,六组,所以我们要减一。
list1 = [2, 1, 9, 11, 10, 8, 7]#列表,自己设定
print(sort(list1))#打印出来,调用前面的函数sort(),打印的是list1,所以是print(sort(list1)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
文章来源: chuanchuan.blog.csdn.net,作者:川川菜鸟,版权归原作者所有,如需转载,请联系作者。
原文链接:chuanchuan.blog.csdn.net/article/details/109641469
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)