氣泡排序 python版本

2022-07-03 08:03:07 字數 3894 閱讀 4304

import random

# 生成隨機列表

random_list = [random.randint(1, 1000) for i in range(10)]

print(f"初始化列表:")

length = len(random_list)

for i in range(length):

print(f"**********====第輪**********====")

for j in range(length - i - 1):

if random_list[j] > random_list[j + 1]:

random_list[j], random_list[j + 1] = random_list[j + 1], random_list[j]

print(f"第次結果:")

print(f"最終排序好的結果:")

初始化列表:[565, 462, 493, 298, 487, 445, 661, 252, 403, 126]

**********====第0輪**********====

第0次結果:[462, 565, 493, 298, 487, 445, 661, 252, 403, 126]

第1次結果:[462, 493, 565, 298, 487, 445, 661, 252, 403, 126]

第2次結果:[462, 493, 298, 565, 487, 445, 661, 252, 403, 126]

第3次結果:[462, 493, 298, 487, 565, 445, 661, 252, 403, 126]

第4次結果:[462, 493, 298, 487, 445, 565, 661, 252, 403, 126]

第5次結果:[462, 493, 298, 487, 445, 565, 661, 252, 403, 126]

第6次結果:[462, 493, 298, 487, 445, 565, 252, 661, 403, 126]

第7次結果:[462, 493, 298, 487, 445, 565, 252, 403, 661, 126]

第8次結果:[462, 493, 298, 487, 445, 565, 252, 403, 126, 661]

**********====第1輪**********====

第0次結果:[462, 493, 298, 487, 445, 565, 252, 403, 126, 661]

第1次結果:[462, 298, 493, 487, 445, 565, 252, 403, 126, 661]

第2次結果:[462, 298, 487, 493, 445, 565, 252, 403, 126, 661]

第3次結果:[462, 298, 487, 445, 493, 565, 252, 403, 126, 661]

第4次結果:[462, 298, 487, 445, 493, 565, 252, 403, 126, 661]

第5次結果:[462, 298, 487, 445, 493, 252, 565, 403, 126, 661]

第6次結果:[462, 298, 487, 445, 493, 252, 403, 565, 126, 661]

第7次結果:[462, 298, 487, 445, 493, 252, 403, 126, 565, 661]

**********====第2輪**********====

第0次結果:[298, 462, 487, 445, 493, 252, 403, 126, 565, 661]

第1次結果:[298, 462, 487, 445, 493, 252, 403, 126, 565, 661]

第2次結果:[298, 462, 445, 487, 493, 252, 403, 126, 565, 661]

第3次結果:[298, 462, 445, 487, 493, 252, 403, 126, 565, 661]

第4次結果:[298, 462, 445, 487, 252, 493, 403, 126, 565, 661]

第5次結果:[298, 462, 445, 487, 252, 403, 493, 126, 565, 661]

第6次結果:[298, 462, 445, 487, 252, 403, 126, 493, 565, 661]

**********====第3輪**********====

第0次結果:[298, 462, 445, 487, 252, 403, 126, 493, 565, 661]

第1次結果:[298, 445, 462, 487, 252, 403, 126, 493, 565, 661]

第2次結果:[298, 445, 462, 487, 252, 403, 126, 493, 565, 661]

第3次結果:[298, 445, 462, 252, 487, 403, 126, 493, 565, 661]

第4次結果:[298, 445, 462, 252, 403, 487, 126, 493, 565, 661]

第5次結果:[298, 445, 462, 252, 403, 126, 487, 493, 565, 661]

**********====第4輪**********====

第0次結果:[298, 445, 462, 252, 403, 126, 487, 493, 565, 661]

第1次結果:[298, 445, 462, 252, 403, 126, 487, 493, 565, 661]

第2次結果:[298, 445, 252, 462, 403, 126, 487, 493, 565, 661]

第3次結果:[298, 445, 252, 403, 462, 126, 487, 493, 565, 661]

第4次結果:[298, 445, 252, 403, 126, 462, 487, 493, 565, 661]

**********====第5輪**********====

第0次結果:[298, 445, 252, 403, 126, 462, 487, 493, 565, 661]

第1次結果:[298, 252, 445, 403, 126, 462, 487, 493, 565, 661]

第2次結果:[298, 252, 403, 445, 126, 462, 487, 493, 565, 661]

第3次結果:[298, 252, 403, 126, 445, 462, 487, 493, 565, 661]

**********====第6輪**********====

第0次結果:[252, 298, 403, 126, 445, 462, 487, 493, 565, 661]

第1次結果:[252, 298, 403, 126, 445, 462, 487, 493, 565, 661]

第2次結果:[252, 298, 126, 403, 445, 462, 487, 493, 565, 661]

**********====第7輪**********====

第0次結果:[252, 298, 126, 403, 445, 462, 487, 493, 565, 661]

第1次結果:[252, 126, 298, 403, 445, 462, 487, 493, 565, 661]

**********====第8輪**********====

第0次結果:[126, 252, 298, 403, 445, 462, 487, 493, 565, 661]

**********====第9輪**********====

最終排序好的結果:[126, 252, 298, 403, 445, 462, 487, 493, 565, 661]

氣泡排序(優化版本)

最簡單的排序演算法,也是最暴力的,除了搞笑的猴子排序。主要思想是兩兩比較,把大的往後挪,理論上要走n n趟 陣列長度為n 例如 未排序前 1,9,5,6,4 1,5,6,4,9 1,5,4,6,9 1,4,5,6,9 usr bin env python coding utf 8 author 69...

氣泡排序優化 java版本

氣泡排序的演算法描述 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。這步做完後,最後的元素會是最大的數。針對所有的元素重複以上的步驟,除了最後乙個。持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。優化思路 如果...

氣泡排序演算法 BubbleSort c 版本

氣泡排序演算法就是每一次把最小的數放到第乙個位置,然後把剩下的數中的最小的位置放在第二個位置,依次類推,如下.其中bubblesort v2最為v1的乙個改進版本,可以解決本身已經順序的情況下的,無需進行多次比較的問題,但是整體的演算法時間複雜度並沒有很好的提公升。template void bub...