O algoritmo de classificação do intervalo está em vigor?
O algoritmo de classificação do intervalo está em vigor?

Vídeo: O algoritmo de classificação do intervalo está em vigor?

Vídeo: O algoritmo de classificação do intervalo está em vigor?
Vídeo: Big O Notation (Descubra Agora se Seus Algoritmos São Eficientes) // Dicionário do Programador 2024, Novembro
Anonim

Não, não é um in- Lugar, colocar Ordenação algoritmo . A ideia é essa entrada sortes à medida que são movidos para o baldes . No pior dos casos bons (valores sequenciais, mas sem repetição), o espaço adicional necessário é tão grande quanto o array original.

Desse modo, quais algoritmos de classificação existem?

Como outro exemplo, muitos algoritmos de classificação reorganizam matrizes em ordem de classificação no local, incluindo: Tipo de bolha , classificação de pente, classificação de seleção, tipo de inserção , heapsort e classificação Shell. Esses algoritmos requerem apenas alguns ponteiros, portanto, sua complexidade de espaço é O (log n). O Quicksort opera no local nos dados a serem classificados.

Posteriormente, a questão é: como funciona um algoritmo de classificação de intervalo? Classificação de balde , ou classificação de lixo , é um algoritmo de classificação naquela trabalho distribuindo os elementos de uma matriz em uma série de baldes . Cada balde é então classificado individualmente, usando um diferente algoritmo de classificação , ou aplicando recursivamente o algoritmo de classificação de balde . Configure uma matriz de inicialmente vazia " baldes ".

Consequentemente, como você implementa um algoritmo de classificação de intervalo?

  1. Suponha que a matriz de entrada seja: Crie uma matriz de tamanho 10.
  2. Insira elementos nos baldes da matriz. Os elementos são inseridos de acordo com o alcance do balde.
  3. Os elementos de cada intervalo são classificados usando qualquer um dos algoritmos de classificação estáveis.
  4. Os elementos de cada balde são reunidos.

Onde a classificação de balde é usada?

Classificação de balde é útil principalmente quando a entrada é uniformemente distribuída em um intervalo. Por exemplo, considere o seguinte problema. Ordenar um grande conjunto de números de ponto flutuante que estão no intervalo de 0,0 a 1,0 e são uniformemente distribuídos em todo o intervalo.

Recomendado: