擅长:python、mysql、java
<p>冒泡排序可以通过两个for循环或一个while循环和一个for循环来实现。这是一个使用while和for循环的实现,更容易理解</p>
<p>此函数使用内部for循环遍历列表,将每个对象与后面的对象进行比较,并在必要时交换这两个对象。外部while循环确保它在整个列表中一次又一次地重复for循环,直到不需要进一步交换为止</p>
<pre><code>def bubble_sort(unsorted_list):
my_list = list(unsorted_list) # create a copy to avoid mutating the original list
unsorted = True
while unsorted:
unsorted = False
for i in range (len(my_list)-1):
if my_list[i] > my_list[i+1]:
unsorted = True
my_list[i] , my_list[i+1] = my_list[i+1], my_list[i]
return my_list
unsorted_list = [5,2,4,90,140,23,554,32,98,12,15,0,43,-34,10]
print(bubble_sort(unsorted_list))
</code></pre>
<p>印刷品:
[-34,0,2,4,5,10,12,15,23,32,43,90,98,140,554]</p>