Exercícios de classificação em Python

Revisão do algoritmo de classificação (implementação em Python)

Selecionar classificação
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]
      

Selecione classificação para dividir a lista pela frente: lista classificada, traseira: lista não classificada, insira a menor lista não classificada na parte traseira, insira-a no final da lista classificada na frente e repita várias vezes para classificar a lista inteira.

Selecionar classificação
 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

A idéia principal do algoritmo de classificação por inserção é comparar os seguintes elementos com os elementos anteriores, inseri-los na frente e repetir várias vezes para formar uma lista classificada.

Para ser continuado. . .

Publicado 19 artigos originais · Curtidas6 · Visitas 728

Acho que você gosta

Origin blog.csdn.net/qq_42631607/article/details/103206681
Recomendado
Clasificación