Pythonの並べ替えの演習

並べ替えアルゴリズムのレビュー(Python実装)

並べ替えを選択
def selection_sort(arr):
    """
    选择排序
    :param arr:
    :return:sorted list
    """
    length = len(arr)
    for i in range(length - 1):
        min_index = i
        """
        从min_index 到 最终 选择最小的,插入到前面已排序的尾部
        """
        # 寻找未排序列表之中最小的
        for j in range(min_index, length):
            if arr[min_index] > arr[j]:
                min_index = j
        # 找到未排序列表最小值之后与未排序列表第一个进行交换,此时最小值加入到前面已排序部分
        arr[i], arr[min_index] = arr[min_index], arr[i]
      

並べ替えを選択して、リストを前:並べ替え済みリスト、後:並べ替えなしリストに分割し、並べ替えていないリストの最小のものを後ろに挿入し、並べ替え済みリストの最後に挿入し、繰り返し繰り返してリスト全体を並べ替えます。

並べ替えを選択
 def insert_sort(arr):
    length = len(arr)
    for i in range(1, length):
        # 此时i为未排序列表第一个
        """
        将该元素与前面已排序的列表比较,如果该元素比前一个元素大,则加交换位置(前移)
        """
        for j in range(i, 0, -1):
            if arr[j] < arr[j - 1]:
                arr[j], arr[j - 1] = arr[j - 1], arr[j]
    return None

挿入ソートアルゴリズムの主な考え方は、次の要素を前の要素と比較し、それらを前に挿入し、繰り返し繰り返してソートされたリストを形成することです。

継続する。

19件のオリジナル記事を公開 いいね6 訪問数728

おすすめ

転載: blog.csdn.net/qq_42631607/article/details/103206681