Python 冒泡排序法

Python72

#冒泡排序法:是一种简单直观的排序算法。

它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。

走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。

#冒泡排序法一:从小到大排序

def bubbleSort(arr):
n=len(arr)

遍历所有数组元素

for i in range(n):

从头遍历到已排序的数前

for j in range(0,n-i-1):

当前数值与紧邻的后一个数值比较,如果前面的数值 就相互调换

if arr[j] > arr[j+1]:
arr[j],arr[j+1] = arr[j+1],arr[j]

测试

arr=[64,34,25,12,22,11,90]
bubbleSort(arr)
print("排序后的数组")
for i in range(len(arr)):
print("%d" %arr[i])

#冒泡排序法二:从 大 到 小 排序

def bubbleSort(arr):
n=len(arr)

遍历所有数组元素

for i in range(n):

从头遍历到已排序的数前

for j in range(0,n-i-1):

当前数值与紧邻的后一个数值比较,如果前面的数值 就相互调换

if arr[j] <arr[j+1]:
arr[j],arr[j+1] = arr[j+1],arr[j]

测试

arr=[64,34,25,12,22,11,90]
bubbleSort(arr)
print("排序后的数组")
for i in range(len(arr)):
print("%d" %arr[i])

Original: https://www.cnblogs.com/xiangers/p/15439012.html
Author: xiangers
Title: Python 冒泡排序法