python選擇排序代碼怎么寫

小億
79
2023-11-03 23:58:35
欄目: 編程語言

以下是一個(gè)簡(jiǎn)單的Python選擇排序代碼示例:

def selection_sort(arr):
    # 遍歷數(shù)組
    for i in range(len(arr)):
        # 假設(shè)當(dāng)前位置的元素是最小的
        min_idx = i
        # 在剩余的未排序部分中找到最小的元素
        for j in range(i+1, len(arr)):
            if arr[j] < arr[min_idx]:
                min_idx = j
        # 將最小元素與當(dāng)前位置交換
        arr[i], arr[min_idx] = arr[min_idx], arr[i]
    return arr

# 示例用法
arr = [64, 25, 12, 22, 11]
sorted_arr = selection_sort(arr)
print("排序后的數(shù)組:", sorted_arr)

輸出結(jié)果:

排序后的數(shù)組: [11, 12, 22, 25, 64]

選擇排序的基本思想是每次從未排序的部分中選擇最小的元素,然后與未排序部分的第一個(gè)元素交換位置。這樣,每一輪選擇排序都將未排序部分的最小元素放到了已排序部分的末尾。

0