问题:实现冒泡排序
解题源码分享:
# 冒泡排序
defbubble_sort(list_):
__len =len(list_)
while__len >:
foriinrange(,__len -1):
iflist_[i] > list_[i +1]:
list_[i],list_[i +1] = list_[i +1],list_[i]
__len -=1
returnlist_
L = [1,4,3,2,56,5,5,-1,,-1,-3,-9]
print(bubble_sort(L))
# [-9, -3, -1, -1, 0, 1, 2, 3, 4, 5, 5, 56]
补充:
Python交换两个变量的值可以直接实现,这种赋值方式等同于tuple(元组)赋值。
a,b =1,2
a,b = b,a
print(a,b)# 2 1
(x,y) = (1,2)
(x,y) = (y,x)
print(x,y)# 2 1
下面也介绍了另一种不借助第三方变量来交换两个变量值的方法,但是此方法仅适用于数值变量。
a,b =1,2
a = a + b
b = a - b
a = a - b
print('a,b:',a,b)# a,b: 2 1
print('a,b: %d,%d'% (a,b))# a,b: 2,1
在此过程中复习了print函数的使用,注意print函数中的逗号(逗号当用于分隔变量时会被解释成空格),以及打印多个变量时与C的不同。
欢迎在评论区贴出你的代码,一起交流学习。
领取专属 10元无门槛券
私享最新 技术干货