Um algoritmo de ordenação não-estável não garante a ordem de elementos repetidos e sofre perda de eficiência de acordo com o grau de desordenação de um vetor ou lista (quanto mais desordenado o vetor estiver, mais demorado a ordenação).
Ex: Algoritmo quicksort (Não estável).
Um algoritmo de ordenação estável não sofre com isso, porém sofre com a questão da velocidade da ordenação, que tende a ser mais demorada para garantir a ordem de elementos repetidos e o desempenho constante, independentemente do grau de desordenação.
Ex: Algoritmo bubble sort (Estável).
Basicamente a diferença entre os dois é:
Rápido com desempenho variável (Não estável) X Lento com desempenho constante (Estável)
É de suma importância que o algoritmo de ordenação tenha estabilidade, pois no momento da organização dos elementos de uma dada sequência em uma determinada ordem, ações externas podem inferir diretamente nesta reorganização, para que haja a ordenação adequada dos dados ao gosto do usuário. Ações paralelas podem atrasar ou até mesmo alterar a alocação dos elementos.
É de suma importância que o algoritmo de ordenação tenha estabilidade, pois no momento da organização dos elementos de uma dada sequência em uma determinada ordem, ações externas podem inferir diretamente nesta reorganização, para que haja a ordenação adequada dos dados ao gosto do usuário. Ações paralelas podem atrasar ou até mesmo alterar a alocação dos elementos.
Para escrever sua resposta aqui, entre ou crie uma conta.
Compartilhar