冒泡排序
代码
# coding=utf-8
# 事例
arr = [4, 5, 7, 9, 2, 6, 8, 1, 3, 0]
# 交换值
def swap(j):
arr[j] = arr[j] ^ arr[j+1]
arr[j+1] = arr[j] ^ arr[j + 1]
arr[j] = arr[j] ^ arr[j + 1]
# 冒泡排序
def bubbing():
for i in range(1,len(arr),1):
for j in range(0,len(arr) - i,1):
if arr[j] > arr[j+1]:
swap(j)
print(arr)
bubbing()
运行结果:
i外循环 j内循环 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
i = 1 j = 0 | 4 | 5 | 7 | 9 | 2 | 6 | 8 | 1 | 3 | 0 |
i = 1 j = 1 | 4 | 5 | 7 | 9 | 2 | 6 | 8 | 1 | 3 | 0 |
i = 1 j = 2 | 4 | 5 | 7 | 9 | 2 | 6 | 8 | 1 | 3 | 0 |
i = 1 j = 3 | 4 | 5 | 7 | 2 | 9 | 6 | 8 | 1 | 3 | 0 |
i = 1 j = 4 | 4 | 5 | 7 | 2 | 6 | 9 | 8 | 1 | 3 | 0 |
i = 1 j = 5 | 4 | 5 | 7 | 2 | 6 | 8 | 9 | 1 | 3 | 0 |
i = 1 j = 6 | 4 | 5 | 7 | 2 | 6 | 8 | 1 | 9 | 3 | 0 |
i = 1 j = 7 | 4 | 5 | 7 | 2 | 6 | 8 | 1 | 3 | 9 | 0 |
i = 1 j = 8 | 4 | 5 | 7 | 2 | 6 | 8 | 1 | 3 | 0 | 9 |
i = 1 j = 8 | 4 | 5 | 7 | 2 | 6 | 8 | 1 | 3 | 0 | 9 |
i = 2 j = 0 | 4 | 5 | 7 | 2 | 6 | 8 | 1 | 3 | 0 | 9 |
i = 2 j = 1 | 4 | 5 | 7 | 2 | 6 | 8 | 1 | 3 | 0 | 9 |
i = 2 j = 2 | 4 | 5 | 2 | 7 | 6 | 8 | 1 | 3 | 0 | 9 |
i = 2 j = 3 | 4 | 5 | 2 | 6 | 7 | 8 | 1 | 3 | 0 | 9 |
i = 2 j = 4 | 4 | 5 | 2 | 6 | 7 | 8 | 1 | 3 | 0 | 9 |
i = 2 j = 5 | 4 | 5 | 2 | 6 | 7 | 1 | 8 | 3 | 0 | 9 |
i = 2 j = 6 | 4 | 5 | 2 | 6 | 7 | 1 | 3 | 8 | 0 | 9 |
i = 2 j = 7 | 4 | 5 | 2 | 6 | 7 | 1 | 3 | 0 | 8 | 9 |
i = 3 j = 0 | 4 | 5 | 2 | 6 | 7 | 1 | 3 | 0 | 8 | 9 |
i = 3 j = 1 | 4 | 2 | 5 | 6 | 7 | 1 | 3 | 0 | 8 | 9 |
i = 3 j = 2 | 4 | 2 | 5 | 6 | 7 | 1 | 3 | 0 | 8 | 9 |
i = 3 j = 3 | 4 | 2 | 5 | 6 | 7 | 1 | 3 | 0 | 8 | 9 |
i = 3 j = 4 | 4 | 2 | 5 | 6 | 1 | 7 | 3 | 0 | 8 | 9 |
i = 3 j = 5 | 4 | 2 | 5 | 6 | 1 | 3 | 7 | 0 | 8 | 9 |
i = 3 j = 6 | 4 | 2 | 5 | 6 | 1 | 3 | 0 | 7 | 8 | 9 |
i = 4 j = 0 | 2 | 4 | 5 | 6 | 1 | 3 | 0 | 7 | 8 | 9 |
i = 4 j = 1 | 2 | 4 | 5 | 6 | 1 | 3 | 0 | 7 | 8 | 9 |
i = 4 j = 2 | 2 | 4 | 5 | 6 | 1 | 3 | 0 | 7 | 8 | 9 |
i = 4 j = 3 | 2 | 4 | 5 | 1 | 6 | 3 | 0 | 7 | 8 | 9 |
i = 4 j = 4 | 2 | 4 | 5 | 1 | 3 | 6 | 0 | 7 | 8 | 9 |
i = 4 j = 5 | 2 | 4 | 5 | 1 | 3 | 0 | 6 | 7 | 8 | 9 |
i = 5 j = 0 | 2 | 4 | 5 | 1 | 3 | 0 | 6 | 7 | 8 | 9 |
i = 5 j = 1 | 2 | 4 | 5 | 1 | 3 | 0 | 6 | 7 | 8 | 9 |
i = 5 j = 2 | 2 | 4 | 1 | 5 | 3 | 0 | 6 | 7 | 8 | 9 |
i = 5 j = 3 | 2 | 4 | 1 | 3 | 5 | 0 | 6 | 7 | 8 | 9 |
i = 5 j = 4 | 2 | 4 | 1 | 3 | 0 | 5 | 6 | 7 | 8 | 9 |
i = 6 j = 0 | 2 | 4 | 1 | 3 | 0 | 5 | 6 | 7 | 8 | 9 |
i = 6 j = 1 | 2 | 1 | 4 | 3 | 0 | 5 | 6 | 7 | 8 | 9 |
i = 6 j = 2 | 2 | 1 | 3 | 4 | 0 | 5 | 6 | 7 | 8 | 9 |
i = 6 j = 3 | 2 | 1 | 3 | 0 | 4 | 5 | 6 | 7 | 8 | 9 |
i = 7 j = 0 | 1 | 2 | 3 | 0 | 4 | 5 | 6 | 7 | 8 | 9 |
i = 7 j = 1 | 1 | 2 | 3 | 0 | 4 | 5 | 6 | 7 | 8 | 9 |
i = 7 j = 2 | 1 | 2 | 0 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
i = 8 j = 0 | 1 | 2 | 0 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
i = 8 j = 1 | 1 | 0 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
i = 9 j = 0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |