/ / O que você quer dizer com Classificando? - c ++, classificação

O que você quer dizer com Classificando? - c ++, classificação

Primeiro de tudo eu tenho 14 anos, e só tenho experiência de 2 anos de codificação. 6 meses de experiência em C ++. Eu sei Python básico, Java e C ++.

Eu tenho 3 perguntas:

1) Qual é o algoritmo de ordenação mais rápido?

2) Existe uma função embutida para classificação?

3) O que é essa coisa chamada complexidade do tempo?

Respostas:

0 para resposta № 1

1) Qual é o algoritmo de ordenação mais rápido? Desde 2011, o Two-Pivot-Quicksort (Yaroslavski) é o mais rápido e 10% mais rápido que o quicksort. Está na biblioteca java. Ele deve usar a classificação de inserção para pequenas sublistas.

2) Existe uma função embutida para classificação?

Não, mas a maioria das bibliotecas contém funções de classificação rápidas

3) O que é essa coisa chamada complexidade do tempo?

É uma medida aproximada para o tempo estimadonecessário para executar o algoritmo. Quicksort (e 2-Pivot-Quicksort) precisam de O (n ln n) o que significa que para uma lista não ordenada de comprimento n (n = 300) você precisa de vários passos de n * ln (n) (300 * ln300 ~ 1711) para completar o tipo. O fator não é especificado e implicitamente contido na notação O () (google for Big-Oh!)